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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

inl:el~USING HARDWARE PROTECTION FEATURESFLUID·LEVEL SENSORSTEMPERATURE SENSORSRESERVOIRABC DTASKA~~ ~ ~ ~ ~--+--+---t-TASKBELT LT LT LT LTEE EE EE EE EEVM VM VM VM VMEP EP EP EP EPL L L L LVIDEO DISPLAY121960·14Figure 2-14. Application of Segment SharingCONTROL ACCESS TO ALIASESWhen you use an alias to provide an alternate type for a system segment (to write to an LDT), anyprocedure that has access to that alias also has unlimited power to affect the entire system. Therefore,in constructing an operating system that uses such aliases, you must restrict them to the highest privilegelevels of the operating system; that is, the DPL of such aliases should always be zero.PLAN FOR CHANGEWhen you design a dynamic system that uses aliases for segment sharing, you must consider what willhappen when there is any change in a segment to which aliases are pointing. For example, when asegment is relocated, all descriptors pointing to the relocated segment must be updated. When a segmentis deleted, all aliases to it must be nullified. Chapter 5 presents a strategy for handling these changes.EXAMPLE OF DESCRIPTOR MANIPULATIONAs an example of how to manipulate descriptors and descriptor tables using an alias, consider theprocedures POINT_AT and NULLIFY in figure 2-16. POINT_AT creates a descriptor at a given slotin the GDT. NULLIFY invalidates a descriptor in the GDT. It is intended for use in connection withPOINT_AT to prevent accidental use of descriptors that are no longer needed.2-20 121960·001

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

Saved successfully!

Ooh no, something went wrong!