I/O system.

Slides:



Advertisements
Similar presentations
I/O Organization popo.
Advertisements

CS-334: Computer Architecture
FIU Chapter 7: Input/Output Jerome Crooks Panyawat Chiamprasert
Avishai Wool lecture Introduction to Systems Programming Lecture 8 Input-Output.
6-1 I/O Methods I/O – Transfer of data between memory of the system and the I/O device Most devices operate asynchronously from the CPU Most methods involve.
I/O Subsystem Organization and Interfacing Cs 147 Peter Nguyen
Chapter 7 Input/Output. Input/Output Problems Wide variety of peripherals —Delivering different amounts of data —At different speeds —In different formats.
CHAPTER 9: Input / Output
1/21/2010CSCI 315 Operating Systems Design1 Computer System Structures Notice: The slides for this lecture have been largely based on those accompanying.
Group 7 Jhonathan Briceño Reginal Etienne Christian Kruger Felix Martinez Dane Minott Immer S Rivera Ander Sahonero.
Copyright ©: Nahrstedt, Angrave, Abdelzaher
I/O Tanenbaum, ch. 5 p. 329 – 427 Silberschatz, ch. 13 p
Input/Output. Input/Output Problems Wide variety of peripherals —Delivering different amounts of data —At different speeds —In different formats All slower.
Chapter 7 Input/Output Luisa Botero Santiago Del Portillo Ivan Vega.
Chapter 10: Input / Output Devices Dr Mohamed Menacer Taibah University
CHAPTER 9: Input / Output
Cpr E 308 Input/Output Recall: OS must abstract out all the details of specific I/O devices Today –Block and Character Devices –Hardware Issues – Programmed.
Input/ Output By Mohit Sehgal. What is Input/Output of a Computer? Connection with Machine Every machine has I/O (Like a function) In computing, input/output,
Windows Operating System Internals - by David A. Solomon and Mark E. Russinovich with Andreas Polze Unit OS6: Device Management 6.1. Principles of I/O.
© Janice Regan, CMPT 300, May CMPT 300 Introduction to Operating Systems Principles of I/0 hardware.
Computer Architecture Lecture10: Input/output devices Piotr Bilski.
CS 342 – Operating Systems Spring 2003 © Ibrahim Korpeoglu Bilkent University1 Input/Output CS 342 – Operating Systems Ibrahim Korpeoglu Bilkent University.
Chapter 1: Introduction. 1.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 1: Introduction What Operating Systems Do Computer-System.
2009 Sep 10SYSC Dept. Systems and Computer Engineering, Carleton University F09. SYSC2001-Ch7.ppt 1 Chapter 7 Input/Output 7.1 External Devices 7.2.
Dr Mohamed Menacer College of Computer Science and Engineering Taibah University CE-321: Computer.
Input-Output Organization
CH10 Input/Output DDDData Transfer EEEExternal Devices IIII/O Modules PPPProgrammed I/O IIIInterrupt-Driven I/O DDDDirect Memory.
The computer system’s I/O architecture is its interface to the outside world. This architecture provides a systematic means of controlling interaction.
Input/Output Problems Wide variety of peripherals —Delivering different amounts of data —At different speeds —In different formats All slower than CPU.
IT3002 Computer Architecture
TANNENBAUM: 5, BIC & SHAW, SILBERSCHATZ: 12 INPUT/OUTPUT DEVICE DRIVERS.
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.
Input Output Techniques Programmed Interrupt driven Direct Memory Access (DMA)
I/O Organization Competency – C6. Important facts to remember when I/O devices are to be connected to CPU There is a vast variety of I/O devices. Some.
بسم الله الرحمن الرحيم MEMORY AND I/O.
I/O: Input-Output By: Tommy Zeng. What is I/O? I/O – short for “Input – Output” How a computer interacts with its users Input – gets information from.
1 Device Controller I/O units typically consist of A mechanical component: the device itself An electronic component: the device controller or adapter.
Amdahl’s Law & I/O Control Method 1. Amdahl’s Law The overall performance of a system is a result of the interaction of all of its components. System.
Computer Organization and Architecture + Networks Lecture 6 Input/Output.
Input/Output (I/O) Important OS function – control I/O
Input / Output Chapter 9.
Computer Science 210 Computer Organization
Input/Output Device Drivers
Chapter 13: I/O Systems Modified by Dr. Neerja Mhaskar for CS 3SH3.
I/O SYSTEMS MANAGEMENT Krishna Kumar Ahirwar ( )
CHAPTER 9: Input / Output
CHAPTER 9: Input / Output
Input/Output.
CS 286 Computer Organization and Architecture
Computer Science 210 Computer Organization
CS703 - Advanced Operating Systems
Chapter 8 Input/Output I/O basics Keyboard input Monitor output
BIC 10503: COMPUTER ARCHITECTURE
CSCI 315 Operating Systems Design
I/O Systems I/O Hardware Application I/O Interface
Operating Systems Chapter 5: Input/Output Management
CS703 - Advanced Operating Systems
Direct Memory Access Disk and Network transfers: awkward timing:
Chapter 5: I/O Systems.
Computer Architecture and Assembly Language
Components of a CPU AS Computing - F451.
Wireless Embedded Systems
Jazan University, Jazan KSA
Computer Electronic device Accepts data - input
Chapter 5 Input/Output Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc. All rights reserved
Presentation transcript:

I/O system

High-level subsystems Application File System Virtual memory Management I/O System Interface I/O System Block device interface Open/close Read/write Stream device interface Open/close get/put io_control Network interface Open/close read/write send/receive Block-oriented device management Stream-oriented device management Network communication software Device independent software CD-ROW Driver Hard disk drive … Keyboard driver Printer driver … Network driver … Device dependant software SW/HW interface Low-level subsystems CD-ROW controller Hard disk controller … Keyboard controller Printer controller … Network controller … HW controls devices ::::::::::

Device Controller Interface write read read/write opcode register operand registers busy register status register data buffer Controller Device Driver Describes the operation which the driver wants the controller to carry out Indicates if controller is busy and that it cannot accept any new requests (boolean value) Indicates a ‘completed operation’ report to the driver Transfers data to and from the device

Explicit Device Interface Memory-mapped Interfaces vs. Main Memory Main Memory n -1 n -1 Extension of Main Memory Controllers dev_0 opcode register operand registers dev_0 opcode register operand registers dev_1 dev_1 opcode register operand registers opcode register operand registers dev_n dev_n 2 different types of instructions used to address Main Memory and Device Same format of instructions used to address Main Memory and Device

Programmed Input/Output with polling Controller opcode register operand registers busy register status register data buffer 2 CPU writes opcode for input operation; controller executes; flag set to busy 1 CPU writes operands required for input in operand registers Device busy 4 CPU 5 After operation completes CPU checks status register for problems 3 Data transferred from device to data buffer 6 If no errors found, CPU transfers data from data buffer to Main Memory Main Memory 4 During data transfer in 3, CPU polls controller by testing busy flag

Programmed Input/Output with Interrupts Controller opcode register 2 CPU writes opcode for input operation; controller executes; flag set to busy operand registers 1 CPU writes operands required for input in operand registers Control Logic 4 Operation complete, controller issues interrupt; running pr. suspends & waiting pr. resumes Device busy register busy CPU status register 5 Resumed process checks status register for problems data buffer 6 If no errors found, process transfers data from data buffer to Main Memory 3 Data transferred from device to data buffer Main Memory

Direct Memory Access I/O (DMA) CPU overhead is high in fast devices. DMA reduces the CPU overhead in initiating and monitoring individual data transfer between device and main memory. Controller opcode register operand registers busy register status register data buffer 2 CPU writes opcode for input operation; controller executes; flag set to busy 1 CPU writes operands required for input in operand registers Control Logic 5 After operation completes, controller resets busy flag to 0 and sends interrupt to CPU Device busy CPU 6 CPU reads status register to check for successful operation 3 Data transferred from device to data buffer 4 Controller copies data between main memory and data buffer; (repeated) Main Memory

DMA – CPU Cycle Stealing Memory Device CPU CTL 1