Here is how the maps work: Each map is a 4K (by what?) ram. The level 2 map is what maps virtual addresses to physical addresses. The level 2 map has two halves, the page half and the control half. The page half maps the virtual address into a physical address and the control half contains bits indicating the status of the page (e.g. swapped in, written, read-only, etc.) The virtual address is 25 bits long. The low 8 bits are the offset within the page and are not mapped at all. The next 5 bits address the level 2 map directly. The top 12 bits cannot address the level 2 map because the level 2 map only has 4K entries in it. The top twelve bits go into the level 1 map which contains level 2 map addresses. The level 1 map thus addresses 32 page chunks of the level 2 map. You can only address 128 32-page chunks of level 2 map space, so all but 128 of the level 1 map entries are valid. Okay, I lied. One of the 32 page chunks of level 2 map space is set up to always fault. Any invalid level 1 entries will point to this chunk. A few are also tied to "wired" map entries (these are entries pointing to the physical memory that is used for getting through map faults). It is the last chunk which is the level 1 map miss indicating chunk. The L1 map meta-bits are a function of the region. Since each L1 map entry corresponds to 32. virtual pages, this means regions must be at least 32 pages, etc. This is no further restriction, since the address space quantuum was already 64 pages. LAMBDA EXPLORER 10,11 hardware generated parity 11: l1 map oldspace bit 10: l1 map valid bit 9: volatility-invalid-bit 9: 8: volatility-bit 8: volatility-bits 7: volatility-bit 7: volatility-bits 6: 6: 5: 5: 4: 4: 3: l2 map address inputs 3: l2 map address inputs 2: 2: 1: 1: 0: 0: The level 2 page map entries are boring, they just produce the high 24 bits of the virtual address (the low 8 bits coming from the VMA) The level 2 control map is more interesting. 10: read access if force 10: 9: hardware read access 9: 8: access-code/status code 8: 7: status code 7: 6: status code 6: 5: oldspace bit 5: 4: extra-pdl 4: 3: representation type 3: 2: representation type 2: 1: volatility bit 1: 0: volatility bit 0: The page hash table is the authority on pages that are swapped in to memory. If there is a map fault, the page hash table is looked at to see if there is a page fault. Page hash table info First word. 26 - 31: not used 8 - 25: virtual page number 6: valid bit 5: page modified bit 3 - 4: page age 0 - 2: swap status code Second word. 31: access code 30: access/status code 28 - 29: status code 27: oldspace meta bit 26: extra-pdl meta bit 24-25: volatily bits 0-23: physical page number Map faults: When we get a level 1 map fault, we throw away a section of the level 2 map and make the level 1 map point to it. When we go around again, we get a level 2 fault which causes the level 2 map to reload.