Безумие и отвага

Posted: 2019-07-03 in IT, Software
Метки:

Сегодня я хотел бы познакомить читателей с таким явлением, как экзотические операционки, разработанные крайне малыми силами.

Я не буду говорить об Apple, MS, гигантских семействах Linux и даже не буду упоминать про всякие *BSD, SGI, Plan9 и прочем — это либо крупные, сильные сообщества/организации с длинной историей развития, либо довольно целостные разработки с явно очерченной целью и необычными, но тщательно проработанными ключевыми фичами, решающими определенные редкие задачи, и к которым приложили руки сотни программистов. Статья не про них.

Как вы уже поняли, речь пойдет о разработках, само начало которых сродни подвигу безумца. Можно очень по-разному относиться к подобному, но уверенности и смелости авторам этих проектов не занимать.

Kolibri.
Безумный по авантюрности проект — написать ядро операционки и основной софт на ассемблере. Начиналась она силами одного (!) человека, сейчас там уже целое сообщество, но оно довольно небольшое, буквально 30 человек. Это для примера, что могут сделать 30 человек на чистом энтузиазме ради изучения программирования. Из всей этой статьи колибри — самый полноценный, законченный, рабочий проект.

https://kolibrios.org/ru/index

Она весьма полезна при изучении принципов осеписательства — легкая, достаточно простая, с очень малым количеством лишнего кода. Не знаю, использует ли её кто в качестве рабочей системы для чего-либо (пусть даже в виртуалке), но проект этот достоин восхищения, и говорит нам, что мгновенный запуск программ в ту же секунду в 2019 году таки возможен даже без применения NVMe-SSD и топовых CPU.
По сравнению с другими ОС из статьи колибри — идеально написанный, прекрасный стабильный софт. Остальные участники будут гораздо, гораздо жгучее.

TempleOS
Это не имеющий аналогов пример того, что у поехавших рассудком программистов даже шизофрения протекает крайне глючно и нетипично.
Жил-был один программист, писал себе код, всё было хорошо. Но потом, по обрывочным слухам, он то ли пытался устроиться кодить в военное ведомство, отчего он стал подозревать слежку за собой, то ли вдохнул где-то что-то сильно религиозно дурманящее.
Вообщем, оный персонаж, а звали его Терри, начал в одиночку(!) писать свою крайне необычную операционку, решив её сделать «виртуальным храмом Господа Нашего». Ну а чтобы силы сотонинские никак не вмешались в его священный код, сперва был разработан свой диалект языка Си — так называемый HolyC. И вот на этом «Холи Си» Терри начал ваять свой убер-софтвер.

Но шиза не была бы шизой, если бы не требовала от Терри делиться своими божественными наработками с внешним миром, причем позиционируя свой убер-продукт то ли как виртуальный-телепорт-в-рай, то ли храм-Господа-в-матрице, то ли ещё как что-нибудь подобное. Ожидаемо, что привычные к куда более человеческим интерфейсам пользователи, сильно прифигев от графики в 640*480 на 16 цветах, своей местечковой файловой системы, а также отсутствия сети, начали нещадно троллить несчастного. Общение с едкими и острословящими форумными пользователями явно не пошло на пользу психическому здоровью Терри.

Любой другой пациент скорее всего давно бы насовершал куда более опасных глупостей и давно бы лежал в дурке. Но то ли этот пациент был не столь опасен, то ли медицинские услуги оказались неподъемны по цене (в США есть очень, просто нереально крутая медицина, но если вы не Рокфеллер, Гейтс или хотя бы директор филиала крупного банка — многие её чудеса могут оказаться вам внезапно недоступны), в итоге он продолжил писать свой продукт.

Но поскольку собрать сообщество вокруг себя ему не удалось, то весь софт под свою ОС пришлось писать самостоятельно, своими руками. Отсюда отсутствие многих привычных и нужных вещей (сети нет, от слова совсем), кошмарный вырвиглазный мигающий интерфейс, способный отправить эпилептиков (и даже не-эпилептиков) в припадок, диалект Си в качестве шелла, и прочие радости.
Если вы хотите посмотреть, как выглядит операционка и софт, написанные настоящим сумасшедшим — просим:

https://templeos.org/

Вес VDI-файла с установленной ОС внутри — 93 Мб. Это невероятно чудовищный объём, ведь речь идёт о исходном коде на диалекте Си и очень компактных бинарях, им генерируемых. В системе есть даже игрушки ! Да, они ничуть не менее упоротые, чем сама ОС, но они есть. Ещё любителей цифровой археологии очень порадует тот факт, что всё в системе есть хитрый объект. Например, графический спрайт может быть вставлен прямо в исходник программы как есть.
Это полная шиза, как она есть, есть от чего прифигеть, и сравнение с постройкой небоскрёба в одиночку тут полностью корректно. Причём там нет прямых сдираний с каких-либо систем — максимум, знакомые элементы. На роль инопланетной ОС эта штука подходит идеально, даже Plan9 рискует остаться не у дел в своем глубоком космосе =)

Детальнее расписывать сложно — если интересно, посмотрите, в VirtualBox запускается и работает без особых проблем, есть даже документация.

Понятное дело, что на доработку драйверов и всего остального сил одного человека, даже одержимого сверх-идеей, оказалось совершенно недостаточно. Вряд ли кто решится развивать этот проект дальше, хоть его исходники и в паблике, а сам автор покинул этот мир год назад, болезнь таки нашла способ его убить.
Почтим же память этого отчаянного героя минутой молчания.

QP OC.
Разработчики из «НТП Криптософт», возможно, на меня ощутимо обидятся, что я посчитал их продукт достойным этой статьи. Надеюсь, мне не придется после этого вылавливать в чае полоний или стирать «Новичок» с дверной ручки :]

Да, речь идёт об ОС, разработанной в недрах одного российского предприятия, занимающегося разработкой всяких крипто-приблуд для виндовс весьма специфического применения.

https://cryptosoft.ru/qpos.html

Они всю свою деятельность писали софт исключительно под виндовс, и это наложило свой отпечаток и на их подход к разработке. В отличие от первых двух, QP OC — это закрытая коммерческая система, все ещё разрабатываемая, и тестовые версии которой доступны только юрлицам под NDA, за нарушение которого грозятся анальными карами. Впервые про эту ОС написал хабро-обзор Сысоев Андрей:

https://habr.com/ru/post/457132/

Почему я вообще включил эту ОС в свою заметку ? Предполагаю, что разработчики почему-то придали огромное значение внешнему виду и важности потакания привычкам пользователей. Из-за этого в их сторону посыпались вполне ожидаемые упрёки в плагиате и поиск корней гениальности в таких проектах, как Wine и ReactOS. Надо сказать, критика вполне ожидаемая.

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

Особенно удивляет, что при вылизанности внешнего вида (а это изрядный такой объем нудной работы), в системе полно критически важных недочетов, типа плохой дружбы с виртуализацией, проблем с драйверами, очень сырым софтом, большой тормознутостью и прочими системными багами. Есть подсознательное ощущение, что сперва рисовали морду «как в виндовс XP/Vista», а потом под неё код подкладывали.

В этом есть один крупный просчёт — до релиза ещё далеко, а все виндовс кроме 10-ки и пары топовых версий Windows Server официально мертвы. ХР — устаревший неподдерживаемый хлам, последний патч на RDP стоит воспринимать как высшую милость. Все идеи о «привычном интерфейсе» рассыпались прахом.

Мои наблюдения показывают, что нормальным людям нужен интерфейс, который +/- понятен и просто работает. Цвет кнопки, толщина панелек и закруглённость углов не имеют решительно никакого значения — пользователи и не к такому привыкают, если есть надобность.

Кому имеют — те будут вечно чем-то недовольны, но это не тот уровень сопротивления, который вообще следует принимать во внимание, иначе можно и в 2019-м году сидеть на ворде-95 под 98-й виндой и продолжать сильно удивляться, что нифига не работает, как ожидалось.

Конечно, у «Криптософта» может оказаться больший штат крутых программеров и архитекторов, чем 30 человек у колибри, у них могут оказаться госконтракты на миллионы и миллиарды, у них явно есть опыт (25 лет не хухры-мухры), и даже свои внутренние причины начать писать свою ОС, например ради сохранения квалифицированных кадров, использования в своих продуктах или ещё куда. Но это всё смотрится хилым на фоне гигантских опенсурсных сообществ, общая численность которых давно превышает население некоторых стран целиком.

Я даже не говорю о таких сверх-проектах, как ядро, либреоффис, или гимп с блендером. Посмотрите список авторов того же текстового редактора KWrite — там несколько десятков человек только основных, наиболее значимых участников.

Никакая компания в здравом уме не может себе позволить такой шик — 30+ человек, пилящих встроенный текстовый редактор. Именно поэтому этот редактор умеет подсветку синтаксиса Unreal Script и редких ассемблеров, сворачивание блоков кода в исходниках десятков языков программирования, поддержку скриптов и 15 вкладок с настройками, а блокнот в винде только недавно с горем пополам научился в UTF8.

Понятное дело, что закрытость QP OC не позволяет им привлечь внешних участников и сформировать сообщество. Из-за этого уже сейчас их путь стал напоминать путь Терри — свой офис, свой браузер, весь софт своими силами, и самый пиздец — драйвера тоже своими силами.

Расскажу небольшую байку. Когда Intel делает новую сетевую карту на 40 Gbit — её инженеры публикуют спеки и участвуют в linux/bsd сообществе, ещё когда только начали травить кремний для чипов. Работы по созданию драйвера идут параллельно с выпуском плат. И когда ко мне приезжает новый сервер, где такая плата уже стоит — и ставлю туда ProxMox … и он видит эту карту нативно, хотя ядро в проксмоксе — дебиановское, считающееся относительно «консервативным» в плане версий. Сразу. Остается только воткнуть SFP+ модули.

Вопрос — сколько разработчики из «криптософт» будут делать драйвер под такую карту ? Поддержка железа и отладка стабильности драйверов критически важная вещь для ОС общего назначения, эта штука может сожрать столько же сил, сколько всё остальное.

Конечно, у них остаётся ещё путь MacOS — поддерживать лишь относительно небольшой набор софта и железа. Но у Яббла был опыт с классической версией (до 9-ки включительно), а 10-ка (которая MacOS X) унаследовала весьма мощную и качественную кодовую базу из ранних *BSD, да и их вес на рынке ощутим.

Ничего этого у проекта, цепляющегося за старые абстракции и идеи, нету.

Тем обиднее. Я вполне верю, что разработчики смогли за 20 лет силами коллектива в несколько десятков человек и, воможно, не без почти даровой студенческой помощи написать с нуля ядро, интерфейс, сетевые стеки, модуль реестра, некоторые драйверы, поддержку ACPI (эта кривая и очень упоротая срака), а также некоторый софт.

Но поддержка такой ОС получается целиком в руках одного вендора, и силы очень не равны. Совместимости ни с огромным пластом старого DOS/виндовс-софта, ни с POSIX там нету. Возможно, они смогут занять какую-то специфичную нишу, но кто рискнет довериться такой системе ?

Отсутствие исходников также не позволяет проверить ни наличие наглых заимствований, ни безопасность проекта, ни надёжность.

А ещё это сообщение об ошибке из обзора, в лучших традициях сраного говна виндовс:
«Ошибка: Невозможно выполнить операцию. Такой запрос не поддерживается».
Какую операцию ? Что за запрос ? Кто запросил ? Куда и нахера ?
Что случилось-то ? Логи смотреть ? Если они такого же «качества», как в виндовс — проще сразу застрелиться и не мучаться.

Хотя если утверждения разработчиков «Криптософта» про самостоятельный кодинг верны — то их подвиг сравним с постройкой небоскрёба силами одной строительной бригады. Это конечно не в одиночку запиливать, но всё равно невероятно по потраченным ресурсам.

Надеюсь, они хорошо делают бэкапы, и смогут приятно удивить нас в будущем.

Вот такие вот супергерои теперь знакомы и вам.

- комментарии
  1. GMX:

    Ставим TempleOS и курим божественный кальян!

  2. Amin:

    Кальян с эстрактом из божественных грибов ?
    А современная наркология вообще умеет после такого воскрешать ?

  3. GMX:

    А кто сказал, что надо воскрещать )) оставьте меня в покое ))

  4. Amin:

    Ой йооо … =)
    ладно, раз доктор говорит не воскрешать — значит не воскрешать :]

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход /  Изменить )

Google photo

Для комментария используется ваша учётная запись Google. Выход /  Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход /  Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход /  Изменить )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.