04/16/2010CSCI 315 Operating Systems Design1 I/O Systems Notice: The slides for this lecture have been largely based on those accompanying an earlier edition.

Slides:



Advertisements
Similar presentations
I/O Systems & Mass-Storage Systems
Advertisements

Chapter 6 I/O Systems.
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
I/O and Networking Fred Kuhns
I/O Systems.
Chapter 13: I/O Systems Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 13: I/O Systems I/O Hardware Application I/O Interface.
04/14/2008CSCI 315 Operating Systems Design1 I/O Systems Notice: The slides for this lecture have been largely based on those accompanying the textbook.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 13: I/O Systems I/O Hardware Application I/O Interface Kernel I/O Subsystem.
Chapter 13: I/O Systems- 6th ed
Chapter 13: I/O Systems Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Jan 2, 2005 Chapter 13: I/O Systems I/O Hardware.
Silberschatz, Galvin and Gagne ©2013 Operating System Concepts – 9 th Edition Chapter 13: I/O Systems.
Chapter 13-3 I/O Systems Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 13: I/O Systems Chapter 13-1 and I/O Hardware.
I/O Hardware n Incredible variety of I/O devices n Common concepts: – Port – connection point to the computer – Bus (daisy chain or shared direct access)
I/O Systems CS 3100 I/O Hardware1. I/O Hardware Incredible variety of I/O devices Common concepts ◦Port ◦Bus (daisy chain or shared direct access) ◦Controller.
Chapter 13 Input/Output (I/O) Systems
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
Silberschatz, Galvin and Gagne ©2013 Operating System Concepts – 9 th Edition Chapter 13: I/O Systems.
I/O Systems CSCI 444/544 Operating Systems Fall 2008.
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
CHAPTER 13: I/O SYSTEMS Overview Overview I/O Hardware I/O Hardware I/O API I/O API I/O Subsystem I/O Subsystem Transforming I/O Requests to Hardware Operations.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 13+14: I/O Systems and Mass- Storage Structure I/O Hardware Application I/O.
Chapter 13: I/O Systems Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Jan 2, 2005 Chapter 13: I/O Systems I/O Hardware.
Operating Systems CMPSC 473 I/O Management (1) November Lecture 23 Instructor: Bhuvan Urgaonkar.
Hardware Definitions –Port: Point of connection –Bus: Interface Daisy Chain (A=>B=>…=>X) Shared Direct Device Access –Controller: Device Electronics –Registers:
Silberschatz, Galvin and Gagne  Operating System Concepts I/O Hardware Incredible variety of I/O devices.
ITEC 502 컴퓨터 시스템 및 실습 Chapter 8-2: I/O Management (Review) Mi-Jung Choi DPNM Lab. Dept. of CSE, POSTECH.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 13: I/O Systems I/O Hardware Application I/O Interface Kernel I/O Subsystem.
12.1 Silberschatz, Galvin and Gagne ©2009 Operating System Concepts with Java – 8 th Edition Chapter 12: Mass-Storage Systems.
Chapter 13: I/O Systems Silberschatz, Galvin and Gagne ©2005 AE4B33OSS Chapter 13: I/O Systems I/O Hardware Application I/O Interface Kernel I/O.
I/O Systems I/O Hardware Application I/O Interface
1 Module 12: I/O Systems n I/O hardware n Application I/O Interface n Kernel I/O Subsystem n Transforming I/O Requests to Hardware Operations n Performance.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Chapter 13: I/O Systems.
I/O management is a major component of operating system design and operation Important aspect of computer operation I/O devices vary greatly Various methods.
Cosc 4740 Chapter 12 I/O Systems. I/O Hardware Incredible variety of I/O devices –Storage –Transmission –Human-interface.
Chapter 13: I/O Systems. 13.2/34 Chapter 13: I/O Systems I/O Hardware Application I/O Interface Kernel I/O Subsystem Transforming I/O Requests to Hardware.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 13: I/O Systems I/O Hardware Application I/O Interface Kernel I/O Subsystem.
Chapter 13: I/O Systems Silberschatz, Galvin and Gagne ©2005 Operating System Principles Chapter 13: I/O Systems I/O Hardware Application I/O Interface.
Chapter 13 – I/O Systems (Pgs ). Devices  Two conflicting properties A. Growing uniformity in interfaces (both h/w and s/w): e.g., USB, TWAIN.
Silberschatz, Galvin and Gagne  Operating System Concepts Six Step Process to Perform DMA Transfer.
XE33OSA Chapter 13: I/O Systems. 13.2XE33OSA Silberschatz, Galvin and Gagne ©2005 Chapter 13: I/O Systems I/O Hardware Application I/O Interface Kernel.
CENG334 Introduction to Operating Systems Erol Sahin Dept of Computer Eng. Middle East Technical University Ankara, TURKEY URL:
I/O Management.
Chapter 13: I/O Systems Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Jan 2, 2005 Chapter 13: I/O Systems I/O Hardware.
Silberschatz, Galvin and Gagne ©2009 Edited by Khoury, 2015 Operating System Concepts – 9 th Edition, Chapter 13: I/O Systems.
1 Chapter 13 Input/Output (I/O) Systems Dr. İbrahim Körpeoğlu Bilkent University Department of Computer Engineering.
Silberschatz, Galvin and Gagne ©2013 Operating System Concepts – 9 th Edition Chapter 13: I/O Systems.
Chapter 13: I/O Systems Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 13: I/O Systems Overview I/O Hardware Application.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 13: I/O Systems.
Chapter 13: I/O Systems Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Jan 2, 2005 I/O through system calls Protection.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Chapter 13: I/O Systems.
Silberschatz, Galvin, and Gagne  Applied Operating System Concepts Module 12: I/O Systems I/O hardwared Application I/O Interface Kernel I/O.
CMSC 421 Section 0202 I/O Systems Chapter 13: I/O Systems.
Module 11: I/O Systems Reading: Chapter 13 Objectives  Explore the structure of the operating system’s I/O subsystem.  Discuss the principles of I/O.
Chapter 13: I/O Systems.
Lecture 13 Input/Output (I/O) Systems (chapter 13)
Module 12: I/O Systems I/O hardware Application I/O Interface
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
Chapter 13: I/O Systems.
CSCI 315 Operating Systems Design
I/O Systems.
I/O Systems I/O Hardware Application I/O Interface
Operating System Concepts
13: I/O Systems I/O hardwared Application I/O Interface
CS703 - Advanced Operating Systems
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
Chapter 13: I/O Systems.
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
Operating Systems I/O System Alok Kumar Jagadev.
Chapter 13: I/O Systems.
Module 12: I/O Systems I/O hardwared Application I/O Interface
Presentation transcript:

04/16/2010CSCI 315 Operating Systems Design1 I/O Systems Notice: The slides for this lecture have been largely based on those accompanying an earlier edition of the course text Operating Systems Concepts with Java, by Silberschatz, Galvin, and Gagne. Many, if not all, of the illustrations contained in this presentation come from this source.

04/16/2010CSCI 315 Operating Systems Design2 I/O Hardware Incredible variety of I/O devices. Common concepts: –Port, –Bus (daisy chain or shared direct access), –Controller (host adapter). I/O instructions control devices. Devices have addresses, used by –Direct I/O instructions, –Memory-mapped I/O.

04/16/2010CSCI 315 Operating Systems Design3 Concepts system port: a connection point between a peripheral device and the computer. serial parallel USB Firewire … ABC bus: a set of wires shared by one or more devices, which communicate with the system using a rigid protocol. DEFG daisy chain: every device has two ports; either one port connects directly to the system and the other to another device, or the two ports connect to other devices. The chain usually operates as a bus.

04/16/2010CSCI 315 Operating Systems Design4 A Typical PC Bus Structure

04/16/2010CSCI 315 Operating Systems Design5 CPU and I/O Controllers The processor transfers data to and from an I/O controller to effect I/O operations on devices. CPU I/O controller ABC CPU I/O controller register r w control D id

04/16/2010CSCI 315 Operating Systems Design6 Memory-Mapped I/O The processor reads and writes data to address in its memory space, which are associated with the registers and control lines of I/O controllers. I/O port status control data in data out CPU 0x000 0x004 0x008 0x00C RAM memory bus

04/16/2010CSCI 315 Operating Systems Design7 Device I/O Port Locations on PCs (partial)

04/16/2010CSCI 315 Operating Systems Design8 Polling Determines state of device: –command-ready, –busy, –error. Busy-wait cycle to wait for I/O from device: the CPU is involved in periodically checking the status of the operation.

04/16/2010CSCI 315 Operating Systems Design9 Interrupts CPU Interrupt request line triggered by I/O device. Interrupt handler receives interrupts. Maskable to ignore or delay some interrupts. Interrupt vector used to dispatch interrupt to correct handler: –Based on priority. –Some unmaskable. Interrupt mechanism also used for exceptions.

04/16/2010CSCI 315 Operating Systems Design10 Interrupt-Driven I/O Cycle

04/16/2010CSCI 315 Operating Systems Design11 Intel Pentium Processor Event-Vector Table

04/16/2010CSCI 315 Operating Systems Design12 Direct Memory Access (DMA) Used to avoid programmed I/O for large data movement. Requires DMA controller. The controller allows for data to be transferred directly between I/O device and memory without CPU intervention.

04/16/2010CSCI 315 Operating Systems Design13 DMA Transfer

04/16/2010CSCI 315 Operating Systems Design14 Application I/O Interface I/O system calls encapsulate device behaviors in generic classes. Device-driver layer hides differences among I/O controllers from kernel. Devices vary in many dimensions: –Character-stream or block. –Sequential or random-access. –Sharable or dedicated. –Speed of operation. –Read-write, read only, or write only.

04/16/2010CSCI 315 Operating Systems Design15 A Kernel I/O Structure

04/16/2010CSCI 315 Operating Systems Design16 Characteristics of I/O Devices

04/16/2010CSCI 315 Operating Systems Design17 Block and Character Devices Block devices include disk drives. –Commands include read, write, seek. –Raw I/O or file-system access. –Memory-mapped file access possible. Character devices include keyboards, mice, serial ports. –Commands include get, put. –Libraries layered on top allow line editing.

04/16/2010CSCI 315 Operating Systems Design18 Network Devices Different enough from block and character to have their own interface. Unix and Windows NT/9x/2000 include socket interface: –Separates network protocol from network operation. –Includes select functionality. Approaches vary widely (pipes, FIFOs, streams, queues, mailboxes).

04/16/2010CSCI 315 Operating Systems Design19 Clocks and Timers Provide current time, elapsed time, timer. If programmable interval time used for timings, periodic interrupts. ioctl (on UNIX) covers odd aspects of I/O such as clocks and timers.

04/16/2010CSCI 315 Operating Systems Design20 Blocking and Nonblocking I/O Blocking - process suspended until I/O completed. –Easy to use and understand. –Insufficient for some needs. Nonblocking - I/O call returns as much as available. –User interface, data copy (buffered I/O). –Implemented via multi-threading. –Returns quickly with count of bytes read or written. Asynchronous - process runs while I/O executes. –Difficult to use. –I/O subsystem signals process when I/O completed.