Jump to content

SPIN (operating system)

From Wikipedia, the free encyclopedia
SPIN
DeveloperUniversity of Washington
Written inModula-3
OS familyMach-like[1]
Working stateDiscontinued
Source modelOpen source
Initial release1994; 30 years ago (1994)
Final release1.0 / November 1996; 28 years ago (1996-11)
Repositorywww-spin.cs.washington.edu/Distro/docs/downloadInfo.html
Marketing targetResearch
Available inEnglish
Update methodDownload, compile
PlatformsIA-32
Kernel typeMicrokernel[2]
Official websitewww-spin.cs.washington.edu

The SPIN operating system is a research project implemented in the computer programming language Modula-3, and is an open source project. It is designed with three goals: flexibility, safety, and performance. SPIN was developed at the University of Washington.

The kernel can be extended by dynamic loading of modules which implement interfaces that represent domains. These domains are defined by Modula-3 INTERFACE. All kernel extensions are written in Modula-3 safe subset with metalanguage constructs and type safe casting system. The system also issued a special run-time extension compiler.

One set of kernel extensions provides an application programming interface (API) that emulates the Digital UNIX system call interface. This allows Unix applications to run on SPIN.[3]

References

[edit]
  1. ^ Bershad, Brian N.; Savage, Stefan; Pardyak, Przemys; Sirer, Emin Gün; Fiuczynski, Marc E.; Becker, David; Chambers, Craig; Eggers, Susan (1995). "Extensibility, safety and performance in the SPIN operating system": 267–284. {{cite journal}}: Cite journal requires |journal= (help)
  2. ^ Bershad, Brian N.; Chambers, Craig; Eggers, Susan; Maeda, Chris; Mcnamee, Dylan; Pardyak, Przemyslaw; Savage, Stefan; Sirer, Emin Gün (1994). "SPIN: an extensible microkernel for application-specific operating system services": 68–71. {{cite journal}}: Cite journal requires |journal= (help)
  3. ^ Dion, David (1996). "A User-Level Unix Server for the SPIN Operating System". {{cite journal}}: Cite journal requires |journal= (help)
[edit]