After studying this chapter, you should be able to: Summarize key categories of I/O devices on computers, discuss the organization of the I/O function, explain some of the key issues in the design of OS support for I/O, analyze the performance implications of various I/O buffering alternatives,. | Chapter 11 I/O Management and Disk Scheduling Operating System Design Issues I/O Buffering Disk Scheduling Disk Cache Goal: Generality For simplicity and freedom from error, it’s better to handle all I/O devices in a uniform manner Due to the diversity of device characteristics, it is difficult in practice to achieve true generality Solution: use a hierarchical modular design of I/O functions Hide details of device I/O in lower-level routines User processes and upper levels of OS see devices in terms of general functions, such as read, write, open, close, lock, unlock A Model of I/O Organization Logical I/O: Deals with the device as a logical resource and is not concerned with the details of actually controlling the device Allows user processes to deal with the device in terms of a device identifier and simple commands such as open, close, read, write Device I/O: Converts requested operations into sequence of I/O instructions Uses buffering techniques to improve utilization . | Chapter 11 I/O Management and Disk Scheduling Operating System Design Issues I/O Buffering Disk Scheduling Disk Cache Goal: Generality For simplicity and freedom from error, it’s better to handle all I/O devices in a uniform manner Due to the diversity of device characteristics, it is difficult in practice to achieve true generality Solution: use a hierarchical modular design of I/O functions Hide details of device I/O in lower-level routines User processes and upper levels of OS see devices in terms of general functions, such as read, write, open, close, lock, unlock A Model of I/O Organization Logical I/O: Deals with the device as a logical resource and is not concerned with the details of actually controlling the device Allows user processes to deal with the device in terms of a device identifier and simple commands such as open, close, read, write Device I/O: Converts requested operations into sequence of I/O instructions Uses buffering techniques to improve utilization A Model of I/O Organization Scheduling and Control: Performs actual queuing / scheduling and control operations Handles interrupts and collects and reports I/O status Interacts with the I/O module and hence the device hardware Goal: Efficiency Most I/O devices are extremely slow compared to main memory I/O operations often form a bottleneck in a computing system Multiprogramming allows some processes to be waiting on I/O while another process is executing Goal: Efficiency Swapping brings in ready processes but this is an I/O operation itself A major effort in I/O design has been schemes for improving the efficiency of I/O I/O buffering Disk scheduling Disk cache Roadmap Operating System Design Issues I/O Buffering Disk Scheduling Disk Cache No Buffering Without a buffer, OS directly accesses the device as and when it needs A data area within the address space of the user process is used for I/O No Buffering Process must wait for I/O to complete before proceeding busy .