CTOS had many innovative features for its time. It was a multi-process operating system like
UNIX, but it implemented process concurrency via the message passing paradigm, as an alternative to the thread monitor locking paradigm used by most other multi-process computer operating systems.
Message passing is the concurrency paradigm of most
real-time operating systems used to reliably control physical machinery in a timely manner in resource-competitive environments, such as the
early one used by NASA in the
Apollo Lunar Module (LEM) which famously flew
Armstrong and
Aldrin to the surface of the moon, with only seconds of fuel left to spare,
despite CPU overload. Message passing is also the control paradigm used between computers in networks and in multi-computer computation, such as in
internet server farms. In CTOS, the same message-passing protocol was used to implement multiple processes within each workstation and to distribute system services (shared files, email servers, etc.) across the cluster of workstations.
Thread monitor locking, on the other hand, is the internal concurrency paradigm of most mainframe, minicomputer, personal computer and personal device operating systems, and it is embedded in some concurrent programming languages such as
Java. System access in CTOS was controlled with a user password and volume or disk passwords. Each volume and directory were referenced with delimiters to identify them, and could be followed with a file name, depending on the operation, i.e. {Network Node}[VolumeName]FileName. It was possible to custom-link the operating system to add or delete kernel features, but installation of modular services (system processes) occurred at boot time. CTOS supported a transparent
peer-to-peer network carried over serial
RS-422 cables (daisy-chain topology) and in later versions carried over
twisted pair (
star topology) with
RS-422 adapters using CTOS Cluster Hub-R12 designed by Paul Jackson Ph.D. of SumNet Pty Limited in Australia. Each workgroup (called a "cluster") was connected to a server (called a "master"). The workstations, potentially
diskless, could be
booted over the cluster network from the master, or they could be locally booted from an attached hard drive.
Inter-process communication (IPC) in CTOS is based on a "request" and "respond" messaging foundation that enhances Enterprise Application Integration among services for both internal and external environments. Thus CTOS was well known for its message-based
Microkernel Architecture. Applications are added as services to the main server. Each client consumes the services via its own mailbox called an "exchange" using well-published message formats. The communication works on "request codes" that are owned by the service. The operating system maintains the exchanges, message queues, scheduling, control, message passing, etc., while the service manages the messages at its own exchange using "wait", "check", and "respond" system calls. CTOS ran on
Intel x86 computers, and could run concurrently with
Windows NT on
Unisys PC. As initially deployed on the
Intel 8086 and
Intel 80186 microprocessors, it was limited to an address space of up to 1 megabyte of RAM. Later on the
Intel 80286 support for protected mode was added, breaking the 1 megabyte barrier common to PCs of that era. For the
Intel 80386 virtual memory (paging) was added. The system
API was presented to both
high-level languages and
assembly language. ==Programs==