The system calls studied earlier presented the interface between the operating system kernel and application programs. Device drivers present the interface at the other end of the operating system, between the kernel and the hardware of the machine.
Remember, that great care was taken when receiving input from and sending output to files and devices to make them all look, as far as possible, just like files, all using the open(), close(), read() and write() interface. As we shall see, it is in the device drivers themselves that this file appearance is created.