Что такое формат файла 386?
Файлы .386 - это виртуальные драйверы устройств (VxD) для расширенного режима Windows 386, представленного в Windows/386 2.x в 1988 году. VxD - это бинарный компонент режима ядра, который виртуализирует аппаратное устройство или службу ОС - например, таймер, клавиатуру, видеоадаптер или контроллер диска - так, чтобы несколько одновременно работающих приложений DOS могли считать, что каждое из них имеет эксклюзивный доступ к оборудованию.
Внутренне файл .386 представляет собой заглушку исполняемого файла MZ DOS, за которой следует заголовок Linear Executable (LE). Заголовок LE содержит блок дескриптора VxD, идентифицирующий ID устройства, версию и точки входа для инициализации, виртуализации портов ввода-вывода и обработки прерываний. В Windows/386 2.x использовался более ранний проприетарный формат заголовка W386 до принятия стандарта LE.
VxD .386 работают полностью в Ring 0 (режим ядра) без изоляции памяти. Это делало их мощными, но нестабильными: неисправный драйвер мог привести к краху всей операционной системы. Windows NT с самого начала использовала WDM (Windows Driver Model) с надлежащей изоляцией ядра; Windows 98 SE начала переход, а Windows Me стала последним потребительским выпуском с поддержкой VxD. Windows XP и более поздние версии вообще не могут загружать файлы .386 - подсистема VxD была удалена.
Ту же роль виртуального драйвера устройства также выполняют файлы .vxd (функционально идентичны, другое расширение использовалось для динамических VxD в Windows 95/98). Известные примеры включают VSHARE.386, VFAT.386 и VTDAPI.386. Эти файлы загружаются автоматически ядром Windows при загрузке или по запросу; их нельзя и не следует открывать вручную.
Безопасность и защита
РИСК: MEDIUMЛегитимные файлы .386 являются системными драйверами Windows, безвредными в современных Windows (они не загружаются). Однако вредоносное ПО исторически использовало расширение .386 в Windows 9x/Me для маскировки полезной нагрузки режима ядра - в этих ОС VxD Ring 0 могли скрываться от антивирусов. В Windows XP и более поздних версиях файлы .386 не могут загружаться как VxD и не представляют риска исполнения. Если антивирус помечает файл .386 в современной системе, скорее всего, это историческая сигнатура обнаружения или файл, замаскированный расширением .386.
Детали формата
в двух словах- Файл шрифта Ventura Publisher - Некоторые версии Xerox/Corel Ventura Publisher использовали .386 для загружаемых данных шрифтов, оптимизированных для 386 - встречается редко, до 1995 года.
Программы, открывающие файлы 386
Технические подробности
глубокая спецификация| Кодировка | Бинарный исполняемый файл (заглушка MZ DOS + тело Linear Executable LE) |
| Порядок байтов | Little-endian |
| Заголовок файла | Заголовок MZ (4D 5A) по смещению 0 (заглушка DOS); заголовок LE (4C 45) по смещению, на которое указывает dword по адресу 0x3C |
| Самый ранний вариант формата | Windows/386 2.x (1988): проприетарный заголовок W386, предшествующий стандарту LE |
| Кольцо исполнения | Ring 0 (режим ядра) - VxD работают с полным доступом к оборудованию и без изоляции памяти |
| Типичный размер файла | 2 КБ - 200 КБ |
| Блок дескриптора VxD | Идентифицирует ID устройства, версию и точки входа: инициализация, обработка портов ввода-вывода, виртуализация прерываний |
| Совместимость с ОС | От Windows 2.x (Windows/386) до Windows Me; не загружается в Windows XP или новее |
| Технология-преемник | WDM (Windows Driver Model), представленная в Windows 98 SE / Windows 2000; драйверы используют расширение .sys |
| Динамическая загрузка | Поддерживается начиная с Windows for Workgroups 3.11; более ранние версии использовали только статические VxD |
| Заметные примеры | VSHARE.386, VFAT.386, VTDAPI.386, EMM386.386, WINA20.386 |
| Выпущен | 1988 (Windows/386 2.x) |
| Последняя версия | Used through Windows Me (2000); superseded by WDM in Windows 98 SE / 2000 |
| Спецификация | devblogs.microsoft.com |
Конвертации 386
Вопросы и ответы сообщества
спрошено пользователямиВопросов пока нет - станьте первым, кто спросит о файлах 386.