“Chishiki” is Japanese for “knowledge.” e-chishiki.com aims to bring software developers, information security professionals, IT executives and other IT pros a rich body of knowledge in the form of articles, interviews, tutorials and technical discussions. Our contributors are among the biggest names in the Indian IT industry and include noted authors, educators and practitioners.
Windows Device Driver Programming Series
A Windows Device Driver Primer (2/10): Device Driver Programming
Yashavant Kanetkar and Asang Dani
Device Driver Programming
It is a common misconception that every Device Driver program controls some hardware device. There are many Device Driver programs that do not drive any device.
For example, a File System Driver (FSD) never interacts with any physical hardware.
- A FSD is responsible for handling file I/O requests from application, converting these requests to a low-level form (Cylinder, Head, Sector request) and passing it to another driver.
- This ‘another’ driver actually interacts with the physical storage device.
- File system drivers bear the responsibility of managing the logical organization of a disk.
- FSD is required for different types of file systems like FAT, NTFS, CDFS, UDF, etc.



