Classes and Installers

Windows 95 has a large number of subsystems to control various classes of devices. Classes identify logical device types such as display, keyboard, and network. Because each subsystem has a different driver architecture, different user options, and different compatibility constraints, it is impossible to have a single utility support installation of all possible devices. Instead, each class is responsible for providing its own installer.

A single installer can support installation of both the class and individual devices. However, this depends on the class and in some cases separate device installers are used. Typically, the installer is combined with the control panel applet (.CPL) for the given class, although this is not a requirement. Whether the installer is combined with the applet or is a separate dynamic-link library, the Device Manager controls and directs the action of the installer.

The Device Manager, itself a control panel applet, is responsible for displaying dialog boxes to the user to prompt for information about adding and modifying device drivers. It is also responsible for installing any drivers for any devices enumerated by the configuration manager.

The Device Manager relies on the class and device installers to display the appropriate dialog boxes or carry out appropriate installation tasks. Although the Device Manager gives the installer full control of the installation process, in most cases, the installer simply directs the Device Manager to complete the task for it. The installer can insert additional configuration dialogs, hardware detection, and other features into the process as is appropriate for the class.