I/O Techniques, Buffering and Scheduling Flashcards
What are the three main I/O techniques?
1) Programmed I/O, 2) Interrupt-driven I/O, 3) Direct Memory Access (DMA).
What is programmed I/O?
The CPU actively waits and checks the status of the I/O device during data transfer (polling).
What is interrupt-driven I/O?
The I/O device signals the CPU when it is ready, freeing the CPU from constant checking.
What is Direct Memory Access (DMA)?
A method where data is transferred directly between memory and device without CPU involvement.
What are the advantages of DMA?
Faster data transfers and reduced CPU load.
What is I/O buffering?
Using temporary memory areas (buffers) to hold data during I/O transfers to manage speed differences.
Why is buffering important in I/O systems?
To smooth data flow between slow I/O devices and fast CPUs, reducing idle time.
What are types of I/O buffering?
1) Single buffering, 2) Double buffering, 3) Circular buffering.
What is double buffering?
Using two buffers so one can be filled while the other is being emptied — helps improve throughput.
What is I/O scheduling?
The method used to determine the order in which I/O operations are performed.
What are common I/O scheduling strategies?
1) First-Come, First-Served (FCFS), 2) Shortest Seek Time First (SSTF), 3) SCAN (Elevator algorithm), 4) C-SCAN.
What is the SCAN (Elevator) algorithm?
An I/O scheduling strategy that moves the disk arm in one direction servicing requests until it reaches the end, then reverses.