Ассемблер, дискета и 100 000 Гц. Рассказываем про самую быструю (и самую странную) ОС в мире

Ассемблер, дискета и 100 000 Гц. Рассказываем про самую быструю (и самую странную) ОС в мире

Разработчики обещают меньше слоев, меньше багов и более быстрый интерфейс.

image

Есть операционные системы, которые пытаются быть «как Windows» или «как Linux». А есть MenuetOS, которая с самого начала пошла в другую сторону: минимализм, высокая скорость и… полностью ассемблер. Причем не «частично на асме», а буквально весь проект, включая ядро, написан на 64-битном ассемблере. Разработчики считают, что именно так можно добиться максимально компактного кода и высокой производительности, а заодно сделать приложения менее прожорливыми к ресурсам.

MenuetOS разрабатывается для обычных ПК и не опирается ни на чужие исходники, ни на привычную UNIX-родословную, ни на стандарты POSIX. По задумке это уменьшает количество «прослоек» внутри системы. Авторы проекта утверждают, что именно дополнительные уровни абстракций в классических ОС усложняют программирование и становятся источником ошибок, а значит Menuet должна выигрывать за счет более прямой и простой архитектуры.

Отдельный акцент делается на графике. В MenuetOS графический интерфейс, включая эффекты вроде прозрачности, рассчитывается непосредственно на основном x86-64-процессоре. Такой подход, по словам разработчиков, помогает избежать типичных проблем совместимости, связанных с различиями видеокарт и драйверов.

Система существует в двух ветках. Menuet32, стартовавшая в 2000 году, распространяется под лицензией GPL. Более новая Menuet64, выпущенная в 2005 году, имеет отдельную лицензию проекта. При этом 64-битная версия способна запускать приложения, написанные для 32-битной ветки.

Интересно, что структура приложений формально не «закрыта» только под ассемблер: заголовок исполняемого файла можно сформировать практически на любом языке. Но вся логика разработки и программная модель рассчитаны именно на 32- и 64-битный ассемблер. Авторы проекта подают это как плюс: мол, писать быстро, получается компактно, а сам подход относительно легко освоить.

По возможностям MenuetOS старается выглядеть не игрушкой, а полноценной системой. Заявлены вытесняющая многозадачность и поддержка многопроцессорности, защита в ring-3, многопоточность и очень быстрый планировщик задач с частотой от 1000 Гц и выше, а в отдельных режимах вплоть до 100000 Гц. Отдельно упоминается поддержка «временнО критичных» процессов, которым можно обеспечить непрерывное выполнение на выбранном ядре, и задержки для аудио ниже миллисекунды. Графический интерфейс рассчитан на разрешения до 1920x1080 и 16,7 млн цветов, окна можно делать произвольной формы, с прозрачностью, сменой «скинов» и drag’n drop.

Из прикладных вещей заявлены встроенный IDE-редактор и ассемблер, базовые USB-возможности (клавиатура, мышь, а также классы устройств USB 2.0 вроде накопителей и принтеров, плюс поддержка веб-камер и ТВ/радио), сетевой стек TCP/IP с loopback и Ethernet-драйверами, а также набор утилит и сервисов: почтовый клиент, ftp/http, шахматы, и даже серверы для ftp/mp3/http. Вишенка на торте для любителей ретро-минимализма: система помещается на одну дискету и может загружаться также с CD и USB-накопителей.

FREE
100%
Кибербезопасность · Обучение
УЧИСЬ!
ИЛИ
ВЗЛОМАЮТ
Лучшие ИБ-мероприятия
и вебинары — в одном месте
ПОДПИШИСЬ
T.ME/SECWEBINARS