Классы стандартных устройств Windows
   
Все современные компьютерные устройства имеют уникальные аппаратные идентификаторы ( PnP ID или просто ID ), в которых указываются производитель ( Vendor ID) ,
тип и класс устройства (Device ID). Идентификатор устройства может быть считан программно, и является исходной информацией для привязки соответствующего драйвера к
данному устройству. Другими словами, PnP-ID – это код, который считывается средствами операционной системы (ОС) и используется для загрузки соответствующего драйвера. Если ОС не распознает идентификатор, или загрузка драйвера невозможна (нет нужных файлов, драйвер отключен или неверно задан параметр Start, определяющий тип его запуска), то использование данного устройства невозможно. А в случае, когда выполняется загрузка Windows, и на начальном этапе загрузки драйверов (с параметром Start = 0) возникает описанная выше ситуация c невозможностью использования драйвера дискового контроллера, то загрузка завершается критической ошибкой с кодом 0x0000007B Inaccessible Boot Device (Stop 7B). Данная ошибка довольно часто возникала в устаревших ОС Windows (XP-7) при замене материнских плат, когда идентификатор нового дискового контроллера не распознавался системой и загрузка нужного драйвера была невозможна. Однако, подобная ситуация не может быть полностью исключена и на современных ОС Windows 10-11.
Идентификатор устройства можно посмотреть в диспетчере устройств, выбрав ”Свойства” - ”Сведения” - ”ИД оборудования”. Например, для стандартного дискового контроллера AHCI :
PCI\VEN_8086&DEV_8C02&SUBSYS 78211462&REV_05
Этот идентификатор относится к устройству на шине PCI, производства Intel (VEN_8086), которое относится к контроллерам жестких дисков (DEV_8C02).
Прочие данные идентификатора (SUBSYS_78211462…) могут описывать некоторые особенности устройства, которые, например, могут учитываться драйверами при оптимизации его использования (например, версия прошивки).
При установке драйвера устройства используется специальные INF-файлы, в которых
содержится информация об идентификаторе, файлах драйвера и классе устройства.
; Copyright (c) Microsoft Corporation. All rights reserved.
[Version]
Signature="$WINDOWS NT$"
Class=hdc
ClassGuid = {4D36E96A - E325 - 11CE - BFC1 - 08002BE10318}
Provider=%MS%
DriverVer=06/21/2006, 6.1.7601.17514
[SourceDisksNames]
3426=windows cd
[SourceDisksFiles]
msahci.sys = 3426
intelide.sys = 3426
. . .
. . .
[Manufacturer]
%MS-Drivers%= MS_HDC, NTamd64
%IODATA%= IODATA_HDC, NTamd64
. . .
. . .
[INTEL_HDC.NTamd64]
%PCI\VEN_8086&DEV_1222. DeviceDesc%= intelide_Inst, PCI\ VEN_8086&DEV_1222 ;Intel PIIX
%PCI\VEN_8086&DEV_1230. DeviceDesc%= intelide_Inst, PCI\ VEN_8086&DEV_1230 ;Intel PIIX
%PCI\VEN_8086&DEV_7010. DeviceDesc%= intelide_Inst, PCI\ VEN_8086&DEV_7010 ;Intel PIIX3
. . .
. . .
Символ точки с запятой (;), в inf-файлах используется в качестве признака начала поля комментария.
Строка символов, заключенная в квадратные скобки указывает на секцию inf-файла, которая может содержать один или несколько параметров. Как минимум,
в inf-файлах присутствуют параметры, определяющие операционную систему, для установки в которую предназначен драйвер, класс устройств, который
должен обслуживать данный драйвер, имена файлов драйвера и аппаратные идентификаторы устройств (ИД оборудования), которые обслуживаются данным драйвером.
В представленном выше примере, приведены фрагменты inf-файла для стандартного дискового SATA контроллера, который может обслуживать несколько десятков устройств разных производителей,
объединенных в класс контроллеров жестких дисков ( Class=hdc ) с глобальным уникальным идентификатором ClassGuid={4D36E96A- E325-11CE-BFC1- 08002BE10318}.
Каждое устройство в среде операционных систем семейства Windows принадлежит к какому-либо классу – контроллеров жестких дисков, видеоадаптеров, сетевых карт и т.п. Каждому классу соответствует
глобальный уникальный идентификатор - Globally Unique Identifier (GUID). Обозначается GUID в виде наборов шестнадцатеричных цифр,
разделяемых дефисами для удобства записи, и заключенными в фигурные скобки.
Перечень GUID классов стандартных устройств Windows
| Class |
ClassGUID |
Описание устройства |
| CDROM |
4D36E965 - E325 - 11CE - BFC1 -08002BE10318 |
CD/DVD/Blu-ray drives |
| DiskDrive |
4D36E967 - E325 - 11CE - BFC1 - 08002BE10318 |
Hard drives |
| Display |
4D36E968 - E325 - 11CE - BFC1 - 08002BE10318 |
Video adapters |
| FDC |
4D36E969 - E325 - 11CE - BFC1 - 08002BE10318 |
Floppy controllers |
| FloppyDisk |
4D36E980 - E325 - 11CE - BFC1 - 08002BE10318 |
Floppy drives |
| HDC |
4D36E96A - E325 - 11CE - BFC1 - 08002BE10318 |
Hard drive controllers |
| HIDClass |
745A17A0 - 74D3 - 11D0 - B6FE - 00A0C90F57DA |
Some USB devices |
| 1394 |
6BDD1FC1 - 810F - 11D0 - BEC7 - 08002BE2092F |
IEEE 1394 host controller |
| Image |
6BDD1FC6 - 810F - 11D0 - BEC7 - 08002BE2092F |
Cameras and scanners |
| Keyboard |
4D36E96B - E325 - 11CE - BFC1 - 08002BE10318 |
Keyboards |
| Modem |
4D36E96D - E325 - 11CE - BFC1 - 08002BE10318 |
Modems |
| Mouse |
4D36E96F - E325 - 11CE - BFC1 - 08002BE10318 |
Mice and pointing devices |
| Media |
4D36E96C - E325 - 11CE - BFC1 - 08002BE10318 |
Audio and video devices |
| Net |
4D36E972 - E325 - 11CE - BFC1 - 08002BE10318 |
Network adapters |
| Ports |
4D36E978 - E325 - 11CE - BFC1 - 08002BE10318 |
Serial and parallel ports |
| SCSIAdapter |
4D36E97B - E325 - 11CE - BFC1 - 08002BE10318 |
SCSI and RAID controllers |
| System |
4D36E97D - E325 - 11CE - BFC1 - 08002BE10318 |
System buses, bridges, etc. |
| USB |
36FC9E60 - C465 - 11CF - 8056 - 444553540000 |
USB host controllers and hubs |
Существующий в конкретной операционной системе, набор драйверов, определяется содержимым
каталога C:\Windows\ System32\ DriverStore\ FileRepository\. Так, например, файлы необходимые для установки стандартного дискового контроллера Microsoft,
хранятся в папке, имя которой начинается с mshdc.inf_. Примерный список файлов для Windows 7:
aliide.sys
amdide.sys
atapi.sys
ataport.sys
cmdide.sys
intelide.sys
msahci.sys
mshdc.inf
mshdc.PNF
pciide.sys
pciidex.sys
viaide.sys
Примерный список файлов для Windows 8-11:
atapi.sys
ataport.sys
intelide.sys
mshdc.inf
pciide.sys
pciidex.sys
storahci.sys
Стандартный контроллер SATA от Microsoft в Windows 8-10 использует драйвер storahci.sys, в Windows 7 - msahci.sys.
Полный набор INF-файлов, существующих в операционной системе Windows, хранится в каталоге C:\Windows\inf\.
В начало страницы     |    
На главную страницу сайта