Encyclopedia > OS-9

  Article Content

OS-9

OS-9® is the name of a family of soft real-time, multitasking, multi-user Unix-like operating systems developed by Microware Systems Corporation largely for use in embedded systems. The first version ("level one") was written in assembly language for the Motorola 6809 processor, and provides a single 64K address space in which all processes ran; a later 6809 version ("level two") takes advantage of memory mapping hardware.

Later, OS-9/6809 was converted to Motorola 68000 assembly language and extended, and a still further extended version was written mostly in C for portability. (The portable version was initially called OS-9000.) The later versions lack the memory mapping facilities of OS-9/6809 Level Two; to them, there is a single flat address space that all processes share, and memory mapping hardware, if present, is mostly used to ensure that processes access only that memory they have the right to access.

OS-9 has a similar notion of process and I/O path to Unix, but there are some significant differences:

  • The file system is not a single tree, but instead is a forest with each tree corresponding to a device.
  • OS-9 does not have a Unix-style fork()--instead it has a system call to create a process running a specified program.
  • OS-9 processes keep track of two "current directories" rather than just one; the "current execution directory" is where it will by default look to load programs to run.
  • OS-9 has had a modular design from the beginning, influenced by the notions of how the designers of the 6809 thought software would be sold in the future as described in a three-part series of articles in Jan-Mar 1979 Byte magazine. As a consequence of the design, programs to run under OS-9 use reentrant code, so that multiple processes can execute a single copy of code in memory, and position independent code because the OS-9 kernel will load code wherever there is sufficient free space. Programs, device drivers, and file managers under OS-9 are all modules and can be loaded and unloaded as needed.

(The module structure perhaps merits more explanation: OS-9 keeps a "module directory", a list in memory of modules that are in memory either by being loaded or by being found in ROM during an initial scan at boot time. When one types a command to the OS-9 shell, it will look first for a module by the specified name and run it if there is one or look on disk for an appropriately named file if not. In OS-9/6809 and OS-9/68000, the module directory is flat, but OS-9000 made the module directory tree-structured. The shell under OS-9000 looks for an MPATH environment variable analogous to PATH indicating a sequence of module directories in which to look for modules. Modules are not only used to hold programs, but can also be created on the fly to hold data, and are the way in which OS-9 supports shared memory.)

OS-9/6809 ran on Motorola EXORbus systems using the Motorola 6809, SS-50 and SS-50C bus systems from companies such as SWTPC, Gimix, and Smoke Signal Broadcasting, STD-bus 6809 systems, and personal computers such as the Fujitsu FM-7 and FM-77 and, probably best known, the various models of the Tandy Color Computer. Even on the Color Computer and Dragon under OS-9/6809 Level One, it was possible to have more than one user running concurrently (one on the console and another via a serial connection); on a computer like the Gimix, which had more memory and I/O controllers that did not load the CPU as much, multiple users were common.

  
Actually, OS-9/6809 still runs; the Tandy Color Computer still has users and an annual conference, the Nth Annual "Last" Chicago CoCoFest, where N == 11 in 2002.A group of Canadian programmers rewrote OS-9/6809 Level II for the CoCo 3 for efficiency and to take advantage of the native mode of the Hitachi 6309, and serious CoCo users typically have the 68B09E in the CoCo 3 replaced with a 63B09E and are running the rewrite, called "NitrOS9."

The various versions of OS-9/68000 run on a wide variety of 68000 family platforms, including the Sharp X68000[?] in Japan and some personal computers intended by their designers as upgrades from the Color Computer (e.g. the 68070 or 68340-based MM/1, and other computers from Frank Hogg Laboratories and Delmar Co.). OS-9000/80x86 can be run on Intel-based PCs. OS-9000 has also been ported to the PowerPC, MIPS, some versions of Advanced RISC Machines' ARM processor, and some of the Hitachi SH family of processors.

In addition to the embedded market, where OS-9 has found application in such devices as the Fairlight CMI synthesizers, robotics, and Philips' Compact Disc-Interactive, OS-9's multiuser capabilities make it usable for a general-purpose system. There have been third-party applications written for it, such as the Dynacalc spreadsheet, the VED text formatter, and the Stylograph WYSIWYG word processor.

In 1999, nineteen years after the first release of OS-9, Apple Computer named a version of the operating system for the Macintosh "Mac OS 9". Microware sued Apple that year for trademark infringement, but a judge rejected this claim, dismissing the suit the following year. The judge said that there is little chance for confusion, but one still periodically finds postings to comp.os.os9 from Macintosh users who are at the very least confused about the purpose of the newsgroup.

External links

  • os9archive.rtsi.com (http://os9archive.rtsi.com/) is an archive of OS-9 info and software; in particular, there is an OS-9 FAQ (http://os9archive.rtsi.com/os9faq).



All Wikipedia text is available under the terms of the GNU Free Documentation License

 
  Search Encyclopedia

Search over one million articles, find something about almost anything!
 
 
  
  Featured Article
Bullying

... it merely designated anyone who assumed power for any period of time without a legitimate basis of authority. The first to have the title of "Tyrant" w ...

 
 
 
This page was created in 23.4 ms