20.2. Plan 9: каким представлялось будущее Unix

20.2. Plan 9: каким представлялось будущее Unix

Известно, как обычно представляется будущее Unix. Оно было определено исследовательской группой Bell Labs, которая построила Unix, в работе под названием "Plan 9 from Bell Labs"114. Операционная система Plan 9 представляла собой попытку воссоздать Unix и сделать ее лучше.

Главной проблемой проектирования, которую конструкторы попытались разрешить в операционной системе Plan 9, была интеграция графики и повсеместного использования сети в комфортабельной Unix-подобной структуре. Они придерживались выбора Unix, организовывая промежуточный доступ к любому возможному количеству системных служб посредством единого, большого иерархического пространства имен файлов. Фактически они его улучшили. Многие средства, которые в Unix были доступны посредством различных узкоспециальных интерфейсов, подобных BSD-сокетам, fcntl(2) и ioctl(2), в операционной системе Plan 9 были доступны посредством обычных операций чтения и записи в специальные файлы аналогичные файлам устройств. Для обеспечения переносимости и простого доступа почти все интерфейсы устройств были текстовыми, а не двоичными. Большинство системных служб (включая, например, систему оконного интерфейса) представляли собой файловые серверы, содержащие специальные файлы или деревья каталогов, представляющие обслуживаемые ресурсы. Представляя все ресурсы в виде файлов, операционная система Plan 9 превратила проблему доступа к ресурсам, расположенным на различных серверах, в проблему доступа к файлам на различных серверах.

В операционной системе Plan 9 файловая модель, еще больше соответствующая духу Unix, чем модель самой Unix, была объединена с новой идеей: частным пространством имен. Каждый пользователь (а, по сути, каждый процесс) могли иметь собственное представление системных служб путем создания собственного дерева точек монтирования файловых серверов. Некоторые точки монтирования файловых серверов устанавливаются вручную пользователем, а другие автоматически устанавливаются во время регистрации пользователя в системе. Поэтому (как указано в обзорной статье "Plan 9 from Bell Labs") "/dev/cons всегда ссылается на терминальное устройство, a /bin/date на корректную версию команды date, однако определение файлов, которые должны быть представлены этими именами, зависит от различных обстоятельств, таких как архитектура машины, выполняющей команду date".

Наиболее важная особенность операционной системы Plan 9 заключается в том, что все подключенные файловые серверы предоставляют одинаковый интерфейс, подобный файловой системе, независимо от скрытой за ними реализации. Некоторые из них могут соответствовать локальным файловым системам, некоторые — удаленным файловым системам, доступ к которым происходит по сети, некоторые могут соответствовать экземплярам системных серверов, запущенных в пользовательском пространстве (например, система оконного интерфейса или альтернативный набор сетевых протоколов), а некоторые могут соответствовать интерфейсам ядра. Для пользователей и клиентских программ все описанные случаи выглядят одинаково.

В обзорной статье о Plan 9 представлен способ, с помощью которого реализован FTP-доступ к удаленным узлам. В операционной системе Plan 9 не существует команды ftp(1). Вместо нее используется файловый сервер ftpfs, а каждое FTP-соединение выглядит как точка монтирования файловой системы. Сервер ftpfs автоматически преобразовывает команды открытия, чтения и записи файлов и каталогов в точке монтирования в FTP-транзакции. Таким образом, все обычные инструменты обработки файлов, такие как ls(1), mv(1) и ср(1), просто работают как в точке монтирования FTP, так и через границы с остальной частью пользовательского представления пространства имен. Единственное отличие состоит в том, что пользователь (или его сценарии и программа) замечают разницу в скорости получения данных.

Plan 9 обладает и другими полезными функциями, включая воссоздание некоторых из наиболее проблемных областей интерфейсов системных вызовов Unix, устранение суперпользователя и пересмотр многих других интересных функций. "Родословная" операционной системы Plan 9 безупречна, ее конструкция элегантна, и она выявляет некоторые значительные ошибки в конструкции Unix. В отличие от большинства попыток второй системы, она создала архитектуру, которая во многих аспектах проще и более элегантна, чем архитектура ее предшественницы. Почему же Plan 9 не превзошла Unix во всем мире?

Можно назвать множество специфических причин — недостаток каких-либо серьезных попыток продвижения данной системы на рынке, ограниченная документация, большая путаница и препятствия, связанные с платой и лицензионными отчислениями. Тем, кто незнаком с Plan 9, кажется, что она функционирует в основном как опытный образец для написания интересных статей по исследованию операционных систем. Однако сама Unix ранее преодолела все подобные препятствия и привлекла преданных последователей, распространивших ее по всему миру. Почему же этого не случилось с Plan 9?

Глубокий анализ данной истории мог бы, конечно, прояснить ситуацию, но в 2003 году она такова, что Plan 9 провалилась просто потому, что не стала настолько убедительным усовершенствованием Unix, чтобы заменить свою предшественницу. По сравнению с Plan 9, Unix "скрепит, гремит и имеет очевидные пятна ржавчины", однако, она выполняет свою работу достаточно хорошо для того, чтобы удерживать позиции. Это урок для честолюбивых системных архитекторов: самым опасным врагом наилучшего решения является существующая база кода, которая просто достаточно хороша.

Некоторые идеи Plan 9 были впитаны современными Unix-системами, особенно наиболее инновационными версиями с открытым исходным кодом. А во FreeBSD файловая система /ргос смоделирована в точности, как в Plan 9, и ее можно использовать для опроса или управления работающими процессами. Системные вызовы rfork(2) в FreeBSD и clone(2) в Linux смоделированы на основе rfork(2) в Plan 9. Файловая система /ргос в Linux, кроме информации о процессах, содержит еще и множество файлов устройств, синтезированных наподобие Plan 9, которые используются для опроса и управления внутренними параметрами ядра с помощью преимущественно текстовых интерфейсов. Экспериментальные версии Linux 2003 года реализовали точки монтирования процессов, что является серьезным шагом в сторону частных пространств имен Plan 9. Различные Unix-системы с открытым исходным кодом двигаются в направлении общесистемной поддержки кодировки UTF-8, которая фактически была создана для Plan 9115.

Вполне вероятно, что со временем гораздо больше функций Plan 9 будут работать в Unix, по мере того как различные части архитектуры Unix будут плавно устаревать. Это одно из возможных направлений развития будущей Unix.

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

Каким бывает цифровой звук?

Из книги Музыкальный центр на компьютере автора Леонтьев Виталий Петрович

Каким бывает цифровой звук? На самом деле, видов «цифрового звука» – точнее, видов его представления в компьютере – может быть несколько.Уже знакомый нам «оцифрованный звук» – аналог фотографии, точная цифровая копия введенных извне звуков. Это может быть сделанная с


ВОПРОС НЕДЕЛИ К каким последствиям может привести …

Из книги Журнал «Компьютерра» №33 от 13 сентября 2005 года автора Журнал «Компьютерра»

ВОПРОС НЕДЕЛИ К каким последствиям может привести … …распространение на компьютерный бизнес борьбы с «серым» импортом, подобно той, что ведется сейчас на рынке мобильных телефонов?Артем Емельяновменеджер по маркетингу ISM ComputersК самым неприятным для простого


Каким компаниям нужно вести блог?

Из книги Блоги. Новая сфера влияния автора Попов Антон Валерьевич

Каким компаниям нужно вести блог? Метки: корпоративный блог, репутация, большой бизнес, вирусное распространениеВ качестве примера напрашивается компания «Евросеть», хотя пока у нее нет своего блога. Но даже если ваша фирма не похожа на «Евросеть», перечисленные ниже


ТЕМА НОМЕРА: Yesterday: Каким будет мир в 2000 г.

Из книги Журнал «Компьютерра» № 43 от 21 ноября 2006 года автора Журнал «Компьютерра»

ТЕМА НОМЕРА: Yesterday: Каким будет мир в 2000 г. Автор: Сергей Леонов Нам не нравится их звук, и вообще, гитара — это вчерашний день. Компания Decca Records, отклонившая запись альбома группы The Beatles в 1962 г. В наше время постоянно возрастающая мощь электроники проявляется в значительно


13-Я КОМНАТА: Каким должен быть читатель

Из книги Журнал «Компьютерра» № 23 от 19 июня 2007 года автора Журнал «Компьютерра»

13-Я КОМНАТА: Каким должен быть читатель Автор: Леонид Левкович-МаслюкМы в редакции часто спорим: что именно интересует наших читателей в журнале? Вспомнив сейчас эти обсуждения, я понял, что мы упускаем из виду широко известный принцип: читателя больше всего интересует то,


Каким бывает цифровой звук?

Из книги Запись и обработка музыки и звука. Digital DJ автора Леонтьев Виталий Петрович

Каким бывает цифровой звук? На самом деле, видов «цифрового звука» – точнее, видов его представления в компьютере – может быть несколько.Уже знакомый нам «оцифрованный звук» – аналог фотографии, точная цифровая копия введенных извне звуков. Это может быть сделанная с


Глава 1 Каким должен быть компьютер

Из книги Собираем компьютер своими руками автора Ватаманюк Александр Иванович

Глава 1 Каким должен быть компьютер • Немного о компьютере• Типичные конфигурации


Unix-строки (чтение и запись Unix-файлов)

Из книги Советы по Delphi. Версия 1.0.6 автора Озеров Валентин

Unix-строки (чтение и запись Unix-файлов) Данный модуль позволяет читать и записывать файлы формата Unix.unit StreamFile;interfaceUses SysUtils;Procedure AssignStreamFile(var f: text; FileName: String);implementationConst BufferSize = 128;Type TStreamBuffer = Array[1..High(Integer)] of Char; TStreamBufferPointer = ^TStreamBuffer; TStreamFileRecord = Record  Case Integer Of  1: (   Filehandle: Integer;   Buffer:


Каким будет «облачный» iTunes Михаил Карпов

Из книги Цифровой журнал «Компьютерра» № 28 [02.08.2010 — 08.08.2010] автора Журнал «Компьютерра»

Каким будет «облачный» iTunes Михаил Карпов Опубликовано 04 августа 2010 года Уже долгое время по интернету бродят слухи о том, что компания Apple собирается перевести свой магазин iTunes в «облако». Пока что iTunes Store позволяет только покупать музыкальные и


Readitorial: Каким будет Веб 4.0? Otto Diggman

Из книги Цифровой журнал «Компьютерра» № 34 [13.09.2010 — 19.09.2010] автора Журнал «Компьютерра»

Readitorial: Каким будет Веб 4.0? Otto Diggman ОпубликованоOtto Diggman В статье "Что такое Веб 2.0", русский перевод который был опубликован в «Компьютерре», рассматривался вопрос о новом множестве правил и практических решений, позиционируемым как новый этап


20.2. Plan 9: каким представлялось будущее Unix

Из книги Искусство программирования для Unix автора Реймонд Эрик Стивен

20.2. Plan 9: каким представлялось будущее Unix Известно, как обычно представляется будущее Unix. Оно было определено исследовательской группой Bell Labs, которая построила Unix, в работе под названием "Plan 9 from Bell Labs"[149]. Операционная система Plan 9 представляла собой попытку воссоздать Unix и


КАКИМ Я ВИЖУ ЧИТАТЕЛЯ ЭТОЙ КНИГИ?

Из книги SAP Business One. Строим эффективный бизнес автора Елашкин Михаил

КАКИМ Я ВИЖУ ЧИТАТЕЛЯ ЭТОЙ КНИГИ? Что самое сложное в написании книги? Вовсе не найти материал или сложить мысли в предложения и главы. Самое сложное — это представить себе ее читателя и рассказать все, что хотел, именно ему: так, чтобы ему было интересно, чтобы он или она


Каким бывает компьютерное видео

Из книги Видео на вашем компьютере: ТВ тюнеры, захват кадра, видеомонтаж, DVD автора Буковецкая Оксана Александровна

Каким бывает компьютерное видео Современные компьютерные видеоустройства могут использоваться для решения трех достаточно несхожих задач:• захвата отдельного кадра. Для этого применяются платы захвата кадра (фрейм-грабберы) и цифровые фотоаппараты;• вывода на экран


К каким свойствам применим переход

Из книги CSS3 для веб-дизайнеров автора Сидерхолм Дэн

К каким свойствам применим переход Мы применили переход к свойствам background и color. Но есть много других свойств, на которые можно наложить переход, включая width, opacity, position и font-size. Таблица всех свойств (и их типов значений) опубликована на сайте W3C


Знать, каким рискам вы подвергаетесь

Из книги IT-безопасность: стоит ли рисковать корпорацией? автора Маккарти Линда

Знать, каким рискам вы подвергаетесь Знаете ли вы, какому риску подвергается информация в сети вашей компании? Большинство хакеров ищут информацию, которую можно продать: финансовую информацию, информацию о клиентах, номера кредитных карточек. В «Обзоре компьютерных


Каким разделам следует уделить особое внимание?

Из книги Продвижение порталов и интернет-магазинов автора Гроховский Леонид О.

Каким разделам следует уделить особое внимание? Форум. Хорошо работающий форум является основным источником пользовательского контента и очень важным источником низкочастотного поискового и закладочного трафика. Нередко форум является главным сервисом портала и