Атрибуты драйвера
Символьное устройство
Бит | Назначение |
0 | 1 - драйвер обслуживает стандартное устройство ввода; 0 - этот драйвер не обслуживает стандартное устройство ввода |
1 | 1 - драйвер обслуживает стандартное устройство вывода; 0 - драйвер не обслуживает стандартное устройство вывода |
2 | 1 - это драйвер стандартного устройства NUL; 0 - драйвер не обслуживает устройство NUL |
3 | 1 - драйвер обслуживает часы |
4 | Зарезервировано, бит должен быть равен 0 |
5 | Зарезервировано, бит должен быть равен 0 |
6 | 1 - разрешено использование драйвером функций GENERIC IOCTL (для версий DOS, более поздних, чем 3.2); 0 - функции GENERIC IOCTL не поддерживаются |
7-10 | Эти биты зарезервированы и должны быть равны 0 |
11 | 1 - поддерживаются функции открытия/закрытия устройства (OPEN/CLOSE) для символьных устройств; 0 - функции OPEN/CLOSE для символьных устройств не поддерживаются |
12 | Зарезервировано, бит должен быть равен 0 |
13 | 1 - для символьных устройств поддерживается функция вывода до получения состояния занятости устройства; 0 - функция вывода до состояния занятости не поддерживается |
14 | 1 - поддерживаются функции IOCTL; 0 - функции IOCTL не поддерживаются |
15 | 1 - символьное устройство; 0 - блочное устройство |
Блочное устройство
Бит | Назначение |
0 | Зарезервировано, бит должен быть равен 0 |
1 | 1 - драйвер поддерживает 32-битовую адресацию сектора (для версий DOS, начиная с 4.00 и более поздних); если установлен этот бит, поле номера сектора всех запросов является двойным словом, добавляемым в конец заголовка запроса, старое поле номера сектора должно содержать -1); 0 - используется 16-битовая адресация сектора |
2-5 | Эти биты зарезервированы и должны быть равны 0 |
6 | 1 - поддерживаются логические устройства (используется блочными драйверами для управления "виртуальными" флоппи-дисками, создаваемые драйвером DRIVER.SYS
в DOS версии 3.2 и более поздних версиях); 0 - логические устройства для блочных драйверов не поддерживаются; |
7-10 | Эти биты зарезервированы и должны быть равны 0 |
11 | 1 - единица в этом бите означает, что драйвер поддерживает функцию проверки замены носителя данных в устройстве (например, замены дискеты), используется для DOS версий 3.00 и более поздних; 0 - для блочных устройств функция проверки замены носителя данных не поддерживается |
12 | Зарезервировано, бит должен быть равен 0 |
13 | 1 - драйвер не использует стандартное IBM-устройство, и необходимо выдать запрос на построение блока параметров BIOSBIOS
BPB; 0 - используется IBM-устройство |
14 | 1 - поддерживаются функции IOCTL; 0 - функции IOCTL не поддерживаются |
15 | 1 - символьное устройство; 0 - блочное устройство |