LOSAK is a Lisp operating system kernel implemented as a compiler. LOSAK is also the name of the dialect of Lisp used. This project is comprised of two parts: the LOSAK language, and an example operating system that is built on top of LOSAK. The sample OS provides a multitasking read-eval-print loop. The current release consists of this environment on a bootable CD image, along with all of the source code used to build the image.
The LOSAK compiler/kernel is now feature complete, but may still warrant some performance improvements. It provides pre-emptive multitasking, strict seperation of processes with per-process memory limits, real-time garbage collection, and a small standard library.
The example OS built on top of the LOSAK kernel is currently little more than a proof of concept.
Download the latest release from the the project page, and extract the iso image. This is a bootable CD image suitable for running under qemu or bochs (Or writing to an actual CD ROM). So, for instance if you have qemu installed on Gnu/Linux, you can cd to the appropriate directory and run this command:
qemu -cdrom losak.iso
This will launch the OS inside an emulator window.
The release branch of the code is included on the CD image under the "src" directory. You can also fetch the code from our source repository:
git clone git://git.code.sf.net/p/losak/code losak
You can then bootstrap the compiler from the source directory using the default target from the Makefile:
makeYou can also run the compiler test suite:
make testsAnd you can build the sample kernel via:
make bin/kImageYou can then run it inside of QEMU with:
qemu -kernel bin/kImage
Brief overview of the LOSAK dialect of Lisp.
Screen shots of the system running under bochs.
The initial concept behind the project (originally posted here).