Because of the diversity of modernupdate hardware and operating systems, drivers operate in many different environments. Drivers may interface with: Printers Video adapters Network cards Sound cards Local buses of various sorts—in particular, for bus mastering on modern systems Low-bandwidth I/O buses of various sorts (for pointing devices such as mice, keyboards, etc.) Computer storage devices such as hard disk, CD-ROM, and floppy disk buses (ATA, SATA, SCSI, SAS) Implementing support for different file systems Image scanners Digital cameras Common levels of abstraction for device drivers include: For hardware: Interfacing directly Writing to or reading from a device control register Using some higher-level interface (e.g. Video BIOS) Using another lower-level device driver (e.g. file system drivers using disk drivers) Simulating work with hardware, while doing something entirely different For software: Allowing the operating system direct access to hardware resources I...
Comments
Post a Comment