Открытый слог
В июле 2002 года многие участники проекта AtheOS,
недовольные затянувшейся разработкой,
основали Syllable (слог). Она стала наследницей
AtheOS, но гораздо более энергичной -
предполагается, что релизы должны выходить
примерно раз в два месяца, но выдерживать
такой темп не всегда получается. Последняя
на сегодняшний день версия - 0.5.2. Цель
проекта - создание открытой ОС, надёжной и
удобной, интуитивной и мощной, для
домашнего и офисного использования. До
финального релиза ещё очень далеко, но Syllable
достаточно стабильна, поддерживает широкий
спектр устройств (аудио\видео\сетевые карты)
от основных производителей (Intel, AMD, 3Com, nVidia,
Creative). Некоторые пользователи сообщали о
проблемах при работе с недостаточным
объёмом RAM (менее 96Мб) и в низких графических
разрешениях. Первое объясняется
неэффективностью и неоптимизированностью
ОС вообще и утечками памяти в частности, а
второе - неспособностью некоторых
видеокарт нормально работать в стандартных
VESA-режимах. Всё это болезни роста,
сопровождающие развитие любой ОС. По
крайней мере, она неуклонно улучшается, так
что можно надеяться на скорое появление
быстрой, нетребовательной к памяти,
красивой системы.
Несмотря на то, что в самом начале своего
пути AtheOS многое позаимствовала от AmigaOS, это
не даёт основания считать Syllable клоном. От
Амиги давно уже практически ничего не
осталось, кроме внешнего сходства
отдельных элементов оформления.
Программный интерфейс Syllable кажется близким
к BeAPI, но разработка AtheOS началась раньше, чем
был продан самый первый BeBox. Syllable частично
соответствует стандарту POSIX и стремится
стать полностью совместимой с ним, но
юниксом при этом не является. Уже сейчас она
поддерживает POSIX-треды (pthreads) и использует
glibc, так что очень большое число приложений
компилируются и работают без каких-либо
модификаций исходного кода. Структура
каталогов искусственно приведена к UNIXоподобной,
чтобы избежать проблем при портировании. На
самом деле у Syllable своя собственная иерархия,
более подходящая для десктопной GUI-OS, а /usr, /bin,
/etc - всего лишь символические ссылки. Это
очень удобно и логично, потому что
разработчики ещё не выработали
окончательного варианта именования и
размещения директорий в Syllable.
Итак, Syllable/AtheOS - это не UNIX (или какая-то
другая ОС), а собственный системный дизайн.
Возникает вопрос об архитектуре ядра: макро,
микро, нано, пико, экзо? Вот что по этому
поводу говорит Курт Скаунен, автор AtheOS: "Я
часто спрашиваю себя о том же. Кернел
обладает высокой степенью модульности,
взаимодействуя с драйверами устройств и
файловыми системами строго определённым
образом. Каждый компонент имеет простой и
чёткий интерфейс и не очень зависит от
других - это напоминает микрокернел. Однако
я не уверен, что это подходящий термин,
потому что все части ядра живут в едином
адресном пространстве и не защищены друг от
друга, а это свойства монолитных ядер. Я
немного смущён :)". Ну что ж, если даже сам
автор не знает, то и мы не будем забивать
себе мозги подобными проблемами. Лишь бы
ОСина была хорошая.
Открытый ящик
После целого года ожиданий вышла версия 2.1
легендарного эмулятора Bochs. Вообще-то Бокс
логичнее называть не эмулятором, а
виртуальной машиной, но эти термины, по
моему нескромному мнению, недостаточно
чётко определены, соответственно их смысл
часто искажается. Лично я употребляю эти
слова как синонимы, так что если программа
имеет хоть какое-то отношение к эмуляторам
и\или виртуальным машинам, называю её то так,
то эдак. Конечно, это не совсем правильно, но
я на таких мелочах стараюсь не
зацикливаться. Это как направление наклона
косой черты - юниксоиды, VMSники и математики
используют "/", другие привыкли к "\",
а мне всё равно, потому что в GNU/Linux я
чувствую себя почти так же комфортно, как в
OS\2. Предлагаю ввести термин ЭВМ (Эмулятор\Виртуальная
Машина), чтобы не мучиться. Так вот, теперь
ЭВМ Бокс поддерживает наборы инструкций
3DNow!/SSE/SSE2/PNI и оснащена новым дизассемблером.
Образы жёстких дисков могут располагаться
в нескольких файлах и автоматически
увеличиваться в размерах. Поддерживается
формат образов VMWare3 и откат изменений,
сделанных на виртуальном HDD. Улучшена
работа в графическом режиме и многое другое.
К сожалению, я не смогу насладиться всеми
этими чудесами. Bochs не портируется на ОС\2
уже очень давно (почти 4 года), хотя работает
более-менее прилично, к тому же спасает
наличие коммерческой ЭВМ VirtualPC. Ожидается,
что на этот рынок придёт ЭВМ twoOStwo,
разработанная российской компанией "Параллели"
по заказу NetSys GmbH. Перенос её на OS/2, если
верить слухам - инициатива Serenity Systems Inc.
Напомню, что SSI продаёт собственный продукт
- операционную систему eComStation, основанную на
OS/2. Не удивлюсь, если пользователям eCS эта
программа будет предложена на гораздо
более выгодных условиях, чем владельцам
оригинальной IBM OS/2. Скорее всего, урезанная
версия будет включена в состав
дистрибутива, а полноценную можно будет
купить со значительной скидкой. Если я
окажусь прав - пойду в Нострадамусы. Или в
маркетологи.
Bochs тоже когда-то был коммерческим проектом
- исходники можно было получить бесплатно,
но пользователь не имел права их изменять
без согласия автора, а после 30 дней
использования нужно было регистрироваться.
Потом Кевин Лоутон, автор этой
замечательной программы, безвозмездно
отдал её прогрессивному человечеству на
вечное пользование согласно лицензии GPL.
Сейчас он работает над проектом plex86, тоже
связанным с виртуализацией PC. Вообще, эта
тема сейчас крайне популярна и актуальна (наверно,
под воздействием моих статей). Эстафету
подхватил проект L4Ka: исследуется
применимость микроядерных технологий для
создания виртуальных сред, в которых
ненадёжные подсистемы будут строго
изолированы друг от друга. Такая
архитектура обеспечит расширямость и
безопасность виртуальных машин. Другим её
достоинством будет масштабируемость, то
есть способность эффективно работать с
высокопроизводительными системами.
Недостаток - необходимость модификации
ядра гостевой ОС. Я уже писал о похожем
проекте NomadBios, который базируется на L4-подобном
ядре Fiasco. Пока что о технологии L4 Virtual Machine
ничего конкретного не известно, но всё же
сходство слишком явное, видимо,
подразумевается включение наработок NomadBios
в основную ветвь разработки L4.
Открытый DOS
Итак, мы ограничены открытыми ОС (точнее,
открытыми ядрами). К счастью, таких систем
не так уж мало. Не все из них открыты под
свободными лицензиями наподобие GNU и BSD -
например, OpenDOS принадлежит компании Caldera.
Прежними его владельцами были Netware и Digital
Research, соответственно назывался он Netware DOS и
DR-DOS. Когда-то он пытался конкурировать с IBM
PC-DOS и MS-DOS, а сейчас его мало кто помнит.
Понимая, что никому он не нужен даже даром,
Калдера открыла исходники. Тем не менее, DR-DOS
не является истинным OpenSource, как, например,
FreeDOS. Лицензия допускает бесплатное
использование самой системы и её кода, но
только частными лицами в некоммерческих
целях. Все права принадлежат владельцу,
который может в любой момент изменить
лицензию. Пользователи не имеют гарантии,
что OpenDOS всегда будет открытым, бесплатным и
бесплатно открытым.
Всё-таки нашёлся человек, который решил
заняться таким неблагодарным делом, как
модификация и развитие OpenDOS (последняя
официальная версия - 7.01). Вот краткий
перечень того, что уже сделано: поддержка LBA
(диски объёмом более 7.8Гб), размер кластера 64Кб
(FAT16-раздел до 4Гб), в последней версии (7.01.06)
появилась возможность работы с FAT32. Версия
7.01.07, умеющая загружаться с FAT32-раздела,
находится в процессе разработки.