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.

CHAPTER 8INPUT /OUTPUTMany of the concepts previously introduced in this book apply to the design of the I/O subsystem ofan operating system; in addition, the <strong>iAPX</strong> <strong>286</strong> has several I/O features of special interest.The functions typically performed by an I/O subsystem include• Centrally implementing and standardizing I/O logic so that all application programs can share it.• Providing a uniform, high-level interface by which application procedures can request I/O services(as a minimum, the functions READ and WRITE). A more sophisticated system may need a full,file-oriented set of interfaces such as Intel's Universal Development Interface (UDI).• Administering device naming. Often this includes transforming logical device identifiers into physicalidentifiers, so that applications that use the logical identifiers can maintain independence fromphysical devices.• Managing use of memory resources for I/O buffers.• Managing sharing of physical devices. Often this reduces to giving one task exclusive use of a device(for example, a printer) until the task relinquishes it. With disk devices, tasks can usually share thedevice as long as each uses a different set of disk addresses. A sophisticated database-managementsystem may require unlimited disk sharing (the database system assumes responsibility for blocklevelsynchronization, deadlock detection, and recovery).• Providing device-driver procedures to deal with the vagaries of various I/O devices.• Optimizing I/O efficiency. This might include any of these techniques: blocking, buffer pooling,automatic seek-ahead, reduction of disk arm movement.This discussion of I/O classifies physical I/O operations thus:• Direct I/O, in which the 80<strong>286</strong> processor itself communicates directly with the peripheral device.Direct I/O breaks down further intoa. Memory-mapped, in which I/O is triggered by processor instructions that reference certainmemory locations.b. I/O-mapped, in which special I/O instructions cause the processor to do I/O.• Indirect I/O, in which an external processor (such as the Intel 8089 I/O Processor) performs theI/O.1/0 AND PROTECTIONThe concept of protection as applied to I/O deals not only with the memory used in I/O operationsbut also with the right to execute I/O operations.1/0 Privilege Level (lOPL)You can limit to specific privilege levels the right to execute I/O and I/O-related instructions. 10PL(a two-bit field in the flag word) restricts a task's right to execute any of these instructions:ININSinputinput string8-1 121960-001

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

Saved successfully!

Ooh no, something went wrong!