SPIN (operating system)
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.
| Developer | University of Washington | 
|---|---|
| Written in | Modula-3 | 
| OS family | Mach-like[1] | 
| Working state | Discontinued | 
| Source model | Open source | 
| Initial release | 1994 | 
| Final release | 1.0 / November 1996 | 
| Repository | www-spin | 
| Marketing target | Research | 
| Available in | English | 
| Update method | Download, compile | 
| Platforms | IA-32 | 
| Kernel type | Microkernel[2] | 
| Official website | www-spin | 
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
    
-  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)
-  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)
-  Dion, David (1996). "A User-Level Unix Server for the SPIN Operating System". {{cite journal}}: Cite journal requires|journal=(help)
