are device drivers specific to device controllers or peripheral devices?
it is said that device drivers are specific to device controllers but whenever a new hardware is connected to the system, say a mobile handset we need to install the specific device drivers for that mobile handset. this indicates that device drivers are peripheral specific!!
can someone expla开发者_如何学Goin this??
thanks in advance
Regards Ankita
Device drivers are part of the kernel, specifically the IO subsystem of the kernel. At the lowest level, device drivers communicate directly with peripheral devices or their controllers or channels. A device driver is responsible for starting I/O operations on a device and processing the completion of an I/O request. For example,in file operations,the typical devices controlled are disk and tape drives.
Device drivers can be abstracted into logical and physical layers. Logical layers process data for a class of devices such as Ethernet ports or disk drives. Physical layers communicate with specific device instances.
For example, a serial port needs to handle standard communication protocols common for all serial port hardware. This would be managed by a serial port logical layer. However, the physical layer needs to communicate with a particular serial port chip. The physical layer addresses the chip-specific variations. Conventionally, OS requests go to the logical layer first. In turn, the logical layer calls upon the physical layer to implement OS requests in terms understandable by the hardware. Inversely, when a hardware device needs to respond to the OS, it uses the physical layer to speak to the logical layer.
So peripheral device specific logical device driver would be required to interface the new hardware with the standard IO-controller of the host OS.
精彩评论