LYCOS RETRIEVER
Drivers (Programming): Devices
built 655 days ago
Software developer and author Karen Hazzah expands her original treatise on device drivers in the second edition of Writing Windows VxDs and Device Drivers. The book and companion disk include the author's library of wrapper functions that allow the programmer to code VxDs almost entirely in C, eliminating the necessity of expensive third-party tools. Virtual and nonstandard device drivers extend the capabilities of Windows to go anywhere and do anything. Hazzah specifies how to determine whether a virtual device driver (VxD) or dynamic link library (DLL) is appropriate for the task at hand, depending on privilege, restrictions, kind of interface, class of device, and performance requirements. Whatever the case, Hazzah presents her material in the context of the Virtual Machine and the 80x86 architecture. This book is primarily aimed at developers who need to write nonstandard device drivers, either as VxDs or DLLs.
Source:
[D]rivers are usually written by software engineers who come from the companies that develop the hardware. This is because they have better information than most outsiders about the design of their hardware. Moreover, it was traditionally considered in the hardware manufacturer's interest to guarantee that their clients can use their hardware in an optimum way. Typically, the logical device driver (LDD) is written by the operating system vendor, while the physical device driver (PDD) is implemented by the device vendor. But in recent years non-vendors have written numerous device drivers, mainly for use with free operating systems. In such cases, it is important that the hardware manufacturer provides information on how the device communicates.
Source:
Discussion: Since the beginning of the PC era, adding peripherals to a computer has generally been a nightmare of drivers and software. Even when Microsoft offered up "Plug-n-Play" in Windows 95, most devices still required a magical voodoo dance to be correctly installed. With the advent of the internet, vendors have been shipping unfinished drivers with the products, forcing users to hunt down drivers online and go through the laborious process of updating them.
Source:
In modern operating systems applications and the operating system itself access hardware through device drivers. Device drivers are software components providing an interface for applications to use and control devices. Technical requirements for device drivers are much higher than for normal user applications because the stability and performance of the whole system relies on drivers. In many cases operating system vendors such as Microsoft are blamed for instability when the blame should go to poor driver implementations.
Source:
For drivers, this is typically determined from the physical devices connected, such as the number of ports on a multiplexor. However, certain types of modules may not be associated with a particular external physical limit. For example, the CANONICAL module shown in the Module Reusability diagram could be used on different types of streams.
Source:
Max Bruning currently teaches and consults on Solaris internals, device drivers, kernel (as well as application) crash analysis and debugging, networking internals, and specialized topics. Contact him at max AT bruningsystems DOT com or http://mbruning.blogspot.com/.
Source: