I/O Devices Chapter 14 9/20/2018 Crowley OS Chap. 14.

Slides:



Advertisements
Similar presentations
Categories of I/O Devices
Advertisements

Operating Systems High Level View Chapter 1,2. Who is the User? End Users Application Programmers System Programmers Administrators.
Chapter 4 The Components of the System Unit
1 I/O Management in Representative Operating Systems.
INPUT / OUTPUT DEVICES. Input / Output Devices The input/output (I/O) devices of a computer are not part of the CPU, but are channels for communicating.
Chapter 2: Hardware Basics Section I: Preparing to Use Technology.
INPUT/OUTPUT ARCHITECTURE By Truc Truong. Input Devices Keyboard Keyboard Mouse Mouse Scanner Scanner CD-Rom CD-Rom Game Controller Game Controller.
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.
XP Practical PC, 3e Chapter 17 1 Upgrading and Expanding your PC.
Information Technology
Chapter 8 Input/Output. Busses l Group of electrical conductors suitable for carrying computer signals from one location to another l Each conductor in.
Computer Hardware Ruth Watson
© Janice Regan, CMPT 300, May CMPT 300 Introduction to Operating Systems Principles of I/0 hardware.
(More) Interfacing concepts. Introduction Overview of I/O operations Programmed I/O – Standard I/O – Memory Mapped I/O Device synchronization Readings:
COMPUTER ARCHITECTURE. Recommended Text 1Computer Organization and Architecture by William Stallings 2Structured Computer Organisation Andrew S. Tanenbaum.
ELEMENTS OF A COMPUTER SYSTEM HARDWARE SOFTWARE PEOPLEWARE DATA.
Chapter 1 Computers, Compilers, & Unix. Overview u Computer hardware u Unix u Computer Languages u Compilers.
Chapter 5 Input/Output 5.1 Principles of I/O hardware
Lecture on Central Process Unit (CPU)
C HAPTER 4 OS: C OMPUTER O RGANIZATION TOPICS: The Von Neumann Architecture The CPU.
Digital Literacy: Computer Basics
بسم الله الرحمن الرحيم MEMORY AND I/O.
1 Device Controller I/O units typically consist of A mechanical component: the device itself An electronic component: the device controller or adapter.
Introduction to Operating Systems Concepts
Computer Organization and Design
Computer Architecture and Number Systems
Computer System Structures
OPERATING SYSTEM CONCEPT AND PRACTISE
Chapter 13: I/O Systems Modified by Dr. Neerja Mhaskar for CS 3SH3.
I/O SYSTEMS MANAGEMENT Krishna Kumar Ahirwar ( )
Clocks, I/O devices, Thin Clients, and Power Management
Information Technology
Introduction to Visual Basic 2008 Programming
Components of Computer
Principles of Information Technology
What is a computer? Simply put, a computer is a sophisticated electronic calculating machine that: Accepts input information, Processes the information.
Operating Systems (CS 340 D)
Chapter 7.2 Computer Architecture
Input/Output.
Linux Operating System Architecture
1 Input-Output Organization Computer Organization Computer Architectures Lab Peripheral Devices Input-Output Interface Asynchronous Data Transfer Modes.
C_ITCO011/C_ITCO111 LECTURER: E.DONDO
CS 286 Computer Organization and Architecture
Course Name: Computer Application Topic: Central Processing Unit (CPU)
IRQ, DMA and I/O Ports - Introduction -
Introduction to Operating Systems
Design III Chapter 13 9/20/2018 Crowley OS Chap. 13.
Direct Attached Storage and Introduction to SCSI
I/O Systems Chapter 15 11/7/2018 Crowley OS Chap. 15.
Programmable Logic Controllers (PLCs) An Overview.
COMPUTER BASICS Computer essentials 7-8.
Design IV Chapter 18 11/14/2018 Crowley OS Chap. 18.
McGraw-Hill Technology Education
0. What is a Computer?.
CS703 - Advanced Operating Systems
Chapter 5: Computer Systems Organization
Five Key Computer Components
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
Introduction to Computer Architecture
Chapter 3 Peter Norton’s  Introduction to Computers Interacting with Your Computer.
McGraw-Hill Technology Education
McGraw-Hill Technology Education
Chapter-1 Computer is an advanced electronic device that takes raw data as an input from the user and processes it under the control of a set of instructions.
Computer components is a programmable machine that receives input, stores and manipulates data, and provides output in a useful format. Computer The computer.
Chapter 13: I/O Systems.
Presentation transcript:

I/O Devices Chapter 14 9/20/2018 Crowley OS Chap. 14

Key concepts in chapter 14 Devices and controllers Terminal devices terminal capability databases graphics terminals terminal emulators and PPP Communication devices serial and parallel ports Ethernet and other network devices Disk devices RAID, CD, tape, SCSI 9/20/2018 Crowley OS Chap. 14

Devices and controllers Input device: transforms externally represented data to internal form Output device: transforms internal data to some external representation Device controller: an electronic component that interfaces between the computer system bus and one or more devices I/O processor or channel: a programmable device controller 9/20/2018 Crowley OS Chap. 14

I/O devices and controller 9/20/2018 Crowley OS Chap. 14

Terminal devices A keyboard, mouse and display connected to the computer by a serial port A special-purpose computer with a character-display-oriented instruction set Virtual terminals allow programs to use many types of terminals uses a terminal capability database uses the curses virtual terminal model 9/20/2018 Crowley OS Chap. 14

A basic terminal device 9/20/2018 Crowley OS Chap. 14

Electron beam drawing on a CRT 9/20/2018 Crowley OS Chap. 14

Electron beam trace on a screen 9/20/2018 Crowley OS Chap. 14

Bitmaps for character display 9/20/2018 Crowley OS Chap. 14

VT100 display commands (1) Clear the screen (2) Go to line 12, character 30 (3) Write "HelloWorld” (4) Go to line 12, character 35 (5) Insert ", " (changing it to "Hello, World") (1) <E>[;H<E>[2J (8 bytes -- clear screen and home cursor) (2) <E>[13;30H (8 bytes -- go to line 12 character 30) (3) HelloWorld (10 bytes -- ASCII characters) (4) <E>[13;35H (8 bytes -- go to line 12 character 35) (5) , World (7 bytes -- ASCII characters -- changing it to "Hello, World") 9/20/2018 Crowley OS Chap. 14

Televideo 950 display commands (1) <E>* (2 bytes -- clear screen and home cursor) (2) <E>=,> (4 bytes -- go to line 12 character 30) (3) HelloWorld (10 bytes -- ASCII characters) (4) <E>=,C (4 bytes -- go to line 12 character 35) (5) <E>q, <E>r (6 bytes -- insert mode, ", ", end insert) 9/20/2018 Crowley OS Chap. 14

VT100 termcap d0|vt100|vt100-am|vt100am|dec vt100:\ :do=^J:co#80:li#24:cl=50\E[;H\E[2J:sf=5\ED:\ :le=^H:bs:am:cm=5\E[%i%d;%dH:nd=2\E[C:up=2\E[A:\ :ce=3\E[K:cd=50\E[J:so=2\E[7m:se=2\E[m:us=2\E[4m:ue=2\E[m:\ :md=2\E[1m:mr=2\E[7m:mb=2\E[5m:me=2\E[m:is=\E[1;24r\E[24;1H:\ :rf=/usr/share/lib/tabset/vt100:\ :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:ks=\E[?1h\E=:ke=\E[?1l\E>:\ :ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:kb=^H:\ :ho=\E[H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:pt:sr=5\EM:vt#3:xn:\ :sc=\E7:rc=\E8:cs=\E[%i%d;%dr: 9/20/2018 Crowley OS Chap. 14

Virtual terminals and curses 9/20/2018 Crowley OS Chap. 14

Curses display commands (1) erase();(clear screen and home cursor) (2) move(12,30);(go to line 12 char 30) (3) addstr("HelloWorld")(write ASCII chars) (4) move(12,35);(go to line 12 char 35) (5) insch(',');insch(' '); (insert ',' then ' ') 9/20/2018 Crowley OS Chap. 14

Design technique: escape codes 9/20/2018 Crowley OS Chap. 14

Encoding to save space 9/20/2018 Crowley OS Chap. 14

Interfaces to a terminal 9/20/2018 Crowley OS Chap. 14

Design technique: Reusing old software Old software is often a valuable resource people know how to use it it is already written and debugged Old software depends on an environment that has gone away (e.g. terminals) but we can often use emulation to recreate the old environment and continue using old software 9/20/2018 Crowley OS Chap. 14

Mouse devices and events Terminal devices report input events keyboard events key down key up mouse event mouse button down mouse button up mouse movement These are combined into a unified event stream to the process reading the device 9/20/2018 Crowley OS Chap. 14

Two-stage communication 9/20/2018 Crowley OS Chap. 14

Design technique: Two-level implementation It is well-known that modularity is an effective design technique divide and conquer The simplest version of modules is two modules, one built on the other a two-level implementation We have seen this before (in chapter 4) but now we have many more examples 9/20/2018 Crowley OS Chap. 14

Some two-level implementations Two levels of memory management Two-level paging device controllers and devices Virtual terminals and real terminals Multiple event streams into a single event stream Logical and physical disks (later) Two levels of device drivers (later) 9/20/2018 Crowley OS Chap. 14

Two graphics controller models 9/20/2018 Crowley OS Chap. 14

X windows communications 9/20/2018 Crowley OS Chap. 14

Terminal emulator over a modem 9/20/2018 Crowley OS Chap. 14

An Xterm is a terminal emulator 9/20/2018 Crowley OS Chap. 14

PPP network emulation 9/20/2018 Crowley OS Chap. 14

Serial port 9/20/2018 Crowley OS Chap. 14

Parallel port 9/20/2018 Crowley OS Chap. 14

An Ethernet configuration 9/20/2018 Crowley OS Chap. 14

A disk device 9/20/2018 Crowley OS Chap. 14

Timing of a disk access 9/20/2018 Crowley OS Chap. 14

RAID Disk can only spin so fast to increase speed we need to use parallelism RAID: redundant array of inexpensive disks redundant: RAID can be used in increase reliability through redundancy array: RAID uses disks in parallel inexpensive: RAID uses disks that are manufactured in the highest volume and are therefor have the best performance/cost ratio 9/20/2018 Crowley OS Chap. 14

A RAID device 9/20/2018 Crowley OS Chap. 14

Design technique: The power of parallelism It is hard to keep make devices faster and faster e.g. processors, disks, printers, etc You run into the Law of Diminishing Returns In many situation you can turn to parallelism to gain more speed multiprocessors, RAID, multiple printers, etc. 9/20/2018 Crowley OS Chap. 14

Overlapping transfer and seek 9/20/2018 Crowley OS Chap. 14

SCSI architecture 9/20/2018 Crowley OS Chap. 14

Tape devices 9/20/2018 Crowley OS Chap. 14