Keyboard and mouse class drivers • • 13 minutes to read • Contributors • In this article Non-HID keyboards and mice can connect over multiple legacy buses but still use the same class driver. This section contains details on the class drivers themselves. The following sections goes into details on the controllers. This wireless keyboard and mouse desktop provides encryption and comfort. Unlike standard keyboards, this one features Advanced Encryption Standard (AES), which is designed to help protect your personal and business information by encrypting your keystrokes. This topic describes the typical physical configuration of keyboard and mouse devices in Microsoft Windows 2000 and later. The following figures show two common configurations that employ a single keyboard and a single mouse. The figure on the left shows a keyboard and a mouse connected to a system bus through independent controllers. A typical configuration consists of a PS/2-style keyboard operated through an i8042 controller, and a serial-style mouse operated through a serial port controller. The following additional information is important for keyboard and mice manufactures: • Keyboards are opened in exclusive mode by the operating system stack for security reasons • Windows supports the simultaneous connection of more than one keyboard and mouse device. • Windows does not support independent access by a client to each device. Class driver features This topic describes the features of the following Microsoft Windows 2000 and later system class drivers: • Kbdclass, the class driver for devices of GUID_CLASS_KEYBOARD device class • Mouclass, the class driver for devices of GUID_CLASS_MOUSE device class Kbdclass implements the Kbdclass service and its executable image is kbdclass.sys. Mouclass implements the Mouclass service and its executable image is mouclass.sys. Kbdclass and Mouclass each feature: • Generic and hardware-independent operation of the device class. Parentheses for negative numbers in excel mac. • Plug and Play, power management, and Windows Management Instrumentation (WMI). • Operation of legacy devices. • Simultaneous operation of more than one device. • Connection of a that a function driver uses to transfer data from the input data buffer of the device to the data buffer of the class driver. Configuration of device objects The following figure shows the configuration of device objects for a Plug and Play PS/2-style keyboard and mouse device. Each class driver creates an upper-level class filter device object (filter DO) that is attached to a function device object ( FDO) through an optional upper-level device filter DO. An upper-level device filter driver creates the upper-level device filter DO. I8042prt creates the function DO and attaches it to a physical device object ( PDO) created by the root bus driver. PS/2 Keyboard The keyboard driver stack consists of the following. • Kbdclass, the upper-level keyboard class filter driver • One or more optional upper-level keyboard filter driver • I8042prt, the function driver PS/2 Mouse The mouse driver stack consists of the following. • Mouclass, the upper-level mouse class filter driver • One or more optional upper-level mouse filter driver • I8042prt, the function driver Kbdclass and Mouclass can support more than one device in two different modes. In the one-to-one mode, each device has an independent device stack. The class driver creates and attaches an independent class DO to each device stack. Each device stack has its own control state and input buffer. The Microsoft Win32 subsystem accesses input from each device through a unique file object. In the grandmaster mode, the class driver operates all the devices in the following way: • The class driver creates both a grandmaster class DO that represents all of the devices and a subordinate class DO for each device. The class driver attaches a subordinate class DO to each device stack. Below the subordinate class DO, the device stack is same as that created in the one-to-one mode. • The grandmaster class DO controls the operation of all the subordinate DOs.
0 Comments
Leave a Reply. |