Saturday, August 8, 2015

about Domain/OS

Domain/OS is the operating system used by the Apollo/Domain line of workstations manufactured by Apollo Computer, Inc. during the late 1980s, as the successor to the one previously used, AEGIS. It was 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 their HP-UX Unix variant. HP ended final support for Domain/OS on January 1, 2001.

AEGIS

AEGIS was distinctive mainly for being designed for the networked computer, as distinct from its competitors, which were essentially standalone systems with added network features. The prime examples of this were the file system, which was fully integrated across machines, as opposed to Unix which even now draws a distinction between file systems on the host system and on others, and the user administration system, which was fundamentally network-based. So basic was this orientation that even a standalone Apollo machine could not be configured without a network card.
Otherwise, AEGIS was similar to other workstations of the time, in that it used a high-resolution graphics screen and mouse to provide a type of GUI which, however, lacked almost all the tools (such as a directory browser) taken for granted today - the single exception being a Notepad-like text editor. Instead, the user was given a command line window. This was not a problem since, usually, the machine would have been bought for a specific purpose, and the user would simply invoke the one or two packages he or she was interested in, typically a CAD or DTP system. Administrators were expected to work solely from the command line. The AEGIS command interface was similar to Unix, in that it had a command line interpreter which understood pipes, redirection, scripting, etc., and invoked other commands as separate programs, but the actual commands themselves were designed to be easier to remember and use than their sometimes cryptic Unix equivalents, and wildcards were expected to be expanded by individual commands rather than by the command line interpreter itself. One noticeable and very useful feature was the ability to embed environment variables in symbolic links, which, for example, allowed the user to switch between different versions of Unix simply by setting the SYSTYPE environment variable accordingly; symbolic links then pointed to the correct versions of the files.

Domain/OS implemented functionality derived from both System V and early BSD Unix systems. It improved on AEGIS by providing a core OS upon which the user could 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) had had an optional product called Domain/IX available, which provided a similar capability, but with some drawbacks, principally the fact that core administrative tasks still required AEGIS commands. Also, the SR9 permissions system was not fully compatible with Unix behaviour. Domain/OS provided new administrative commands and a more complex permissions system which could be configured to behave properly under any of the three environments. Domain/OS also provided an improved version of the X Window System, complete with VUE (HP's predecessor to CDE), but performance tended 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 were much more reliable. However, later HP/Apollo machines (the DN10000, DN2500 and 4xx series workstations) could only run SR10.
Unlike many operating systems of the day, which were written in C or assembly language, many Domain/OS components were written in Pascal, although compilers were available for C, C++, Pascal, and Fortran.
All of the distributed administration features of Domain/OS were 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 to this day in protocol names such as ncacn_http.

History

Apollo Domain 8.0 was released in 1984; 10.3.5 in 1988-91. Domain/OS incorporated several ideas from MULTICS, including single level store and dynamic linking.

No comments: