Наша Ось!
Ещё лет пять назад на форуме Королевства Delphi появились две темы, обсуждение которых до сего дня являются одними самыми бурными: «ОС на Паскале» и «Русская ОС». Кто бы мог подумать, что именно эти ветки положат начало… Чему?
Как вы думаете, можно ли в нашей стране сделать хорошую, высокотехнологичную операционную систему, код которой был бы в разы компактнее, чем у Windows и Linux, которая имела бы практическую ценность и решала бы около 80% повседневных задач? Разработчики из Группы Исследования Расширяемых Систем (ГИРС) считают, что это возможно. В середине июля эта группа начала работу по созданию новой отечественной ОС с рабочим названием «Роса».
В основу проекта положены два момента: технологическое совершенство (исследования, экспериментальная ОС) и информационно-технологическая независимость (как минимум – группы разработчиков, как максимум – государства).
Новую ОС планируется разрабатывать с нуля, но за отправную точку будут взяты две магистрали: UNIX-направление (включая QNX, Minix, Plan 9 и др.) и Oberon-направление (Oberon System, XO/2, Bluebottle).
При этом разработчики отказываются от бинарной совместимости с прочими ОС, драйверами и операционными платформами (возможно, будет сделано исключение для POSIX). Базовая функциональность будет ограничена конкретным плацдармом – госучреждения (включая школы).
Вот как аргументируют это решение сами участники ГИРС: «Нет необходимости полностью переписывать специализированные программы и системы. Никто не мешает использовать новую ОС вместе с другими, причём даже на одном компьютере. В госучреждениях при решении офисных задач специализированные прикладные продукты гарантированно не нужны на всех рабочих местах. […] По мере необходимости прикладной слой может обогащаться необходимым софтом. Если ОС останется в ранге экспериментальной, то там будут появляться преимущественно «ширпотребные вещи» (видео, аудио, фото и др.). Если сможет стать государственной, то появится рынок для создания новых систем производственного назначения. […] Причём нет надобности наследовать «жирность» существующего софта и старые ошибки. Что касается драйверов. Во-первых, будут созданы условия для удобства написания подобных драйверов (причём с возможностью быстрой адаптации под новые версии оборудования). Во-вторых, будет базовый набор, который сможет покрыть основные потребности школ и госучреждений. В-третьих, если ОС станет государственной, то требование совместимости с новым оборудованием – это вопрос взаимодействия с поставщиками аппаратных средств, для которых российский рынок – не пустое место. Если мы вправе требовать маркировки товаров и представления инструкций на русском языке, то соблюдение российских госстандартов и программная поддержка оборудования для новой государственной ОС (драйверы) – это вполне нормальное и разумное требование».
Совместимость с другими ОС подразумевается на уровне ведущих стандартных форматов файлов, некоторых открытых (стандартных) спецификаций (протоколов), а также (по возможности) отдельных стандартных операционных платформ (в частности, POSIX). Если связывать себя путами совместимости, то только в отношении общепринятых стандартов, которые не зависят от прихотей одной компании и которые достаточно стабильны во времени.
Опираясь на многолетний опыт работы с Modula- и Oberon-технологиями, разработчики утверждают, что можно (и нужно!) делать компактные системы, с существенно меньшими трудозатратами, с лучшим качеством, большой надёжностью и высоким уровнем безопасности».
Немалое внимание собираются уделять разработчики и кадрам, которые будут задействованы в работе над проектом «Роса». Примерно год они намерены потратить на формирование костяка и выведение команды на требуемый уровень знаний и коллективного взаимодействия. Для проработки самой ОС потребуется около 10 человеко-лет (если исходить из энтузиастов, занятых не более 2 часов в день, то получается оценка в 20 человек на 2 года). Для реализации кода ОС требуется ещё порядка 20-30 человеко-лет (из расчёта 15 тыс. строк в год на человека, при полном рабочем дне). Фактически, должно уйти 2 года на НИОКР и проектирование и 2-3 года на реализацию и доведение до полноценного продукта.
В новой ОС во главу угла будут поставлены пять основных аспектов, отличающие её от других. Прежде всего – безопасность. Система безопасности будет строится на уровне ядра ОС и вышележащих уровней путём построения целостной системы комплексной защиты от несанкционированного доступа и вредоносного ПО. Второй аспект – математический фундамент (проект будет отличаться высокой наукоёмкостью). Далее – асинхронность (максимальный уход от прямого взаимодействия программных элементов за счёт формирования косвенной, причинно-следственной связи). Четвёртый аспект, адаптивность, – это средство динамической оптимизации режима работы и взаимодействия компонентов ОС, а также сглаживания внешних возмущений и грамотная политика обработки нештатных ситуаций.
И наконец, перенацеливаемость. Исследователи намерены создать «полуфабрикат ОС», который должен относительно легко функционально масштабироваться, перенацеливаться по разным задачам (секторам рынка).
Для ведения экспериментальных исследований (до формирования нового инструментария) планируется применять базовые рабочие языки. В роли таковых планируется использовать компонентный Паскаль и Оберон(-2). Базовый инструментарий – BlackBox».
Также разработчики заявляют, что «в идеале в отдалённом будущем при получении хороших результатов НИОКР вполне разумно будет ставить вопрос о разработке наиболее оптимального отечественного железа под такую схему». При этом они признают, что это – дело не сегодняшнего дня.
Что же, мы будем внимательно следить за судьбой этого проекта и сообщать обо всех его интересных моментах.
Предлагаю всем заинтересовавшимся проектом «Роса» оставлять свои мнения и вопросы в комментариях.
По материалам сайта osrc.info и личных блогов участников ГИРС.