...
...

Перспективы создания ОС 1

Продолжение. Начало в КГ №7

Итак, теоретическая база у нас уже есть. Что же делать дальше? Давайте сегодня посмотрим вокруг и определим, какие операционные системы разрабатываются на данный момент в мире. Я специально привожу в пример такие проекты, чтобы было реально скачать как исходный код, так и саму ОС. Надеюсь, что вы сможете подчерпнуть из этих проектов и принципы реализации, и организацию проекта. Итак, начнем.

Menuet OS
Официальный сайт: www.menuetos.org

Сколько слов сказано на тему этой операционной системы! О ней писали многие бумажные и цифровые издания начиная от маленьких невзрачных сайтов для узкого круга посетителей и заканчивая мощными журналами. И всегда эта ОС приводит в восторг ее обозревателей.
Автор операционной системы — финн Вилле Турьянмаа. Разрабатывается она с 2000 года. Написана на чистом ассемблере, более того: низкоуровневый исходный код — идеология проекта. В 2004 году руководство проектом было передано англичанину Майку Хиббету, до сей поры числившемуся в списке разработчиков поддержки сетевых технологий в Menuet. После "передачи управления" новые версии выходят с весьма странной частотой и без существенных изменений. Menuet легко вмещается на одну дискету, имеет хороший графический интерфейс, использует стандарты VESA 2 и экспериментальную поддержку VESA 3 (которая, тем не менее, работала прекрасно несмотря на свою экспериментальность). Кроме того, на данный момент уже есть драйвер для работы с некоторыми версиями карт Radeon, возможности работы со встроенными звуковыми картами и с картой Sound Blaster 16. Операционная система распространяется с исходным кодом и компилируется компилятором под названием Flat Assembler — FASM. В работу над ОС Menuet вовлечено довольно много программистов по всему миру. Свидетельством этому служит просто огромное для такой операционки количество программного обеспечения включая компиляторы ассемблера, трансляторы кода из C в ассемблер, множество библиотек для работы как со стандартными функциями, так и с 3D-графикой (чего стоит хотя бы тот факт, что под Menuet есть портированные Doom и Quake (последний, правда, мне запустить не удалось).

Минусы системы заключаются в том, что официальный дистрибутив Майка и Вилле совершенно не поддерживает дружественности между операционной системой и пользователями. В обычной конфигурации Menuet не обнаруживает ни жестких дисков, ни CD-ROM. Надо заметить, это исправлено в российском дистрибутиве, и ваши диски будут видны в стандартной конфигурации. Кстати, именно в российских дистрибутивах изначально была реализована великолепная поддержка файловых систем FAT. Еще одна проблема в том, что время от времени с выходом новых версий ОС системные функции одного назначения меняются на совершенно другие. Для меня причина этого неясна, но программы, написанные для Menuet версии ниже 0.66, вряд ли будут совместимы с более поздними версиями. Но в общем операционная система Menuet безусловно заслуживает внимания. После детального рассмотрения исходного кода (но, безусловно, с наличием знаний об архитектуре процессора) можно понять некоторые принципы работы с железом начиная с VESA и заканчивая протоколами TCP/IP и работой с некоторыми сетевыми картами.

ReactOS
Официальные сайты: www.reactos.com; www.sourceforge.net/projects/reactos

Очень оригинальный проект. ReactOS представляет собой настоящий клон операционной системы Windows NT, обладая вполне хорошим Windows API, так что программы, написанные для Windows, теоретически должны запускаться и в ReactOS. Интерфейс вполне стандартный, идентичный оригиналу в Windows NT. Даже Blue Screen of Death (BSOD) такой же.
Большой плюс этой операционной системы — ее распространение под лицензией GPL, то есть с исходным кодом (видите дым из ушей Стива Балмера?:)). Полгода назад после нехитрой установки ReactOS, заключавшейся в распаковке архива, и недолгой работы я ненадолго про нее забыл. Потом появилась надобность зайти в консоль восстановления Windows. Каково же было мое удивление, когда я увидел каталог ReactOS в числе каталогов Windows. То есть установщик идентифицировал ее как свою родную ОС! На мой взгляд, это высший пилотаж. Также к плюсам можно отнести то, что ReactOS определил все мои NTFS-диски и даже пытался читать с них какую-то информацию.

Однако, как и следует ожидать, минусов в этой операционной системе гораздо больше, чем плюсов. С сайта ReactOS куда-то исчезла сборка этой ОС для запуска из среды MS-DOS. Из-за этого я час качал ISO-архив величиной в 8 Мб, а потом целый день пытался установить систему из-за того, что у меня не было CD-рекодера. В этом плане обладателям таких железок, безусловно, повезло гораздо больше. Завершились мои танцы с бубном тем, что через эмулятор Bochs я поставил ОС на виртуальный диск, а потом с использованием собственного ПО скинул образ диска на реальный винчестер. Первое, что бросается в глаза, — просто ужасные тормоза системы. Например, диспетчер задач решил сделать мне одолжение только через минуту после попытки его запустить. Никаких ошибок в работе первые 5 минут я не заметил. Но что началось потом! Из-за неимоверных тормозов меня угораздило ткнуть курсором прямо в пункт завершения работы главного меню. После перезагрузки очень скоро появился BSOD, а после следующей перезагрузки монитор выдал мне сообщение о том, что идет какой-то некорректный сигнал (т.е. из-за ошибки в системе был выставлен режим, который не поддерживается моим монитором). Так что я не знаю, какой дым из ушей Стива Балмера вы видели, но готов признать, что едва ли ReactOS способен стать альтернативой Windows (тем более с такими жесткими патентами Microsoft). Просто проект, я думаю, сможет открыть некоторые способы реализации технологий в Windows. Однако это, поверьте мне, большая работа, совершенная его авторами. ReactOS представляет интерес не столько для конечного пользователя, сколько для разработчика, который, скачав 19 Мб исходного кода проекта, сможет рассмотреть все в деталях и найти для себя много интересного.

3OS
Официальный сайт: www.3os.ru

Это проект, изначально поразивший меня своей дерзостью (в хорошем смысле слова, безусловно). Прочитав документацию, я был удивлен тем, что авторы бросали вызов чуть ли не всем операционным системам тем, что собирались написать ОС нового тысячелетия. Будучи, скажем так,
непрофессионалом в таких вопросах, я не верил ничему написанному в их документации, однако с течением времени понял, что взгляды, положенные в основу идей 3OS, могут изменить, в свою очередь, представление пользователя о компьютере. Чего стоит хотя бы попытка собрать все понятия в одно определение — объект. От чего и родилось название операционной системы: Object-Oriented Operating System — 3OS. К слову, мы как-нибудь вернемся к этому понятию и попытаемся рассмотреть его детально.
Скажу сразу: на сайте вы не найдете никаких бинарных файлов или исходных кодов. Здесь нет никаких попыток собрать все идеи воедино и выдать готовый продукт. Однако проект разрабатывается примерно с 2001-2002 года по сей день. "Документация — это все, что они сделали?!" — спросите вы. Да, это все. Но только посмотрите на этот бесценный кладезь великолепнейших идей, и вы забудете, что такое Menuet, ReactOS, SkyOS и многие другие. Хочется заметить, сейчас проект сильно нуждается в разработчиках и просто ценных советниках. Если вы из таких — вам дорога только на приведенный выше сайт 3OS. Это один из лучших проектов (если не самый лучший), разрабатываемых энтузиастами, и я лично ото всей души желаю его главе Роману Химову и его группе осуществления всех идей в коде и расширения штата сотрудников. Поверьте мне, проект этого стоит.

Polit OS
Официальный сайт: www.polit-os.org.ua

Polit OS создан украинскими разработчиками. Проект сложно назвать операционной системой — скорее это довесок к MS-DOS. Ну что ж, когда-то и Windows 3 называли операционной системой, так что Polit OS смело можно отнести к этой категории. Система представляет собой графическую надстройку над операционной системой MS-DOS подобно все тем же Windows 1-3. Polit OS имеет довольно хороший графический оконный интерфейс. Что характерно, все надписи выполнены на украинском языке, хотя для жителей Беларуси это не составит проблемы. В системе есть возможность менять настройки экрана включая разрешение и цветовые схемы. В дистрибутиве есть утилиты для навигации по дискам, просмотра графических изображений, простейший текстовый редактор, несколько игр и программы для настройки самой ОС. Но все это не главное. Самое интересное заключается в том, что все это творение написано на обычном паскале. Более того, вся система распространяется под лицензией GPL, что даст начинающему пользователю необъятные просторы для творчества. Так что заходите, качайте и помните, что Polit OS работает только в среде MS-DOS и совместимых с ней. Теперь я считаю, что материалом для размышления вы обеспечены надолго. Возможно, вы захотите присоединиться к какому-то проекту — это не проблема. Все три заслуживают внимания. По мере нахождения достойных проектов я постараюсь информировать вас о них.

Возвращаясь к напечатанному. Вот небольшая "поправка на ветер" — более точный адрес, где можно скачать книги по архитектуре процессоров Intel: сайт Видимо, лимит бумажных экземпляров книг в Intel исчерпался, и теперь заказать можно только CD-ROM с электронными версиями. Однако, как сообщили некоторые источники, такое положение сохранится недолго. Так что следите за обновлениями документации и читайте. Всего доброго!

Влад Маслаков, Vladislav_1988@mail.ru

© Компьютерная газета

полезные ссылки
Корпусные камеры видеонаблюдения