Windows
95/98/ME
В первой половине 90-х годов XX столетия практически
всем разработчикам и техническим специалистам было очевидно, что
MS и DR DOS доживают последние дни: они не удовлетворяли запросам
пользователей практически ни по одному из параметров: приложения
требовали больших объемов памяти и перехода к 32-разрядной архитектуре,
пользователям требовались большая надежность, многозадачность, более
развитые сетевые средства. Напротив, преимущества DOS, такие, как
небольшая потребность в памяти, становились все менее и менее критичными.
Основным препятствием на пути перехода пользователей на другие платформы
было требование совместимости с существующими приложениями и драйверами
нестандартных внешних устройств для DOS. Наилучшим образом удовлетворяла
этому требованию IBM OS/2, в виртуальной машине которой можно было
запустить не только практически любое приложение DOS, но и использовать
многие модули ядра DOS, в том числе — загружая в разных виртуальных
машинах разные версии ДОС и разные наборы драйверов. Однако высокие
требования этой системы к ресурсам и ориентированная на корпоративных
пользователей схема лицензирования приводили к тому, что система
не получила большого распространения на массовом рынке. В 1992-1993
гг. Microsoft занялась разработкой системы, которая должна была
заполнить перспективную рыночную нишу "многозадачной ДОС защищенного
режима". Подобно марксизму, разрабатываемая ОС имела три источника
и три составные части.
[an error occurred while processing this directive]
- 1. Windows NT
- 2. DesqView и другие
многозадачные среды для DOS
- 3. Windows 3.x
От
Windows NT новая система получила интерфейс системных вызовов — Win32 API — и
формат загружаемого модуля РЕ (Portable Executable — переносимый исполняемый [модуль]).
У многозадачных сред разработчики новой ОС позаимствовали идею преобразования
DOS в многозадачную среду защищенного режима: эти среды демонстрировали, что помещение
ядра DOS в виртуальный 8086 и окружение его семафорами позволяет относительно
малой кровью получить как многозадачность, так и совместимость. Такая архитектура
была довольно-таки трудоемка в реализации и создавала специфические проблемы (так,
DOS не отдавала управления при обращениях к приводу гибких дисков, поэтому работа
с дискетами из любой сессии приводила к остановке всех остальных сессий), но не
представляла непреодолимых концептуальных сложностей и была в целом работоспособна.
Windows 3.x представляла собой пример системы, реализовавшей интерфейс между пользовательскими
программами, работающими в защищенном режиме, и ядром DOS, исполняющимся в виртуальном
8086. К 1993-1994 гг. на рынке существовало более десятка других продуктов, предоставляющих
аналогичный интерфейс, так называемых расширителей DOS (DOS
Extender), среди которых нельзя не упомянуть PharLap DOS Extender, Rational
DOS/4G и свободно распространяемый на условиях GPL djgpp. С точки зрения разработчиков
новой ОС Windows 3.x представляла наибольший интерес в качестве отправной точки,
потому что, в отличие от остальных расширителей DOS, она предоставляла динамическую
сборку в момент загрузки и реализовывала также событийно-ориентированную архитектуру,
пусть и более примитивную, чем асинхронная очередь сообщений Win32. К тому же,
Windows 3.11 имела собственную дисковую подсис- тему, позволявшую работать с жестким
диском в обход DOS (так называемый 32-битный доступ к диску). Первым получившим
признание результатом работ над новой системой был продукт Win32s — набор DLL
для Windows 3.x, позволявший исполнять загрузочные модули формата РЕ, использовавшие
подмножество Win32 API. После длинной последовательности публичных бета-версий,
многократного переноса сроков и большой шумихи в прессе новая система, получившая
название Windows 95, вышла на рынок в 1995 г. Система с самого начала задумывалась
как переходная, предназначенная для облегчения перевода пользовательской базы
DOS на Windows NT, однако прошло не менее 4—5 лет, прежде чем совместимость с
приложениями DOS перестала быть решающим параметром при выборе ОС для настольного
компьютера. За это время успело выйти несколько версий "переходной"
системы (OSR2, 98, 98SE, Millennium Edition) и даже после выхода ХР Microsoft
еще не готова объявить о прекращении поддержки этой линии ОС.