Digital UNIX Internals III/O Framework Chapter 12.

Slides:



Advertisements
Similar presentations
Provide data pathways that connect various system components.
Advertisements

Principles of I/O Hardware I/O Devices Block devices, Character devices, Others Speed Device Controllers Separation of electronic from mechanical components.
CS-334: Computer Architecture
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.
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)
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.
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.
Figure 1.1 Interaction between applications and the operating system.
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
1 I/O Management in Representative Operating Systems.
I/O Systems CSCI 444/544 Operating Systems Fall 2008.
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
Copyright ©: Nahrstedt, Angrave, Abdelzaher
I/O Tanenbaum, ch. 5 p. 329 – 427 Silberschatz, ch. 13 p
INPUT-OUTPUT ORGANIZATION
Input/Output. Input/Output Problems Wide variety of peripherals —Delivering different amounts of data —At different speeds —In different formats All slower.
1 Input/Output. 2 Principles of I/O Hardware Some typical device, network, and data base rates.
Chapter 8 Input/Output. Busses l Group of electrical conductors suitable for carrying computer signals from one location to another l Each conductor in.
Interconnection Structures
1 CS503: Operating Systems Spring 2014 Dongyan Xu Department of Computer Science Purdue University.
ITEC 502 컴퓨터 시스템 및 실습 Chapter 8-1: I/O Management Mi-Jung Choi DPNM Lab. Dept. of CSE, POSTECH.
Segmentation & O/S Input/Output Chapter 4 & 5 Tuesday, April 3, 2007.
NETW 3005 I/O Systems. Reading For this lecture, you should have read Chapter 13 (Sections 1-4, 7). NETW3005 (Operating Systems) Lecture 10 - I/O Systems2.
Buses Warning: some of the terminology is used inconsistently within the field.
Silberschatz, Galvin and Gagne  Operating System Concepts I/O Hardware Incredible variety of I/O devices.
I/O Systems I/O Hardware Application I/O Interface
1 Lecture 20: I/O n I/O hardware n I/O structure n communication with controllers n device interrupts n device drivers n streams.
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.
Computer Architecture and Organization Introduction.
Architecture Examples And Hierarchy Samuel Njoroge.
CS 342 – Operating Systems Spring 2003 © Ibrahim Korpeoglu Bilkent University1 Input/Output CS 342 – Operating Systems Ibrahim Korpeoglu Bilkent University.
BUS IN MICROPROCESSOR. Topics to discuss Bus Interface ISA VESA local PCI Plug and Play.
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.
L/O/G/O Input Output Chapter 4 CS.216 Computer Architecture and Organization.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 13: I/O Systems I/O Hardware Application I/O Interface Kernel I/O Subsystem.
DEVICES AND COMMUNICATION BUSES FOR DEVICES NETWORK– PARALLEL BUS DEVICE PROTOCOLS 1.
Chapter 5 Input/Output 5.1 Principles of I/O hardware
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.
PC Internal Components Lesson 4.  Intel is perhaps the most recognizable microprocessor manufacturer. List some others.
Silberschatz, Galvin and Gagne ©2009 Edited by Khoury, 2015 Operating System Concepts – 9 th Edition, Chapter 13: I/O Systems.
Input/Output Problems Wide variety of peripherals —Delivering different amounts of data —At different speeds —In different formats All slower than CPU.
Chapter 13: I/O Systems Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 13: I/O Systems Overview I/O Hardware Application.
Device Driver Concepts Digital UNIX Internals II Device Driver Concepts Chapter 13.
3/22 How a Bus Works. Roll Call Lecture: –general traces addresses sizes types –How a PCI bus works.
Multiple Interrupts Each interrupt line has a priority Higher priority lines can interrupt lower priority lines If bus mastering only current master can.
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.
Silberschatz, Galvin and Gagne ©2011 Operating System Concepts Essentials – 8 th Edition Chapter 2: The Linux System Part 5.
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.
Module 12: I/O Systems I/O hardware Application I/O Interface
Chapter 13: I/O Systems Modified by Dr. Neerja Mhaskar for CS 3SH3.
The PCI bus (Peripheral Component Interconnect ) is the most commonly used peripheral bus on desktops and bigger computers. higher-level bus architectures.
CS703 - Advanced Operating Systems
CSCI 315 Operating Systems Design
I/O Systems I/O Hardware Application I/O Interface
Operating System Concepts
13: I/O Systems I/O hardwared Application I/O Interface
Today’s agenda Hardware architecture and runtime system
Five Key Computer Components
Chapter 2: The Linux System Part 5
LINUX System : Lecture 7 Lecture notes acknowledgement : The design of UNIX Operating System.
Chapter 13: 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.
Module 12: I/O Systems I/O hardwared Application I/O Interface
Presentation transcript:

Digital UNIX Internals III/O Framework Chapter 12

Digital UNIX Internals III/O Framework Topics Physical Hardware Components Software Structures for Hardware Components Software IO Layers and Subsystems

Digital UNIX Internals III/O Framework I/O Components Diagram I/O System I/O Controller I/O Device Local I/O Widget CPU Console Memory Local I/O Adapter Remote I/O Widget Remote I/O Widget I/O Controller I/O Device I/O Device Loosely-coupled I/O interconnect Remote I/O Adapter Tightly-coupled I/O Interconnect 3 Tightly-coupled I/O Interconnect 2 Tightly-coupled I/O Interconnect 1 I/O Device I/O Device PMI

Digital UNIX Internals III/O Framework I/O Component Description Although the CPU is always an Alpha, the underlying bus architecture varies greatly. Supported buses include PCI, TC (TURBOchannel), EISA, and ISA. The kernel, therefore, creates an internally linked list known as the bus structure that represents the varying topologies. This structure carries information common to all buses and hides bus-specific information in a handle structure. There is one doubly linked list to all of the other buses in the system. For each bus, there are links to one or more controller structures (that represent each controller on the bus). And, similarly, the controller structures point to zero or more device structures.

Digital UNIX Internals III/O Framework I/O Data Structures bus_hd (0) nxt_bus(0) ctir_list bus_list struct bus tc0_struct struct bus tc0_struct bus_hd nxt_bus (0) ctir_list bus_list (0) struct bus vba1_struct bus_hd nxt_bus ctir_list bus_list (0) struct bus vba0_struct struct bus vba0_struct bus_hd nxt_ctir dev_list (0) struct controller fb0_struct bus_hd nxt_ctir (0) dev_list struct controller ipi0_struct bus_hd nxt_ctir (0) dev_list (0) struct controller sk0_struct bus_hd nxt_ctir (0) dev_list (0) struct controller cb0_struct next_dev ctir_hd struct device ip1_struct next_dev (0) ctir_hd struct device ip2_struct bus_list[] controller_list[] device_list[]

Digital UNIX Internals III/O Framework EISA BUS Extended Industry Standard Architecture. Superset of the 8- and 16-bit Industry Standard Architecture (ISA) –IBM Compatible PC, XT, and AT personal computers. The EISA bus has the following characteristics: –32-bit bus size –64-kilobyte I/O address, made up of 16 4-KB slots –4-gigabyte memory address space –The Digital implementation of EISA is little endian, like Intel implementation –ISA devices are supported on an EISA bus or an ISA bus

Digital UNIX Internals III/O Framework PCI BUS Peripheral Component Interconnect A physical interconnect mechanism for use between highly integrated peripheral controller components and processor/memory systems. Supports 8-bit, 16 bit, 24-bit, 32-bit, and 64-bit data sizes Uses little endian byte-ordering, the same as the Alpha architecture Can access device registers in either I/O space or memory space

Digital UNIX Internals III/O Framework SCSI Bus Small Computer System Interface ANSI standard Flexible - allows for device independence through standard bus protocol and host bus adapters 8 Devices on a 8 bit scsi bus, expandable to 16 devices on a 16 bit bus High transfer rates logical addressing

Digital UNIX Internals III/O Framework I/O Software Support

Digital UNIX Internals III/O Framework Benefits of I/O Software Support ComponentDescription System Call interfaceUser-accessible interface that allows access to devices via the operating system System routinesRoutines that interface with the device drivers; they help standardize the transfer of data to and from devices Buffer caching systemImproves data transmission and retrieval performance "Type of" protocol layerAdapts raw data into a form suitable for the intended device; may entail anything from special buffering to encapsulating the data within identification headers and trailers Device driversSoftware to enable the use of specific hardware devices such as adapters, controllers, disks, tapes and Ethernet Interrupt handlersSystem and device-specific software that handles communication with the kernel to process asynchronous system and device events.

Digital UNIX Internals III/O Framework I/O Software Support Structure hardware user mode process system call interface character device interface cdevsw buffered device interface (cooked, disk) vfs interface nfs buffer caches rpc protocols socket interface mbufs bdevsw Character oriented driver (uio) network device driver block device driver tty driver (pts, ptc) linesw 8 line disciplines character oriented raw mode raw queue (clists/cblocks) line oriented cbreak mode line oriented canonical queue cooked mode pio or dma adapter controller tape, disk line printer, drim, mem kmem RS-232, lat, pseudo ttysdisk, cdromln lo ne fza advfs streams lsm