Device Management Technologies

Applies To: Windows Server 2003, Windows Server 2003 R2, Windows Server 2003 with SP1, Windows Server 2003 with SP2

In this subject

  • Device Management Architecture

  • Device Management Components

  • Device Management Scenarios

  • New Storage Device Drivers in Windows Server 2003

Device management provides a way for Microsoft Windows Server 2003 to uniformly notify all applications and system components of changes that may affect their operation or access to resources.

Applications and system components use and process device messages between the operating system and devices to take advantage of new resources when they become available and to prevent loss of data when existing resources become unavailable. Device messages notify applications of device change events, such as the removal of a hardware device; power messages notify applications of power management events. Applications and device drivers can also define and use custom messages to enable notification of other types of events.

Windows Server 2003 uses the Device Manager snap-in to dynamically track and manage devices and drivers on a system. For example, you can view device status and set device properties through Device Manager. If you request to update a driver, Device Manager calls the Hardware Update wizard.

Device Manager displays all devices installed in the system, as illustrated in the following figure.

Device Manager

Device Manager

The Device Manager display represents the computer's hardware configuration. The Device Manager display is recreated each time the computer is started and whenever a dynamic change to the computer configuration occurs, such as the addition of a new device while the system is running.

Device Manager allows you to do the following:

  • Determine whether the hardware on your computer is working properly

  • Change hardware configuration settings

  • Identify the device drivers that are loaded for each device and obtain information about each device driver

  • Change advanced settings and properties for devices

  • Install updated device drivers

  • Disable, enable, and uninstall devices

  • Roll back to the previous version of a driver

  • Print a summary of the devices that are installed on the computer

  • Change resources, such as interrupt requests (IRQs), assigned to devices

Device Manager can be used to check the hardware status and update device drivers on a computer. Device Manager cannot be used to change resource allocation settings; resources are automatically allocated by the system during hardware setup. In order to manage device drivers through Device Manager, you must be a member of the Administrators group.

Some hardware cannot handle dynamic resource assignments. However, these resource assignments can be assigned through Device Manager.

Device Manager manages devices on a local computer only. On a remote computer, Device Manager works only in read-only mode.

The following table lists some of the major device classes that Device Manager tracks. Each of these classes has a corresponding class GUID value in the Windows registry.

Device Manager Class

Class Description

Battery Devices

Batteries and UPS devices.

Biometeric Device

Biometric-based personal identification devices.

Bluetooth Devices

Bluetooth devices.

CD-ROM Drives

CD-ROM drives, including SCSI CD-ROM drives.

Disk Drives

Hard disk drives.

Display Adapters

Video adapters installed on the system.

DVD/CD-ROM drives

CD-ROM drives, including SCSI CD-ROM drives, and DVD drives.

Floppy Disk Controllers

Floppy disk drive controllers.

Floppy Disk Drives

Floppy disk drives.

Hard Disk Controllers

Hard disk controllers, including ATA/ATAPI controllers (not SCSI or RAID disk controllers, which have their own Class).

Human Interface Devices

Interactive input devices not operated by the system-supplied HID class driver, which includes USB devices that comply with USB HID Standard and non-USB devices that use a HID minidriver.

Imaging Device

Still-image-capture devices, digital cameras, and scanners.

IrDA Devices

Infrared devices, including Serial-IR and Fast-IR NDIS miniports. The Network Adapter class displays other NDIS NIC miniports.

Keyboards

Keyboard device.

Media Changers

SCSI media changer devices.

Memory Technology Driver

Memory devices, such as flash memory cards.

Monitors

Each of the monitors. Specifies the features of a particular monitor to be stored in the registry for use by drivers of video adapters.

Mouse

Mouse devices and other pointing devices, such as trackballs.

Multifunction Devices

Combination cards, such as a PCMCIA modem and network card adapter.

Multimedia

Audio and DVD multimedia devices, joystick ports, and full-motion video capture devices.

Network Adapters

Network adapters, including NDIS NIC miniport drivers, excluding Fast-IR miniport drivers, NDIS intermediate drivers (of virtual adapters), and CoNDIS MCM miniport drivers.

PCMCIA Adapters

PCMCIA and CardBus host controllers, but not PCMCIA or CardBus peripherals.

Ports (COM & LPT)

Serial and parallel ports.

Printers

All printers.

Processors

Processor types.

SCSI and RAID controllers

SCSI HBAs (Host Bus Adapters) and disk-array controllers.

Smart Card Readers

Smart card readers.

Storage Volumes

Storage volumes defined by the system-supplied logical volume manager and class drivers that create device objects to represent storage volumes, such as the system disk class driver.

System Devices

HALs, system buses, system bridges, the system ACPI driver, and the system volume manager driver.

USB

USB host controllers and USB hubs, but not USB peripherals.

Windows CE USB ActiveSync Devices

Windows CE ActiveSync devices.

For a complete list of the system-supplied device setup classes, along with their class GUID entries in the registry, see "Microsoft Windows Driver Development Kits" on the Microsoft Web site.

Device Management Architecture

The following diagram shows an overview of how device drivers and device management components are organized on a system.

Device Management Architecture

Device Management Architecture

Device Management Components

The following table describes the components used for managing devices.

Device Management Architecture Components

Component Description

Hardware Abstraction Layer (HAL)

A component based on the Windows NT operating system that provides platform-specific support for the Windows NT kernel, I/O Manager, kernel-mode debuggers, and the lowest-level device drivers. The HAL exports routines that abstract platform-specific hardware details about caches, I/O buses, interrupts, and so forth. The HAL provides an interface between the platform's hardware and the system software. For example, the HAL implements a routine to map each device driver's bus-relative device interrupt vector to a system-assigned vector with a corresponding platform-specific hardware priority (DIRQL). The HAL also provides several routines that provide DMA transfer support.

Device Drivers

Files used to communicate between devices and Windows Server 2003. Drivers are structured under the Windows Device Model (WDM). The three WDM driver types are bus driver, function driver, and filter driver.

I/O Manager

Subsystem that controls and interacts with all devices on the system and provides routines that drivers can call to have the I/O Manager insert IRPs into the associated device queue.

Plug and Play Manager

Component responsible for determining the hardware resources requested by each device (for example, input/output ports [I/O], interrupt requests [IRQs], direct memory access [DMA] channels, and memory locations) and assigning hardware resources appropriately. Plug and Play Manager reconfigures resource assignments when necessary, such as when a new device added to the system requires resources already in use.

Power Manager

Component responsible for managing power usage for the system. Power Manager administers the system-wide power policy and tracks the path of power IRPs through the system.

Device Manager

Interface displaying the computer's hardware configuration information. The Device Manager display is recreated each time the computer is started or whenever a dynamic change to the computer configuration occurs, such as addition of a new device while the system is running. Device Manager is used to enable or disable devices, troubleshoot devices, update drivers, use driver rollback, and change resources such as interrupt requests (IRQs) assigned to devices.

Device Management Scenarios

This section contains descriptions of some common scenarios for device management.

Viewing system devices

Device Manager provides a quick view of a system and all the hardware devices installed. Device Manager also provides information about the version of the driver installed, the provider, and digital signature, if any.

Troubleshooting driver problems

Device Manager automatically flags the status of a device so that you can readily detect where hardware problems or conflicts occur.

Updating device drivers

Device Manager allows you to manage the devices on your system by allowing you to check a specific location, such as Windows Update or a CD, for updated device drivers. Updated device drivers are then automatically installed and resources reallocated.

New Storage Device Drivers in Windows Server 2003

New and updated storage device drivers are available for Windows Server 2003, including drivers for iSCSI and Multipath I/O (MPIO) technologies. Windows Server 2003 also includes a new port driver model, Storport.

Note

  • The Microsoft Storage Server 2003 Web site has the most recent information about storage devices and drivers, as well as storage architecture.

Storage architecture consists of a series of layered drivers, as shown in the following figure. When a storage device is added, each layer is responsible for ensuring that the disk is functional.

Windows Storage Stacks

Windows Storage Stacks

The following table describes the components of the previous diagram.

Windows Storage Stacks Components

Component Description

I/O Subsystem

Sends I/O requests to the file system.

File System

Structure of a disk, either FAT or NTFS. File systems access and manage all data on the disk, including information about the structure of the disk itself.

Volume Snapshot

Manages software snapshots.

Volume Manager

Presents volumes to users; supports basic and dynamic disks.

Partition Manager

Manages disk partitions.

Class

Manages specific devices types, such as disks and tapes.

Port

Manages specific transports, such as SCSIport or Storport.

Miniport

Vendor-supplied functionality linked to a specific port driver. Manages hardware-specific details.

Disk Subsystem

Disk processes such as read/write.

Device Stack

Stack layers that manage storage devices.

Driver Stack

Chain of drivers that support the operations of a device.

Storport

The Storport driver is new to Windows Server 2003. Storport implements an architecture designed for better performance for RAID systems and in Storage Area Network (SAN) environments. Storport delivers higher I/O throughput, enhanced manageability, and an improved miniport interface. Storport better utilizes faster adapters through the use of reduced Delay Procedure Call (DPC) and improved queue management.

iSCSI

Internet Small Computer System Interface (iSCSI) is an alternative to Fibre Channel protocols. iSCSI is used to transfer data storage over long distances, making it a key contributor to the advancement and growth of storage area networks (SANs). iSCSI is also used to transmit data over local area networks (LANs), wide area networks (WANs), or the Internet.

Microsoft released the Microsoft iSCSI Software Initiator in June 2003 for Windows 2000, Windows XP, and Windows Server 2003. The Microsoft iSCSI Software Initiator is not included with Windows Server 2003, but you can download the driver from the Microsoft Download site. Customers should ensure that the hardware included in their iSCSI solution has passed the Designed for Windows Logo Program qualification tests.

Multipath I/O

Microsoft Multipath I/O architecture allows hardware manufacturers to develop highly available storage devices that can be added easily to a computer running Windows 2000 or Windows Server 2003. The Multipath I/O (MPIO) DDK consists of three standard drivers plus a fourth, device-specific driver that a storage vendor will use to create a Microsoft MPIO solution that works with the specific storage array it supports.

Microsoft MPIO enables the use of multiple physical paths from a server to a storage device. A physical path includes adapters, cables, and switches that connect the storage device to the server. In the event that one of the components in a path fails, all subsequent I/O is routed over an alternate path, providing applications uninterrupted access to the data on the storage device. In addition, Microsoft MPIO can be used to balance I/O operations over these paths using methods and algorithms defined by the storage vendor.