export_week 11chapter 9 input output Flashcards
,
Basic Model of Processing speed or program execution
determined primarily by ability of I/O operations to stay ahead of processor.
,
I/O Requirements
▪ Means for addressing different peripheral devices ▪ A way for peripheral devices to initiate communication with the CPU ▪ An efficient means of transferring data directly between I/O and memory for large data transfers since programmed I/O is suitable only for slow devices and individual word transfers
,
I/O Requirements
▪ Buses that interconnect high-speed I/O devices with the computer must support high data transfer rates ▪ Means for handling devices with extremely different control requirements
,
I/O Interfaces Are necessary because of ?
▪ Different formats required by the devices ▪ Incompatibilities in speed between the devices and the CPU make synchronization difficult ▪ Bursts of data vs. streaming data ▪ Device control requirements that would tie up too much CPU time
,
Examples of I/O Devices
,
Simple I/O Configuration D?
https://s3.amazonaws.com/classconnection/655/flashcards/7082655/png/image77u8qx-14A61DE34A91D5DD827.png
,
More Complex I/O Module
https://s3.amazonaws.com/classconnection/655/flashcards/7082655/png/imager61jrx-14A61DDE2410D2FE1D4.png
,
Advanced I/O Techniques
▪ Programmed I/O ▪ CPU controlled I/O ▪ Interrupt Driven I/O ▪ External input controls ▪ Direct Memory Access Controllers ▪ Method for transferring data between main memory and a device that bypasses the CPU
,
Programmed I/O traits ?
I/O data and address registers in CPU ▪ One word transfer per I/O instruction ▪ Address information for each I/O device ▪ LMC I/O capability for 100 devices ▪ Full instruction fetch/execute cycle
,
where is programmed I/O used ?
▪ Primary use: ▪ keyboards ▪ communication with I/O modules (see DMA)
,
Programmed I/O Example
https://s3.amazonaws.com/classconnection/655/flashcards/7082655/png/imageqqw8qx-14A617B1C6C30C28BFD.png
,
Programmed I/O Example
https://s3.amazonaws.com/classconnection/655/flashcards/7082655/png/image3oq4qx-14A617B679E34F0849B.png
,
Interrupt Terminology ▪ Interrupt lines (hardware
▪ One or more special control lines to the CPU
,
Interrupt request
dont know
,
▪ Interrupt handlers
▪ Program that services the interrupt ▪ Also known as an interrupt routine or device driver
,
▪ Context of interrupts
▪ Saved registers of a program before control is transferred to the interrupt handler ▪ Allows program to resume exactly where it left off when control returns to interrupted program
,
Use of Interrupts ?
▪ Notify that an external event has occurred ▪ real-time or time-sensitive ▪ Signal completion ▪ printer ready or buffer full ▪ Allocate CPU time ▪ time sharing ▪ Indicate abnormal event (CPU originates for notification and recovery) ▪ illegal operation, hardware error ▪ Software interrupts
,
The CPU - The Interrupt Cycle how ?D
https://s3.amazonaws.com/classconnection/655/flashcards/7082655/png/selection_220-14A617DC32A55AC6970.png
,
Servicing the Interrupt
- Lower priority interrupts are held until higher priority interrupts are complete 2. Suspend program in progress 3. Save context, including last instruction executed and data values in registers, in the PCB or the stack area in memory 4. Branch to interrupt handler progra
,
Servicing an Interrupt
https://s3.amazonaws.com/classconnection/655/flashcards/7082655/png/imagefprjrx-14A617E93147EADFB7D.png
,
what are Interrupt Processing Methods?
1.Vectored interrupt ▪ Address of interrupting device is included in the interrupt ▪ Requires additional hardware to implement 2.▪ Polling ▪ Identifies interrupting device by polling each device ▪ General interrupt is shared by all devices
,
Vectored Interrupts
https://s3.amazonaws.com/classconnection/655/flashcards/7082655/png/imagel8jzqx-14A6180E5F022506E5A.png
,
Polled Interrupts
https://s3.amazonaws.com/classconnection/655/flashcards/7082655/png/image3rserx-14A618128902A20A81B.png
,
Print Handler Interrupt
https://s3.amazonaws.com/classconnection/655/flashcards/7082655/png/imagenyvyqx-14A61DF1902346C64BB.png