On Thu, Mar 17, 2011 at 7:33 AM, Shane G <[email protected]> wrote: > And which "real address 0" might that be ?. > Remembering that most people will be running as a guest under a hipervisor > (z/VM) running second level under another hipervisor (PR/SM).
And when? At any given time, each virtual machine page is either: - resident, ie mapped to a page frame in z/VM - paged out (either to expanded storage or to DASD) - not there (never touched since reset) So only when pages are resident we could point to the z/VM page frame that holds it. Since that can change while you're looking, the only useful interface is when you LOCK the page (and the MAP option shows you where it got locked). The Linux kernel does not start at virtual machine page 0 because that has all kind of hardware architected stuff (it does map the zero page fields). Current kernels start at 0010 0000 so that we separate SR and EW portions in separate architectured segments and can share the kernel in NSS. To add to the moderately useful confusion, virtual page 0 is kind of special due to prefixing. IIRC Linux does not use the guest's virtual page 0 but allocates a prefix page for each virtual CPU. Since z/VM runs in LPAR, you also have the SIE offset & limit registers for the LPAR, that map the z/VM page frames on (consecutive) real memory pages. Beyond that, there's probably something to handle memory blocks that went AWOL, and with RAIM in the z196 it gets very hard to point at your data. Good thing is you probably don't care... | Rob ---------------------------------------------------------------------- For LINUX-390 subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO LINUX-390 or visit http://www.marist.edu/htbin/wlvindex?LINUX-390 ---------------------------------------------------------------------- For more information on Linux on System z, visit http://wiki.linuxvm.org/
