Интерес к ретро-вычислениям продолжает расти, и существуют сотни тысяч любительских программных проектов, ориентированных на машины прошлого века. Однако лишь немногие из них представляют собой полнофункциональные 32-битные операционные системы с графическим интерфейсом, которые умещаются на одну дискету и при этом оснащены некоторыми современными удобствами. Встречайте грядущую HamsterOS, выпуск которой запланирован на ноябрь.

Старый персональный компьютер эпохи 386 с монитором и клавиатуройИсточник изображения — tomshardware.com

HamsterOS, судя по всему, предназначена для использования на ПК эпохи 386/486 вместе с DOS-программами. После загрузки с дискеты система предоставляет пользовательский интерфейс с большинством распространённых утилит: блокнот, просмотрщик изображений, калькулятор, поиск файлов, значки дисков и менеджер окон. Файловый браузер поддерживает до пяти окон одновременно и отображает иконки в зависимости от типа файла.

реклама кормит Уточку 🦆

Ключевая особенность HamsterOS — встроенная в ядро среда VM86 для DOS, а также запасная система FreeDOS для программ, которые могут в ней работать некорректно. Среди других важных технических аспектов — поддержка FAT 12/16/32 с верификацией чтения, выделенные утилиты форматирования и работы с дисками, менеджер разделов и даже диагностические инструменты SCSI. По умолчанию ОС использует 16-цветное разрешение VGA, однако есть возможность включить 256 цветов в качестве диагностического режима. Также предусмотрена удобная функция аварийного переключения на VGA в качестве безопасного режима после трёх неудачных сбоев.

Графический интерфейс операционной системы HamsterOS на экранеИсточник изображения — tomshardware.com

Компания Mean Hamster, разрабатывающая HamsterOS, не публиковала официальных заявлений о миссии проекта, но, судя по набору функций и интеграции с утилитой управления образами дискет HamsterWeazle (для использования с приводами GreaseWeazle), операционная система представляет собой более практичный способ управления машинами той эпохи и/или работы на них.

реклама кормит Уточку 🦆

Список поддерживаемого оборудования соответствует ожиданиям для машин 1980-х и 1990-х годов: ATA IDE и CD-ROM, дисководы ISA, последовательные мыши и мыши PS/2 (с поддержкой колёсика). Единственная поддерживаемая звуковая карта — Sound Blaster 16, однако загружаемые драйверы должны позволить энтузиастам расширить этот список; кроме того, встроенная поддержка FreeDOS, вероятно, даёт возможность использовать практически любое оборудование в любом случае.

Архитектура многозадачности является кооперативной, что означает несколько устаревший подход: каждая программа сама отвечает за регулярную передачу управления обратно ОС. Это отличается от современной вытесняющей многозадачности и на первый взгляд уступает ей, но должно обеспечить более высокую общую отзывчивость при работе с медленными дисками, меньшее потребление RAM и более широкую совместимость с DOS-приложениями. Для обеспечения плавной работы HamsterOS включает обнаружение зависаний ввода-вывода, если система замирает более чем на 8 секунд. Впрочем, HamsterOS не ограничивается запуском DOS-программ — у неё есть собственный формат приложений.

реклама кормит Уточку 🦆

Чтобы оценить масштаб инженерной задачи, достаточно вспомнить арифметику: 1,44 МБ — это меньше, чем занимает одна фотография с современного смартфона. В этот объём разработчикам нужно уложить ядро, драйверы, оконную подсистему и набор утилит. Для сравнения, установочный образ современной настольной ОС весит несколько гигабайт — то есть примерно в три тысячи раз больше.

Компания Mean Hamster прямо заявляет, что «HamsterOS давно прошла стадию «можно ли загрузиться»» и что практически все перечисленные функции уже реализованы. Компания сообщает, что сейчас сосредоточена на улучшении стабильности, производительности и исправлении ошибок. ОС позиционируется как «продукт», поэтому, скорее всего, она будет коммерческой и закрытой, в отличие от большинства подобных проектов. Однако хороший инструмент всегда стоит своих денег.

Проекты такого рода интересны не только ностальгией. Компактные системы с предсказуемым поведением и минимальными требованиями к памяти востребованы во встраиваемой технике и промышленных контроллерах, где старые x86-платы продолжают работать десятилетиями. А для российских энтузиастов ретрокомпьютинга у HamsterOS есть дополнительный плюс: машины эпохи 386 и 486 в регионе сохранились в изрядном количестве, и загрузка с дискеты не требует ни сети, ни современных накопителей.