Language based OS design
Posted: Fri Oct 25, 2013 10:19 am
Here are some links to info for those who wish to implement a language based OS.
These are not the usual type of OS described around these parts so this sort of info might be new to some of you. What is a language based OS? Imagine an OS and systems programming environment all in the same package and you'll have a fairly good idea what it is all about. Some of these systems are a million miles from the Unix world which dominates many of the thoughts and designs of posters to this forum. I post these links as "interesting info", not necessarily as an indication of "how it should be done" (even if I do prefer this way of doing things myself).
Please feel free to add to the list!
Smalltalk-80 The Language and its Implementation (book).
http://stephane.ducasse.free.fr/FreeBoo ... uebook.pdf
Chapters 26 to 30 describe the virtual machine (compiler, bytecode interpreter, memory management).The language implements processes and semaphores and specifies how the mouse, graphics display and keyboard should work and interface with the virtual machine. OS developers will recognise an awful lot here.
One of the Smalltalk machines that was built using info from this book is shown here:
A whole host of manuals for that system can be found here:
http://bitsavers.trailing-edge.com/pdf/tektronix/44xx/
Parlog as a Systems Programming Language (Ph.D. thesis)
https://archive.org/download/parlogasas ... 550mbp.pdf
How a parallel logic programming language (PARLOG) can be used for OS development. An OS written in a declarative programming language? This is a real eye opener!
Lisp machines (manufacturer's docs)
Documents covering the hardware architecture and system software for various Lisp machines:
TI Explorer:http://bitsavers.trailing-edge.com/pdf/ti/explorer/
MIT CADR:http://bitsavers.trailing-edge.com/pdf/mit/cadr/
MIT CONS:http://bitsavers.trailing-edge.com/pdf/mit/cons/
Symbolics machines:http://bitsavers.trailing-edge.com/pdf/symbolics/
Parallel Inference Machine Operating System (PIMOS) (research papers)
http://www.jipdec.or.jp/archives/icot/A ... eIRT-3.pdf
http://www.jipdec.or.jp/archives/icot/A ... RERR-1.pdf
http://www.jipdec.or.jp/archives/icot/A ... RERR-2.pdf
This is the OS used by the second stage of the Japanese 5th Generation Computer Systems project. This OS is written in a parallel logic programming language - KL1. Quite similar to the PARLOG example above.
Sequential Inference Machine Operating System (SIMPOS) (research papers)
http://www.jipdec.or.jp/archives/icot/A ... 84e004.pdf
http://www.jipdec.or.jp/archives/icot/A ... 84e006.pdf
The predecessor to PIMOS - sequential not parallel.
These are not the usual type of OS described around these parts so this sort of info might be new to some of you. What is a language based OS? Imagine an OS and systems programming environment all in the same package and you'll have a fairly good idea what it is all about. Some of these systems are a million miles from the Unix world which dominates many of the thoughts and designs of posters to this forum. I post these links as "interesting info", not necessarily as an indication of "how it should be done" (even if I do prefer this way of doing things myself).
Please feel free to add to the list!
Smalltalk-80 The Language and its Implementation (book).
http://stephane.ducasse.free.fr/FreeBoo ... uebook.pdf
Chapters 26 to 30 describe the virtual machine (compiler, bytecode interpreter, memory management).The language implements processes and semaphores and specifies how the mouse, graphics display and keyboard should work and interface with the virtual machine. OS developers will recognise an awful lot here.
One of the Smalltalk machines that was built using info from this book is shown here:
A whole host of manuals for that system can be found here:
http://bitsavers.trailing-edge.com/pdf/tektronix/44xx/
Parlog as a Systems Programming Language (Ph.D. thesis)
https://archive.org/download/parlogasas ... 550mbp.pdf
How a parallel logic programming language (PARLOG) can be used for OS development. An OS written in a declarative programming language? This is a real eye opener!
Lisp machines (manufacturer's docs)
Documents covering the hardware architecture and system software for various Lisp machines:
TI Explorer:http://bitsavers.trailing-edge.com/pdf/ti/explorer/
MIT CADR:http://bitsavers.trailing-edge.com/pdf/mit/cadr/
MIT CONS:http://bitsavers.trailing-edge.com/pdf/mit/cons/
Symbolics machines:http://bitsavers.trailing-edge.com/pdf/symbolics/
Parallel Inference Machine Operating System (PIMOS) (research papers)
http://www.jipdec.or.jp/archives/icot/A ... eIRT-3.pdf
http://www.jipdec.or.jp/archives/icot/A ... RERR-1.pdf
http://www.jipdec.or.jp/archives/icot/A ... RERR-2.pdf
This is the OS used by the second stage of the Japanese 5th Generation Computer Systems project. This OS is written in a parallel logic programming language - KL1. Quite similar to the PARLOG example above.
Sequential Inference Machine Operating System (SIMPOS) (research papers)
http://www.jipdec.or.jp/archives/icot/A ... 84e004.pdf
http://www.jipdec.or.jp/archives/icot/A ... 84e006.pdf
The predecessor to PIMOS - sequential not parallel.