I/O Software
i/o controller make interrupt and interrupt handler to kernel and done by device driver - device dependent code
Always check interrupt at final red box at lower picture
Device driver
Standard driver interfaces be given like Virtual File System - to manageable by kernel architect
Driver-independent I/O Software
they are accessed through file system calls
I/O software layer
In Unix devices are modeled as special files
CPU is fast and device is slow so we buffering
- buffered in use space
- buffered in the kernel space
- double buffering in kernel
User-space I/O Software
VFS fixed function to develop, like file interface metaphor so make my own backspace touch blue-tooth sticker