13.07.2015 Views

iAPX 286 Operating System Writers Guide 1983

iAPX 286 Operating System Writers Guide 1983

iAPX 286 Operating System Writers Guide 1983

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

REAL MEMORY MANAGEMENT"FREE"STARTLINKED LIST OFAVAILABLE SEGMENTSNULLSIZENEXTPRIOR"FREE"NULL"USED"ALLOCATEDSEGMENTFIRST AVAILABLEBOUNDARY TAG ---!:Cj"U~S~E2D':':r121960·18Figure 3-3. Example Memory-Management Data StructuresThe memory manager maintains physical-address pointers to the first segment in the available segmentlist and to the last. It also maintains a "current available" pointer that corresponds to Knuth's "rovingpointer."This example also makes some assumptions about the placement of descriptors in the GDT. Figure3-6 illustrates these assumptions:• The memory manager frequently needs to create temporary descriptors for such purposes as readingand updating the boundary tags and link fields. For its own convenience, the memory managerreserves GDT slots for these temporary descriptors. This example identifies the slots as SLOT_A,SLOLB, and SLOLe.• Adjacent slots in the GDT contain all the descriptors to information for one task. This way, given aselector for one task descriptor, simple addition or subtraction yields selectors for other descriptorsfor the same task.3-4 121960·001

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!