tailieunhanh - Lecture Operating system concepts - Lecture 23

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,. | CSC 322 Operating Systems Concepts Lecture - 25: by Ahmed Mumtaz Mustehsan Special Thanks To: Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc. (Chapter-4) Silberschatz, Galvin and Gagne 2002, Operating System Concepts, Ahmed Mumtaz Mustehsan, GM-IT, CIIT, Islamabad 1 Chapter 5 Input/ Output Principals of I/O Software Hardware Disk Lecture-24 2 Ahmed Mumtaz Mustehsan, GM-IT, CIIT, Islamabad Logical positioning of device drivers. In reality all communication between drivers and device controllers goes over the bus. Device Drivers Lecture-24 3 Ahmed Mumtaz Mustehsan, GM-IT, CIIT, Islamabad Device Drivers-Act 1 Driver contains code specific to the device Supplied by manufacturer Installed in the kernel (Rebuild binaries, or Plug n play, run in user space) User space might be better place Why? Bad driver can mess up kernel Need interface to OS block and character interfaces procedures which OS can call to invoke driver (. read a block) Ahmed Mumtaz Mustehsan, . | CSC 322 Operating Systems Concepts Lecture - 25: by Ahmed Mumtaz Mustehsan Special Thanks To: Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc. (Chapter-4) Silberschatz, Galvin and Gagne 2002, Operating System Concepts, Ahmed Mumtaz Mustehsan, GM-IT, CIIT, Islamabad 1 Chapter 5 Input/ Output Principals of I/O Software Hardware Disk Lecture-24 2 Ahmed Mumtaz Mustehsan, GM-IT, CIIT, Islamabad Logical positioning of device drivers. In reality all communication between drivers and device controllers goes over the bus. Device Drivers Lecture-24 3 Ahmed Mumtaz Mustehsan, GM-IT, CIIT, Islamabad Device Drivers-Act 1 Driver contains code specific to the device Supplied by manufacturer Installed in the kernel (Rebuild binaries, or Plug n play, run in user space) User space might be better place Why? Bad driver can mess up kernel Need interface to OS block and character interfaces procedures which OS can call to invoke driver (. read a block) Ahmed Mumtaz Mustehsan, GM-IT, CIIT, Islamabad Device drivers Act 2 Checks input parameters for validity Abstract to concrete translation (block number to cylinder, head, track, sector) Check device status. Might have to start it (switch on). Puts commands in device controller’s registers Driver blocks itself until interrupt arrives Might return data to caller Does return status information The end Drivers should be re-entrant (multiple copies in parallel) OS adds devices when system is running (and therefore driver) Ahmed Mumtaz Mustehsan, GM-IT, CIIT, Islamabad Device-Independent I/O Software Lecture-24 6 Ahmed Mumtaz Mustehsan, GM-IT, CIIT, Islamabad 6 Driver functions differ for different drivers Kernel functions that each driver needs are different for different drivers Too much work to have new interface for each new device type Why the OS needs a standard interface Lecture-24 7 Ahmed Mumtaz Mustehsan, GM-IT, CIIT, Islamabad Interface : Driver functions OS defines functions for each class of devices which it