UNOS (operating system)

UNOS is the first, now discontinued, 32-bit Unix-like real-time operating system (RTOS) with real-time extensions. It was developed by Jeffery Goldberg, PhD. who left Bell Labs after using Unix and became VP of engineering for Charles River Data Systems (CRDS), now defunct. UNOS was written to capitalize on the first 32-bit microprocessor, the Motorola 68k central processing unit (CPU). CRDS sold a UNOS based 68K system, and sold porting services and licenses to other manufacturers who had embedded CPUs.

UNOS
DeveloperCharles River Data Systems
Written inC
OS familyUnix-like
Working stateHistoric
Latest release9.3.3+ / July 15, 1997 (1997-07-15)
Marketing targetReal-time data acquiring and processing
PlatformsMotorola 68k, Intel 80486
Kernel typeMonolithic

History

Jeff Goldberg created an experimental OS using only eventcounts for synchronization, that allowed a preemptive kernel, for a Charles River Data Systems (CRDS) PDP-11. CRDS hired Goldberg to create UNOS and began selling it in 1981.[1]

UNOS was written for the Motorola 68000 series processors. While compatible with Version 7 Unix, it is also an RTOS. CRDS supported it on the company's Universe 68 computers, as did Motorola's Versabus systems.[2] CRDS's primary market was OEMs embedding the CRDS unit within a larger pile of hardware, often requiring better real-time response than Unix could deliver.

UNOS has a cleaner kernel interface than UNIX in 1981. There was e.g., a system call to obtain ps information instead of reading /dev/kmem.

UNOS required memory protection, with the 68000 using an MMU developed by CRDS; and only used Motorola MMUs after UNOS 7 on the 68020 (CRDS System CP20) (using the PMMU (MC68851 PMMU)).

UNOS was written in the programming languages C and assembly language, and supported Fortran, COBOL, Pascal, and Business Basic.

Limits

UNOS from CRDS never supported paged VM and multiprocessor support had not been built in from the start, so the kernel remained mostly single-threaded on the few multiprocessor systems built. A UNOS variant enhanced by H. Berthold AG under the name vBertOS added demanded page loading and paged processes in 1984, but was given up in favor of SunOS because of the missing GUI and the missing networking code in Spring 1985, when Berthold imported the first Sun to Europe.

gollark: ++exec```haskellimport Unsafe.Coercedata Would = Seriously Int deriving Showtype Mad = ()data Are = Are Mad deriving Showtype Is = Aredata You = You Are Mad deriving Showdata Thing = This Thing Is Mad deriving Showdata This = Thing Mad deriving Shownewtype Do = Do (Thing -> You -> [Thing])data Why = Why Would You Do This deriving Showinstance Show Do where show x = "Do the thing!"why :: Whywhy = Why would you do_ this where would = Seriously 0 you = You (Are ()) () do_ = Do $ \_ _ -> [] this = Thing ()main = print why```
gollark: Very cool.
gollark: ++exec```haskellimport Unsafe.Coercedata Would = Seriously Why Int deriving Showtype Mad = ()data Are = Are Mad deriving Showtype Is = Aredata You = You Are Mad deriving Showdata Thing = This Thing Is Mad deriving Showdata This = Thing Mad deriving Shownewtype Do = Do (Thing -> You -> [Thing])data Why = Why Would You Do This deriving Showinstance Show Do where show x = "Do the thing!"why :: Whywhy = Why would you do_ this where would = unsafeCoerce Why you = You (Are ()) () do_ = Do $ \_ _ -> [] this = Thing ()main = print why```
gollark: ++exec```haskellimport Unsafe.Coercedata Would = Seriously Why Int deriving Showtype Mad = ()data Are = Are Mad deriving Showtype Is = Aredata You = You Are Mad deriving Showdata Thing = This Thing Is Mad deriving Showdata This = Thing Mad deriving Shownewtype Do = Do (Thing -> You -> [Thing])data Why = Why Would You Do This deriving Showinstance Show Do where show x = "Do the thing!"why :: Whywhy = Why would you do_ this where would = unsafeCoerce you you = You (Are ()) () do_ = Do $ \_ _ -> [] this = Thing ()main = print why```
gollark: ?!?

References

  1. "Multics Significance". Retrieved August 15, 2015.
  2. Fiedler, Ryan (October 1983). "The Unix Tutorial / Part 3: Unix in the Microcomputer Marketplace". Byte. p. 132. Retrieved 30 January 2015.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.