Class Notes (836,580)
Canada (509,856)
York University (35,328)
ITEC 1000 (85)
all (19)


4 Pages
Unlock Document

Information Technology
ITEC 1000
All Professors

Introduction to Information Technology ITEC 1000 – Winter 2010 – Peter Khaiter Lecture 8 – Input/Output – Mar 1 I/O Considerations - Speed Issues o CPU operates at speeds much faster than the fastest I/O device o Devices operate at different speeds o Bursts of data o Block data transfer required for some devices - Coordination o I/O devices completely operate under CPU program control o Several devices perform I/O simultaneously o Unexpected input (Ctrl-C, Ctrl-S, Ctrl-Alt-Del) o Various input formats o Status information needed for each device I/O Device Interface Issues - Different formats o Parallel interface o Serial interface - Buffering of data - Burst vs. Stream - Different control requirements o Electromechanical I/O Module Functions - Recognizes messages from device(s) addressed to it and accepts commands from the CPU - Provides a buffer where the data from memory can be held until it can be transferred to the disk - Provides the necessary registers and controls to perform a direct memory transfer - Physically controls the device - Copies data from its buffer to the device/from the CPU to its buffer - Notifies with interrupts Programmed I/O - I/o module connected to a pair of i/o registers in cpu via bus - Transfer: one word at a time - Input: i/o device i/o module i/o register ar under program control - Output: ar i/o register i/o module i/o device - In practice: multiple i/o devices connected to cpu - I/o data and address registers in cpu: work similarly to mar and mdr - Address information must be sent with the i/o instruction in the address field - Requires full instruction fetch/execute cycle for each word data transfer - Very slow - Primary use: - Keyboards - Communication with i/o modules to control i/o operations (see dma) Polling - A form of programmed I/O, wherein device “status” is checked to determine if an I/O operation is needed o E.g.,  A keyboard can be polled to determine if a key has been struck and a code is waiting to be read - Useful when there are a lot of similar devices connected to one system (e.g., hundreds of terminals) Interrupts - Signal that causes the CPU to alter its normal flow of a program/instruction execution o Frees CPU from waiting for events o Provides control for external input - Examples o Unexpected input o Abnormal situation o Illegal instructions o Multitasking, multiprocessing - Provided by special control lines to CPU o Called interrupt lines o In modern pcs: up to 32 labeled IRQ0..IRQ31 o Transmits message called interrupt o Causes computer to suspend program execution and jump to interrupt processing program Interrupting Terminology - Interrupt lines (hardware) - Interrupt request - Interrupt handlers o Program that services the interrupt o Also known as an interrupt routine o Determines appropriate course of actions when interrupt occurs - Process Control Block (PCB) o Located in a part of memory known as the stack area o All registers of a program (last instruction executed, data value in registers) are saved here before control is transferred to the interrupt
More Less

Related notes for ITEC 1000

Log In


Join OneClass

Access over 10 million pages of study
documents for 1.3 million courses.

Sign up

Join to view


By registering, I agree to the Terms and Privacy Policies
Already have an account?
Just a few more details

So we can recommend you notes for your school.

Reset Password

Please enter below the email address you registered with and we will send you a link to reset your password.

Add your courses

Get notes from the top students in your class.