|This article does not cite any references or sources. (April 2007)|
|Developer||Texas Instruments GSI|
|OS family||Real-time operating systems|
|Platforms||Texas Instruments 980 minicomputer|
DSOS (Deep Six Operating System) was a real-time operating system (sometimes referred to as an operating system kernel) developed by Texas Instruments' Geophysical Services division (GSI) in the mid-1970s.
The Geophysical Services division of Texas Instruments' main business was to search for oil. They would collect data in likely spots around the world, process that data using high performance computers, and produce analyses that guided oil companies toward promising sites for drilling.
Much of the oil being sought was to be found beneath the ocean, hence GSI maintained a fleet of ships to collect seismic data from remote regions of the world. In order to do this properly is was essential that the ships be navigated precisely - if you find evidence of oil, you can't just mark an "X" on a tree - the oil is thousands of feet below the ocean and you are typically hundreds of miles from land. But this was a decade or more before GPS existed, thus the processing load to keep an accurate picture of "where you are" was considerable.
The GEONAV systems, which used DSOS (Frailey, 1975) as their operating system, performed the required navigation and, in addition, collected, processed and stored the seismic data being received in real-time.
Deep Six Operating System
The name "Deep Six Operating System" was the brainchild of Phil Ward (subsequently a world-renowned GPS expert) who, at the time, was manager of the project and slightly skeptical of the computer science professor, Dennis Frailey, who insisted that an operating system was the solution to the problem at hand. In a sense the system lived up to its name, according to legend. Supposedly one of the ships hit an old WWII sea mine off the coast of Egypt and sank while being navigated by GEONAV and DSOS.
Why an Operating System?
In the 1970s, most real-time applications did not use operating systems because the latter were perceived as adding too much overhead. Typical computers of the time had barely enough computing power to handle the tasks at hand. Moreover, most software of this type was written in assembly language. As a consequence, real-time systems were classic examples of "spaghetti code" - complex masses of assembly language software using all sorts of machine-dependent tricks to achieve maximum performance.
DSOS ran on a Texas Instruments 980 minicomputer being used for marine navigation on GSI's fleet. DSOS was created to bring some order to the chaos that was typical of real-time system design at that time. The 980 was, for its time, a relatively powerful small computer that offered memory protection and multiple-priority interrupt capabilities. DSOS was designed to exploit these features.
DSOS (Frailey, 1975) was one of the pioneering efforts in real-time operating systems. Incorporating many of the principles being introduced at the time in mainframe systems, such as semaphores, memory management, task management and software interrupts, it used a clever scheme to assure appropriate real-time performance while providing many services previously uncommon in the real-time domain (such as an orderly way to communicate with external devices and computer operators, multitasking, maintenance of records, a disciplined form of inter-task communication, a reliable real-time clock, memory protection, and debugging support). It remained in use for at least three decades and it demonstrated that, if well designed, an operating system can actually make a real-time system faster (and vastly more maintainable) than what had been typical before. Today, almost all real-time applications use operating systems of this type.
- Frailey, Dennis J., "DSOS - A Skeletal, Real-Time, Minicomputer Operating System," Software - Practice and Experience, Vol. 5, no. 1 (January, 1975), 5-18.