Что такое формат файла DEV?
Расширение .dev имеет несколько различных применений. Его наиболее исторически значимая роль - бинарный файл драйвера устройства MS-DOS реального режима, загружаемый при загрузке системы с помощью директивы DEVICE= или DEVICEHIGH= в файле CONFIG.SYS.
В этом контексте файл .dev представляет собой исполняемый бинарный файл, первые 22 байта которого образуют заголовок драйвера устройства DOS: указатель на следующий драйвер (устанавливается в 0xFFFF:0xFFFF для последнего драйвера в цепочке), слово атрибутов, кодирующее тип и возможности устройства, смещения подпрограмм стратегии и прерывания, а также 8-символьное имя устройства. Тело содержит код x86 реального режима, реализующий подпрограммы Strategy и Interrupt, которые ядро DOS вызывает для взаимодействия с оборудованием.
Этот формат появился в MS-DOS 2.0 (1983), где были представлены устанавливаемые драйверы устройств. Хотя драйверы DOS чаще использовали расширение .sys, некоторые производители оборудования - особенно производители SCSI-контроллеров и звуковых карт - использовали .dev. Формат устарел с выходом Windows NT, которая заменила драйверы реального режима драйверами режима ядра .sys и драйверами WDM .drv.
Расширение .dev также идентифицирует два несвязанных формата: Embarcadero Dev-C++ использует его для файлов проектов IDE C/C++, хранящихся в виде текстовых данных INI; Parallels Desktop (macOS) использует .dev для файлов дескрипторов устройств виртуальных машин. Эти форматы объединяет только расширение, они не имеют отношения к драйверам DOS.
Безопасность и защита
РИСК: MEDIUMПодлинные драйверы DOS .dev содержат исполняемый машинный код x86 реального режима. В современных Windows они не могут запускаться автоматически (отсутствует механизм CONFIG.SYS). Однако вредоносное ПО теоретически может использовать это расширение для маскировки. Файлы проектов Dev-C++ .dev являются текстовыми и безопасны для открытия. Не пытайтесь запускать неизвестные файлы .dev.
Детали формата
в двух словах- Файл проекта Dev-C++ - Embarcadero Dev-C++ (IDE C/C++ для Windows) использует .dev для файлов проектов - формат XML/текст, не связан с драйверами.
- Дескриптор устройства Parallels Desktop - Parallels Desktop для macOS использует .dev внутри системы для конфигурации виртуальных аппаратных устройств.
Программы, открывающие файлы DEV
Технические подробности
глубокая спецификация| Основное использование | Бинарный файл устанавливаемого драйвера устройства MS-DOS (загружается через `DEVICE=` в `CONFIG.SYS` при загрузке) |
| Кодировка | Бинарная - исполняемый код x86 реального режима |
| Порядок байтов | Little-endian (x86) |
| Заголовок драйвера | 22-байтовая структура: указатель на следующий драйвер (4 байта, `0xFFFF:0xFFFF` для последнего драйвера), слово атрибутов (2 байта), смещения подпрограмм стратегии и прерывания (по 2 байта каждое), 8-символьное имя устройства |
| Маркер конца цепочки | `0xFFFF:0xFFFF` в поле указателя на следующий драйвер |
| Среда выполнения | Реальный режим x86 - MS-DOS, Windows 3.x, Windows 95/98/ME (только в режиме DOS) |
| Директива загрузки | `DEVICE=` или `DEVICEHIGH=` в `CONFIG.SYS` |
| Типичный размер файла | 1 КБ - 64 КБ (драйверы эпохи DOS компактны) |
| Заменен на | Драйверы режима ядра `.sys` (Windows NT/XP+) и драйверы WDM `.drv` |
| Альтернативное использование 1 | Файл проекта IDE Dev-C++ (Embarcadero Dev-C++): текстовый формат INI, не связан с драйверами DOS |
| Альтернативное использование 2 | Parallels Desktop (macOS): файл дескриптора устройства виртуальной машины, не связан с драйверами DOS |
| Выпущен | MS-DOS 2.0, 1983 (loadable device drivers via CONFIG.SYS) |
| Последняя версия | N/A - legacy DOS-era format; superseded by .sys/.drv in Windows |
Конвертации DEV
Вопросы и ответы сообщества
спрошено пользователямиВопросов пока нет - станьте первым, кто спросит о файлах DEV.