Application/API
A process calls read, write or an asynchronous interface without knowing controller registers.
Code
Bhavya
Follow an application request through drivers and controllers, compare programmed, interrupt-driven and DMA transfer, then schedule storage requests explicitly.
A process calls read, write or an asynchronous interface without knowing controller registers.
The kernel checks permissions, names devices, buffers data and applies common error handling.
Device-specific software builds commands, manages queues and interprets completion status.
Hardware moves bits and reports completion or error through status registers and interrupts.
Spooling queues complete jobs for a serially shared device such as a printer. Buffering absorbs speed mismatch during transfer. Caching retains reusable data to avoid repeated slow access. The concepts overlap but answer different problems.
Simple but repeated status checks waste CPU time when devices are slow.
The CPU does other work, then saves state and runs a handler on completion.
The CPU programs source, destination and length; DMA moves bulk data and interrupts after completion.
For teaching, seek cost is approximated by absolute cylinder movement. SSDs do not have a mechanical head, so these classical policies mainly explain HDD scheduling foundations.
The service path and total movement will appear here.
| Policy | Rule | Benefit | Risk |
|---|---|---|---|
| FCFS | Arrival order | Fair and simple | Large movement |
| SSTF | Nearest request | Lower local seek | Far requests may starve |
| SCAN | Sweep then reverse | Bounded directional service | Middle can wait less than edges |
| C-SCAN | Serve one direction | More uniform waiting | Return movement overhead |
High parallel throughput and full capacity, but one disk failure loses the array. It is not redundancy.
Duplicate copies improve read options and tolerate a mirror member failure at roughly half raw capacity.
Capacity-efficient failure tolerance, but small writes need parity work and rebuild risk must be managed.
RAID is not a backup: it does not protect against accidental deletion, corruption replicated across members, theft or site loss. Backups need separate versions and tested restoration.
Mark complete after calculating one full disk schedule.
Saved only in this browser.