Не так давно на www.slashdot.org
был упомянут проект, первый этап которого (по
заявлениям авторов) должен быть завершен в 1998
году. Это FreeDows -
операционная система, главным свойством которой
предполагается возможность выполнения
приложений различных операционных систем, в том
числе под различные платформы (Win32, Mac, AmigaDOS и т.д.)
Одной из изюминок FreeDows является Cache Kernel
идеология (разработка Stanford University). Также
предполагается поддержка CORBA, для распределенных
вычислений. На данный момент на сайте
отсутствуют сколько-нибудь внятные
спецификации, если не считать отдельных
отрывочных сведений и заметок, однако, масштабы
проекта заставляют думать, что это не шутка. Как
бы там не было, в последнее время все больше людей
и организаций всерьез задумываются над
альтернативой существующим ОС - универсальной
системой. Такие попытки делаются в том числе и в
России. В качестве лишь одного из известных мне
примеров, можно назвать проект VM/2
Юлия Горявского и Андрея Студнева.
Без сомнения, эти попытки отражают ситуацию,
когда с одной стороны, существующие ОС не
удовлетворяют современным требованиями по
надежности и эффективности, с другой, осознание
невозможности обеспечить вновь написанную ОС
приложениями типа WWW browser'a, хорошего текстового
процессора, пакетов компьютерной графики и
других необходимых приложений вынуждает
использовать существующее software.
Подобный путь развития ОС представляется мне
тупиковым, как минимум по следующим причинам:
1. Невозможность обеспечить полную совместимость с теми ОС, которые недостаточно хорошо документированы и не распостраняются в исходных текстах (та же Win95).
2. Необходимость осуществлять эмуляцию аппаратной части, в том числе процессора, в реальном времени - посредством виртуальной машины, что приведет к значительной (десятки раз) потере производительности. Более того, для некоторых платформ (таких как Amiga) полная эмуляция аппаратной части невозможна, ввиду необходимости четко соблюдать временные интервалы.
3. Невозможность заставить большинство фирм-производителей hardware выпускать драйвера под новую систему, при том, что драйвера для существующих ОС нельзя использовать, поскольку, при подобном уровне доступа приложений к hardware, нельзя гарантировать устойчивость системы.
Есть как минимум два пути: отказ от
универсальной ОС и ограничение ее возможностей
узким кругом задач (к примеру коммуникации,
управление оборудованием). Или другой - запуск ОС
из под существующих, наподобии Java VM, DIS VM (Inferno), а
затем, по мере наращивания числа приложений,
постепенный переход на аппаратную платформу.