The Sophisticated Operating System,[1] or SOS (/sɔːs/),[2] is the primary operating system of the Apple III computer. SOS was developed by Apple Computer and released in October 1980.

Apple SOS
Boot screen
DeveloperApple Computer
OS familySOS
Working stateDiscontinued
Source modelClosed source
Initial releaseJanuary 1980; 44 years ago (1980-01)
Latest release1.3 / January 1, 1980; 44 years ago (1980-01-01)
Update methodManual
PlatformsApple III
Kernel typeMonolithic kernel
Default
user interface
Full screen text mode
LicenseApple Software License Agreement

In 1985, Steve Wozniak, while critical of the Apple III's hardware flaws, called SOS "the finest operating system on any microcomputer ever".[3]

Technical details

edit

SOS is a single-tasking single-user operating system. It makes the resources of the Apple III available in the form of a menu-driven utility program as well as a programming application programming interface (API). A single program is loaded at boot time, called the interpreter. Once loaded, the interpreter can then use the SOS API to make requests of the system. The SOS API is divided into four main areas:

  1. File Calls: Create, destroy, rename, open, close, read, write files; set, get prefix (current working directory); set, get file information; get volume information; set, set mark, EOF, and level of files
  2. Device Calls: Get status, device number, information of a device; send device control data
  3. Memory Calls: Request, find, change, release memory segment; get segment information; set segment number
  4. Utility Calls: Get, set fence (event threshold); get, set time; get analog (joystick) data; terminate.

The Apple III System Utilities program shipped with each Apple III computer. It provides the user interface of the operating system itself, for system configuration and file management. The System Utilities program is menu-driven and performs tasks in three categories:

  1. Device-handling commands: copy, rename, format, verify volumes (drives); list devices; set time and date
  2. File-handling commands: list, copy, delete, rename files; create subdirectories; set file write protection; set prefix (current working directory)
  3. System Configuration Program (SCP): configure device drivers.[4]

SOS has two types of devices it communicates with via device drivers: character devices and block devices. Examples of SOS character devices are keyboards and serial ports. Disk drives are typical block devices. Block devices can read or write one or more 512-byte blocks at a time; character devices can read or write single characters at a time.[2]

Boot sequence

edit
 
Structure

When powered on, the Apple III runs through system diagnostics, then reads block number zero from the built-in diskette drive into memory and executes it. SOS-formatted diskettes place a loader program in block zero. That loader program searches for, loads, and executes a file named SOS.KERNEL, which is the kernel and API of the operating system. The kernel, in turn, searches for and loads a file named SOS.INTERP (the interpreter, or program, to run) and SOS.DRIVER, the set of device drivers to use. Once all files are loaded, control is passed to the SOS.INTERP program.[5]

Apple ProDOS uses the same file system as SOS. On a disk formatted by ProDOS, the ProDOS loader and SOS loader are written to blocks zero and one, respectively. The ProDOS loader includes code that can execute on an Apple III, and which will chainload the SOS loader from block one, so SOS and ProDOS can co-exist on the same volume. Some software, such as ADTPro, makes use of this to store Apple II and Apple III versions of a program on the same disk, which is then bootable on both systems.

References

edit
  1. ^ Weyhrich, Steven (7 July 2001). "DOS 3.3, ProDOS & Beyond". Apple II History. SOS/PRODOS. Archived from the original on 17 September 2008. Retrieved 2008-09-26. The operating system designed for the Apple III computer was called "SOS". This title arose from the Apple III's code name, "Sara", which itself came from the name of the daughter of engineer Wendell Sanders.
  2. ^ a b Don, Reed (1982). Apple III SOS Reference Manual (PDF). Vol. 1. Apple Computer. Retrieved 2009-10-28. This manual describes SOS (pronounced "sauce") the Sophisticated Operating System of the Apple III.
  3. ^ Williams, Gregg; Moore, Rob (January 1985). "The Apple Story / Part 2: More History and the Apple III". BYTE (interview). 10 (1). United States: UBM Technology Group: 167. ISSN 0360-5280. OCLC 637876171.
  4. ^ "Apple III Owner's Guide" (PDF). Apple Computer. 1982. Retrieved 2008-09-28.
  5. ^ Jeppson, John (May 1983). "John Jeppson's Guided Tour of Highway III". Softalk. 3 (9). Softalk Publishing: 100–112. ISSN 0274-9629. OCLC 6729571.
edit