Data General AOS
| Industry | Computer software |
|---|---|
| Founded | 1968 |
| Products | AOS, AOS/VS, AOS/RT32, AOS/VS II, MV/UX, DG/UX |
Data General AOS (Advanced Operating System) refers to a series of operating systems created by Data General for their 16-bit Eclipse C, M, and S minicomputer models. This line of OS eventually progressed into AOS/VS and AOS/RT32 in 1980, followed by AOS/VS II in 1988, designed for the 32-bit Eclipse MV family.
Overview
The AOS/VS system utilized the Eclipse MV hardware’s 8-ring protection model, with ring 0 holding the highest privilege and ring 7 the lowest. The core kernel of AOS/VS ran at ring 0, while ring 1 was designated for managing virtual address translation structures. Ring 2 was reserved for forthcoming kernel features. The Agent component, responsible for validating system calls, managing I/O buffers, and ensuring compatibility, executed in ring 3. Various Data General applications, such as the INFOS II DBMS, operated in ring 4. Rings 5 and 6 were seldom used by user-level programs except for substantial software packages like the MV/UX inner-ring emulator and Oracle Database on ring 5. All user-level applications executed within ring 7.
In terms of functionality, AOS software outperformed competing PDP-11 operating systems. Its native 16-bit applications were fully compatible with AOS/VS and AOS/VS II running on the 32-bit Eclipse MV platform. As Data General's premier software offering, AOS/VS (Advanced Operating System/Virtual Storage) featured a command-line interface (CLI) capable of handling advanced scripting along with DUMP/LOAD utilities and customizable modules.
A distinctive Easter egg existed within the original 16-bit CLI referencing "Xyzzy," the internal codename for the AOS/VS 32-bit OS. Entering "xyzzy" produced the response "Nothing Happens" in the original CLI; however, under the 32-bit CLI of AOS/VS II, it returned "Twice As Much Happens."
A customized version of System V.2 Unix called MV/UX operated atop AOS/VS. Additionally, DG/UX—a further adaptation of System V—was developed for the Eclipse MV series and subsequently extended to support the 88K and x86 AViiON server lines.
Both the AOS and AOS/VS kernels were fully implemented in assembly language. Most utility programs were authored in DG/L, a dialect of ALGOL/60. Initially developed as direct ports from AOS source code, many utilities were later rewritten to take advantage of the expanded 32-bit address space, resulting in enhanced capabilities, improved performance, and greater stability compared to their earlier versions.
Session
**** Atari Software Development HCD1 / Batch Output Log **** AOS/VS 3.07 / EXEC 3.07 19-JAN-84 10:11:01 QPRI=254 SEQ=31324 Input File -- :UDD:SYSTEMS:850:?031.CLI.004.JOB (Will be deleted after processing) List File -- :QUEUE:NORDIN.LIST.31324 -------- Last Message Update 12-JAN-84 16:06:08 Atari Software Development System HCD1 Scheduled Backup (System Shutdown): Saturday 21-Jan-84 9:30-11:30am See HELP *COMMANDS, HELP *PSEUDO, HELP, APHELP, and ?MHELP. Use DISP FUNC in SED for default function key commands list. -------- Last Previous Login 19-JAN-84 10:09:45 * Searchlist :UDD:NORDIN:UTIL :UDD:NORDIN:LINKS :C :UTIL : AOS/VS CLI REV 03.03.00.00 19-JAN-84 10:11:05 Ý SEARCHLIST :UDD:SYSTEMS:UTIL,:UDD:NORDIN:UTIL,:UDD:NORDIN:LINKS,:C,:UTIL,: Ý DIRECTORY :UDD:SYSTEMS:850 Ý DEFACL SYSTEMS,OWARE,A.JOE,OWARE,A.OLIVIA,OWARE,ARKEN,OWARE,BLOTCKY,OWARE,NORDIN,OWARE,TITTSLER,OWARE,FOWKES,OWARE Ý CAMAC R850AMAC H=R850AMAC.OBJ L=R850AMAC.PRN R=F SL=132 ATARI CAMAC Assembler Version 1.0A Copyright 1981 ATARI Inc. Enter source file name and options d:R850AMAC h=d:R850AMAC.OBJ l=d:R850AMAC.PRN R=F SL=132 Pass 1 - Reading D1:R850AMAC. Pass 2 - Reading D1:R850AMAC. No errors detected; 669 labels processed; $67E8 memory free. � ATARI CAMAC Assembler Version 1.0A Copyright 1981 ATARI Inc. Enter source file name and options Ý Ý End of File AOS/VS CLI Terminating 19-JAN-84 10:12:06 Process 42 Ended Elapsed Time 0:01:06 (Other jobs same username) User 'NORDIN' Logged Off 19-JAN-84 10:12:07 **** * List file empty; printing skipped ****