MenuetOS
В эту статью нужно добавить как можно больше программ на fasm.
Также сюда можно добавить интересные факты, картинки и прочие кошерные вещи.
MenuetOS (неофициально — «МинетОС») — операционная система, написанная на чистом ассемблере неким задротом из Финляндии еще в 2000 году.
Собственно, сабж
Несмотря на то, что весь дистрибутив MenuetOS помещался на одной дискете, это была полноценная, но однопользовательская и без защиты, опенсорсная ось со вполне приличным графическим интерфейсом, да еще и не похожая по архитектуре ни на DOS, ни на Windows, ни даже на Unix-подобные системы. Поэтому сразу же после своей презентации (5 сентября 2001 года) она вызвала немалый интерес на программистских форумах.
Где-то в 2003 году автору оси надоел его проект и он переключился на 64-битную версию MenuetOS (уже не опенсорсную). С течением времени у проекта сменилось еще два руководителя, и, вопреки расхожему мнению, что разработку бросили практически все, на сайте регулярно появляются свежие билды. Крайняя версия — Menuet64 1.35.20, вышедшая 3 июля 2020 года. Однако Menuet32 всё-таки не закопан: свежайший билд - 0.86b - выпущен 2 сентября 2019 года.
Тем не менее существует и активно развивается отечественный форк MenuetOS под названием KolibriOS.
В чем эпичность?
Menuet/Kolibri вполне можно считать таким же шедевром программирования на ассемблере, как и многие демки. Впрочем, и толка от неё не больше, чем от демки — для какого-либо практического применения она не годится, а вот в учебных целях — вполне. Кстати, были предложения использовать KolibriOS в школах — из-за её простоты, нетребовательности к ресурсам (сами знаете, какие нищебродские компы стоят в большинстве школ) и «игрушечного» интерфейса, который должен прийтись по нраву школьникам.
Алсо, есть предложения использовать Menuet/Kolibri на разных терминальных устройствах. Идея интересная, но для этого нужна нормальная поддержка сети, которая в Kolibri до сих пор в зачаточном состоянии. Однако, с некоторых пор в ней даже появился текстовый браузер.
На настоящий момент в Kolibri впилена поддержка FAT12/16/32, NTFS, EXT2/3/4, XFS, CD/DVD, вывода звука, а с недавнего времени — видеокарт ATI и Intel. Кроме того, кто-то не поленился даже портировать на нее Doom, Quake, DOSBox, Python, Cairo, MESA и ffmpeg. Практически весь софт под нее пишется на ассемблере (а именно на FASM). По мнению многих — несмотря на наличие порта GCC, писать под асм-систему на C некошерно. Мнение это несколько фимозное, потому что логика подсказывает, что ОС — это тот код, который работает повсеместно, и его имеет смысл оптимизировать до упора (а не как некоторые). Все прикладные программы немедленно получат выигрыш от этого. А выдрачивать так каждый текстовый редактор — напрасная трата сил и гвоздь в гроб системы же.
Кроме того, под Menuet (под Kolibri не работает) даже есть вирус! И называется он Menuet.Oxymoron. Идея написать сей вирус пришла к расово не кошерному вирмейкеру SPTH.
Критика
Справедливости ради стоит отметить, что авторы Menuet не особо-то и осилили то, на что замахнулись. Ассемблер как инструмент еще не гарантирует неземной крутости результата. Совершенно кривокосая работа даже со стандартнейшим железом, сомнительный выбор API, странная оптимизация размера в дикий ущерб скорости делают M/K несколько… хммм… безблагодатной.
Отечественный продакшен
Наряду с разработчиками, проект был замечен ЕРЖ, которые на расово-быдлокодерском сайте создали доставляющий проект со вкусной для быдлокодеров приманкой в $5000. Конечно же, количество ставок к проекту чуть менее, чем никаких: быдлокодеры ниасиляют, а нормальные люди за такое не возьмутся.
Сделать под КолибриОС:
- Работу с иконками на рабочем столе
- Отловить и исправить баг в драйвере
коврика длямыши- Доделать компиляторы C/Pascal/Basic, которые разрабатываются официальным сообществом. В общем довести до ума.
- Доделать libGUI (исправить ошибки и добавить XP стиль)
- Создать на основе libGUI + C оболочку для создания программ
- Центр справки и поддержки
- Объединить различные настройки ОС и системных программ в единую оболочку (подобие Панели управления)
- Доделать эмулятор Win32 который выложен на официальном форуме Колибри
Оплата - 50% после выкладки скринов по работам № 3, 5, 6,7.
Сроки - до 1 сентября.
Наличие опыта программирования под KOS - обязательно. Разработка всех пунктов кроме №2 может вестись на любом языке (Ассемблер, С, С++, Pascal, Basic). №2 - обязательно на ассемблере.
Сроки сдачи какбэ намекают на школьное использование…а сам список схож с маскировкой под XP.
Ссылки
- MenuetOS
- KolibriOS
- KolibriN максимальная сборка
- История отделения Kolibri от Menuet
- Статья на хабре про MenuetOS