Дмитрий Радищев (dibr) wrote,
Дмитрий Радищев
dibr

венда

Прошёл тут из интереса квест "поставь Win98 на USB флэшку на современный комп". Запишу тезисно, вдруг кому интересно.

Инсталлятор тупо виснет, так и не понял почему (память более полугига?). Нашёл архив "уже установленной" Win98, вместо установки перекопировал его на флэшку, начал развлекаться.
"Некогда объяснять", но в system.ini, в раздел [386Enh] надо дописать "MaxPhysPage=10000".
А ещё надо переименовать в windows\inf все usb*.*, чтобы винда их не нашла. В противном случае винда находит контроллер USB, пытается ставить драйвер, и выбивает у себя из под ног флэшку, с которой запущена. Кнопка "отмена" в окне "драйвера-то ставить будем?" почему-то не помогает, а вот спрятать от системы драйвера USB - помогло.
После этого система до-олго ищет и ставит (если находит) драйвера всего на свете, пару раз просит перезагрузиться, и после этого кое-как работает. В VGA режиме (понятно почему) и без поддержки USB, но с USB-флэшки, с USB клавой и USB-мышкой (эмуляция в BIOS, как я понимаю).

А, да. Винду ставил, чтобы проверить, понимает ли она короткое нажатие кнопки "выкл" на корпусе. Ответ: понимает! Выводит картинку "завершение работы системы", и только потом гасит питание.

- - -
Отдельно впечатляет вот что. Многие когда-то ругали винду ветки 3.x/9x, мол кривая и глючная. Но многие ли понимали, что целью создания винды ветки 9x было не то, чтобы было "прямо и круто" (для этого была ветка NT), а чтобы "даже в максимально кривой конфигурации, с кривым софтом написанным кривыми программистами, кривым железом, кривыми драйверами и кривой их связкой, настроенной кривыми руками пользователя, винда хоть как-то, пусть криво и глючно, но работала". А, да - и чтобы на 16Мб (МЕГАбайтах, не ГИГАбайтах) она "летала", а на 4Мб - загружалась. Потому что кривой велосипед из костылей, который едет - все-таки лучше прямого автомобиля, который не едет (и уже неважно, насколько именно прямо он не едет, и кто именно в этом виноват).

Вот сами посмотрите. Аж целая операционка, с защищённым режимом, с поддержкой win32, win16 и DOS задач, запускается из-под DOS, с устройства, к которому фактически не имеет доступа (работает через эмуляцию в BIOS), и использует устройства ввода, к которым тоже не имеет доступ. При этом она работает, используя для работы с диском совершенно чужой для неё код BIOS (скорее всего вообще 16-битный), и не "убивая" эмуляцию тем же BIOSом мыши с клавой! Современные "прямые" ОС в подобной ситуации (загрузка с штатно не поддерживаемого носителя) молча отодвинули бы BIOS в сторонку, тупо попытались бы сами работать со всем, что нашли - ну, и бодро упали бы с Inaccessible boot device, даже не дойдя до осознания того факта, что клава и мышь тоже остались "на той стороне". Впрочем, после переноса копированием файлов на другой компьютер (как сделал я) современные ОС вообще склонны умирать в корчах, а не пытаться выкарабкаться...
...А в старых блогозаписях "The Old New Thing" (не ссылаюсь потому, что там их больно много, этих записей, а интересных - мало, и найти их тяжело), есть множество примеров, какие конструкции из костылей и подпорок приходилось городить в те времена программистам MS, чтобы винда работала в тех (кривых) условиях, которые - далеко не всегда по вине MS - тогда имели место быть.
Subscribe
  • Post a new comment

    Error

    default userpic

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 25 comments