ФЭНДОМ


Оригинал: http://www.linux-magazine.com/issues/2006/62/the_other_os
Перевод: RapidFX

Обзор Править

С момента изобретения UNIX, программисты Bell Labs не сидели сложа руки, и одним из плодов их работы стала распределенная операционная система Plan 9. Plan 9 зародился в конце 1980 годов, как новая система призванная решить проблемы UNIX, которые разработчики посчитали «слишком глубокими, для того чтобы исправлять». Эта новая операционная система несла в себе несколько инноваций, оказавших влияние на последующие системы. Но до недавнего времени, Plan 9 находился под коммерческой лицензией, связывавшей пользователей.

Bell Labs и небольшое сообщество программистов продолжали улучшать и развивать Plan 9. Лицензия смягчалась из года в год, и в 2003 году, Plan 9 был наконец то был выпущен под свободной лицензией. Коммерческая ветвь, известная как «Inferno» теперь также открыта.

Давайте взглянем на «4-ю редакцию» Plan 9 и посмотрим что же в ней такого привлекательного?

Начало Править

Дистрибутив занимает 65 Мб запакованного ISO-образа, который можно использовать как live-CD. Если у вас возникли проблемы во время загрузки с CD, вы можете проверить на сайте генератор загрузочных флоппи-дисков для подходящего аппаратного обеспечения. Инсталляция весьма спартанская, но тем не менее хорошо организованная и более-менее дуракоустойчивая (Рис. 1). Инсталлятор проверяет текущий статус после каждого шага. Графика работает для видео-карт с поддержкой Vesa. Если вы предпочитаете не экпериментировать с полной инсталляцией прямо сейчас, можете поиграться в виртуальной машине. Смотрите раздел "Виртуальный Plan 9" для инструкций. Если вы заинтересовались, вы так же можете попробовать установить user-space набор важнейших инструментов [3].

Более последователен чем UNIX Править

Базовая концепция Plan 9 в том что это - распределенная операционная система, не похожая на UNIX, где сетевая функциональность расширена такими механизмами как удаленный вход в систему и сетевая файловая система. В Plan 9, сетевая поддержка встроена в функционал операционной системы. Например, все ресурсы теоретически, могут прозрачно распределены в сети Plan 9. Система скрывает от пользователя, что ресурсы не являются локальными. Plan 9 не только поддерживает файловые серверы, но и серверы авторизации и CPU-серверы. Вы можете использовать Plan 9 для создания грид-систем таких как 9grid.

Plan 9 основан на парадигме UNIX о том, что «все является файлом». Опираясь на огромную коллекцию дополнений, Unix впитывал в себя все больше изменений, которые шли вразрез с исходными принципами. Примером этого является ужасный механизм интерфейса сокетов, используемый для функций чтения и записи и отличный от обычных файлов. Plan 9 кладет этому конец предоставляя интерфейсы файло-ориентированной системы, например, /net/tcp и /net/udp сетевых интерфейсов. Большинство системных служб следуют серверному принципу и взаимодействуют через файл-ориентированные интерфейсы. В Plan 9 нет обычной программы FTP. Вместо этого ftpfs монтирует сервер-FTP в ваш каталог /n/ftp. Сервер 9660fs ответственен за монтирование дисков CD. Plan 9 был первой системой осуществившей поддержку файло-ориентированной системы управления процессами proc. В Plan 9 основную сетевую функциональность осуществляет протокол 9P, в состав которого входит около 30 управляющий сообщений. Реализация 9P в Линукс была добавлена в основное ядро начиная с версии 2.6.14, устранив этим любые препятствия во взаимодействии Linux и Plan 9.

Пространства имен Править

Plan 9 взяв этот файло-ориентированный дизайн, продвинулся дальше с концепцией пространства имен. Традиционно, UNIX управлял своими ресурсами в едином пространстве имен, в котором /dev/tty1 всегда представлял собой один и тот же терминал. В противоположность этому приложения Plan 9 имеют свое собственное пространство имен, так что /dev/window будет указывать на собственное окно приложения. Другая важная особенность - это монтирование с объединением. Это дает возможность упростить управление ресурсами, такими как файлы и каталоги путем монтирования нескольких каталогов в единую точку. Это делает возможным монтирование каталогов с исполняемыми файлами расположенными на сервере в локальный каталог /bin, что делает ненужным трюки с переменной PATH. Линукс совсем недавно позаимствовал такой дизайн перекрывающихся файловых систем Union-FS.

Графика и Rio Править

В противоположность X11 в UNIX, Plan 9 напрямую интегрирован с графическим окружением, и это чрезвычайно упрощенная модель. Лежащая в основе модель принадлежит Oberon Никлауса Вирта, на которой был сделан интерфейс системы Xerox Cedar. Десктоп Plan 9 предоставляет простую программную модель с файло-ориентированным интерфейсом и элементарными операциями. Например, простое cat /dev/screen > output создает снимок экрана приложения. Однако реализация графической подсистемы Rio более сложна, она включает в себя параллельные процессы и нити которые взаимно обращаются друг к другу. Rio может показаться отклонением от правил, модель строчно-ориентированного терминала, которая отбрасывает в прошлые дни, когда принтеры действительно служили для отображения пользовательского ввода. Линукс так же несет это строчно-ориентированное наследие в виде многочисленных терминальных приложений таких как Xterm и консоль KDE. Это позволяет совершать ввод в любой позиции окна: пользователь просто выбирает команду и пользуется мышью для выполнения. Как продвинутая оконная система, Rio создает интенсивную нагрузку на все доступные кнопки мыши. Программа Acme - это необычная комбинация оболочки, редактора и оконной системы. Acme следует принципу которого мы коснулись, но добавляет элементарные меню в терминальные окна и перенаправляет вывод в новые под-окна (Рис. 2). В X11 реализация Acme продублирована Wily, основанного на библиотеке 9lib [6]. Несмотря на почтенный возраст, Rio может обслуживать много-язычные программы, поскольку основан на наборе символов Unicode. Plan 9 использует кодировку UTF-8, созданную командой программистов Plan 9 под руководством Роба Пайка.

Безопасность Править

В Plan 9 не существует супер-пользователя root, и поэтому там нет SUID-программ служащих причиной бесконечных проблем с безопасностью в UNIX. Следуя подобному подходу Kerberos, распределенная система Plan 9 не передает по сети пароли, используя вместо этого зашифрованные тикеты. Один из способов создания пользовательского аккаунта это запуск файлового сервера fossil путем набора con /srv/fscons и ввода команды uname user user. Новые пользователи могут инициализировать свое окружение при первом логине командой /sys/lib/newuser. Конечно, в Plan 9 есть средства разработчика для языка C. Компилятор для архитектуры x86 назван 8с, линкер 8l, а программа-сборщик mk. Для того чтобы скомпилировать новое ядро этими инструментами, администратор системы переходит в каталог /sys/src/9/pc и редактирует соответствующий конфигурационный файл, который называется по-разному в зависимости от окружения: в простейшем случае это pc; pcauth в случае сервера авторизации; pcf в случае fossil сервера и т.д. После конфигурирования ядра, администратор может его компилировать и установить дав команду mk CONF=pcf install. Ядро находится на в загрузочном разделе 9fat, доступ к которой дается командой 9fat:. Там же находится и конфигурационный файл plan9.ini.

Не более чем безделушка Править

Man-страницы предоставляют документацию об инструментарии и обзор; они доступны в онлайне и на страницах Plan 9 Wiki. К несчастью, множество изменений было в «4-й редакции», что делает часть информации устаревшей; так что убедитесь в совпадении версий. Несмотря на фантастический дизайн, Plan 9 не совершенен. Например, окно 9term в Rio часто неправильно скроллируется и не показывает текстовое сообщение в котором вы нуждаетесь. Acme менее глючен. Большая часть системы основана на GUI десктопе, и многие функции не доступны в текстовой консоли: например невозможно убить процесс нажав клавишу [Del]. Другая проблема - очень маленькое сообщество, Comp.os.Plan9, которое продолжает разрабатывать Plan 9 , сражаясь с постоянной нехваткой ресурсов. Факт в том, что Plan 9 не широко распространенный дистрибутив, из-за предыдущей политики лицензирования, препятствовавшей беспрепятственному распространению. Сегодня, Plan 9 значительно менее интересен разработчикам свободного программного обеспечения, нежели Linux дающий им хорошо работающую операционную систему, несмотря на весь тот балласт от UNIX вокруг него [7].

Обнаружено использование расширения AdBlock.


Викия — это свободный ресурс, который существует и развивается за счёт рекламы. Для блокирующих рекламу пользователей мы предоставляем модифицированную версию сайта.

Викия не будет доступна для последующих модификаций. Если вы желаете продолжать работать со страницей, то, пожалуйста, отключите расширение для блокировки рекламы.

Также на ФЭНДОМЕ

Случайная вики