Domain/OS: История и особенности устаревшей операционной системы Apollo/Domain.
Domain/OS
Domain/OS: устаревшая ОС для рабочих станций Apollo Computer. Разработана в 1981 (AEGIS), поддержка прекращена HP в 2001. Ранняя распределенная система.
Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
Прекращенная операционная система
Discontinued operating system
Domain/OS — это прекращенная операционная система, использовавшаяся в линейке рабочих станций Apollo/Domain, производимых компанией Apollo Computer. Изначально она была выпущена в 1981 году под названием AEGIS, а в 1988 году была переименована в Domain/OS после добавления в операционную систему сред Unix. Это одна из первых распределенных операционных систем. Hewlett Packard поддерживала операционную систему в течение короткого времени после приобретения Apollo, но впоследствии прекратила выпуск этой линейки продуктов в пользу HP-UX. HP окончательно прекратила поддержку Domain/OS 1 января 2001 года.
Domain/OS is the discontinued operating system used by the Apollo/Domain line of workstations manufactured by Apollo Computer. It was originally launched in 1981 as AEGIS, and was rebranded to Domain/OS in 1988 when Unix environments were added to the operating system. It is one of the early distributed operating systems. Hewlett Packard supported the operating system for a short time after they purchased Apollo, but they later ended the product line in favor of HP UX. HP ended final support for Domain/OS on January 1, 2001.
AEGIS
AEGIS отличается прежде всего тем, что разрабатывалась для работы в сети, в отличие от конкурентов, которые по сути являлись автономными системами с добавленными сетевыми функциями. Наглядными примерами этого служат файловая система, полностью интегрированная между машинами, в отличие от Unix, который различает файловые системы на хост-системе и на других, и система администрирования пользователей, изначально ориентированная на сеть. Эта сетевая направленность настолько фундаментальна, что даже автономный компьютер Apollo нельзя настроить без сетевой карты. Domain/OS реализует функциональность, основанную как на System V, так и на ранних системах BSD Unix. Она улучшает AEGIS, предоставляя базовую ОС, на которую пользователь может установить любую или все три среды: AEGIS, System V Unix и BSD Unix. Это было сделано для обеспечения большей совместимости с Unix; версия AEGIS SR9, непосредственно предшествовавшая Domain/OS (которая сама имела номер SR10), предлагала дополнительный продукт Domain/IX, обеспечивающий схожие возможности, но с некоторыми недостатками, главным образом тем, что основные административные задачи по-прежнему требовали команд AEGIS. Кроме того, система разрешений SR9 не полностью соответствовала поведению Unix. Domain/OS предоставляет новые административные команды и более сложную систему разрешений, которую можно настроить для корректной работы в любой из трех сред. Domain/OS также включает улучшенную версию X Window System, в комплекте с VUE (предшественником CDE от HP), однако производительность, как правило, была низкой. Переход пользователей с AEGIS SR9 на Domain/OS SR10 замедлялся из-за отсутствия видимой необходимости у многих пользователей, возросших требований к дисковому пространству, новых и более сложных инструментов администрирования, более низкой производительности SR10 и наличия ошибок в SR10.0, хотя последующие версии были более стабильными. Однако более поздние компьютеры HP/Apollo (рабочие станции серий DN10000, DN2500 и 4xx) могли работать только с SR10. В отличие от многих операционных систем того времени, написанных на C или ассемблере, многие компоненты Domain/OS были написаны на Pascal. Пользователям были доступны компиляторы для C, C++, Pascal и Fortran. Все функции распределенного администрирования в Domain/OS построены на основе системы удаленных вызовов процедур NCS RPC. Хотя RPC впоследствии была прекращена поддержка вместе с операционной системой, HP внесла свой вклад в RPC в Open Software Foundation, которая включила ее язык определения интерфейса (IDL) в свой продукт DCE, а затем эта же технология использовалась для CORBA. Один из первоначальных разработчиков перешел в Microsoft, где разработал MSRPC как достаточно совместимый клон, который сегодня является центральным компонентом систем Windows. Следы этой истории можно увидеть в названиях протоколов, таких как ncacn http.
AEGIS is distinctive mainly for being designed for the networked computer, as distinct from its competitors, which are essentially standalone systems with added network features. The prime examples of this are the file system, which is fully integrated across machines, as opposed to Unix which draws a distinction between file systems on the host system and on others, and the user administration system, which is fundamentally network based. So basic is this orientation that even a standalone Apollo machine cannot be configured without a network card. Domain/OS implements functionality derived from both System V and early BSD Unix systems. It improves on AEGIS by providing a core OS upon which the user can install any or all of three environments: AEGIS, System V Unix, and BSD Unix. This was done in order to provide greater compatibility with Unix; AEGIS version SR9, which immediately preceded Domain/OS (itself numbered SR10) has an optional product called Domain/IX available, which provides a similar capability, but with some drawbacks, principally the fact that core administrative tasks still require AEGIS commands. Also, the SR9 permissions system is not fully compatible with Unix behaviour. Domain/OS provides new administrative commands and a more complex permissions system which can be configured to behave properly under any of the three environments. Domain/OS also provides an improved version of the X Window System, complete with VUE (HP's predecessor to CDE), but performance tends to be poor. User upgrading from AEGIS SR9 to Domain/OS SR10 was slowed by the fact that many users saw no requirement, by increased disk space requirements, by new and more complex administration tools, by SR10's poorer performance, and by the buggy nature of SR10.0, although later versions are more reliable. However, later HP/Apollo machines (the DN10000, DN2500 and 4xx series workstations) can only run SR10. Unlike many operating systems of the day, which were written in C or assembly language, many Domain/OS components are written in Pascal. Compilers for users are available for C, C++, Pascal, and Fortran. All of the distributed administration features of Domain/OS are built around a remote procedure call system called NCS RPC. Though RPC was later end of lifed with the operating system, HP contributed RPC to the Open Software Foundation, which incorporated its Interface Definition Language (IDL) into their DCE product, from which the same technology was later used for CORBA. One of the original developers went to work for Microsoft, where he developed MSRPC as a fairly compatible clone which today forms a central component of Windows systems. Traces of the history can be seen in protocol names such as ncacn http.
Пользовательский интерфейс
AEGIS похож на другие рабочие станции того времени, поскольку использует графический экран высокого разрешения и мышь для обеспечения графического пользовательского интерфейса под названием DM (диспетчер отображения). DM интегрирован с собственным менеджером окон операционной системы, известным как wmgr (Управляющий окнами). DM содержит две встроенные функции: текстовый редактор и протокол, являющийся своего рода виртуальным терминалом. Дополнительные функции могут быть добавлены пользовательскими программами. Одной из уникальных особенностей DM является "универсальное редактирование". Весь текст в любом из встроенных окон можно редактировать, используя один и тот же язык редактирования. Это относится и к истории, отображаемой в окне протокола, хотя этот текст доступен только для чтения. Кроме того, история не ограничена. Она начинается с момента запуска процесса, к которому она привязана, и более старая история никогда не удаляется. Каждый протокол прикреплен к миниатюрному окну ввода, где ввод процесса можно редактировать, используя тот же язык редактирования, что и в других местах. Командный интерфейс AEGIS аналогичен Unix, поскольку он имеет интерпретатор командной строки, который поддерживает конвейеры, перенаправление, скрипты и т. д., и вызывает другие команды как отдельные программы, но сами команды разработаны так, чтобы их было легче запомнить и использовать, чем их аналоги в Unix, и ожидается, что подстановочные знаки будут раскрываться отдельными командами, а не самим интерпретатором командной строки. Пользователь может встраивать переменные окружения в символические ссылки, что, например, позволяет переключаться между различными версиями Unix, соответствующим образом устанавливая переменную окружения SYSTYPE; символические ссылки затем указывают на соответствующие версии файлов.
AEGIS is similar to other workstations of the time, in that it uses a high resolution graphics screen and mouse to provide a GUI named DM (Display Manager). DM is integrated with the operating system's own window manager known as wmgr (Window Manager). The DM contains two built in functions, a text editor and a transcript, which is a kind of virtual terminal. Additional functions can be added by user programs. One of the unique features of the DM is "universal editing". All text in any of the built in windows can be edited using the same editing language. This includes the history displayed in a transcript window, although that text is read only. In addition, the history is unbounded. It starts from the birth of the process to which it is attached, and older history is never deleted. Each transcript is attached to a mini input window where the process input can be edited using the same editing language used elsewhere. The AEGIS command interface is similar to Unix, in that it has a command line interpreter which understands pipes, redirection, scripting, etc., and invokes other commands as separate programs, but the actual commands themselves are designed to be easier to remember and use than their Unix equivalents, and wildcards are expected to be expanded by individual commands rather than by the command line interpreter itself. The user may embed environment variables in symbolic links, which, for example, allows switching between different versions of Unix by setting the SYSTYPE environment variable accordingly; symbolic links then point to the appropriate versions of the files.