News (more »)


Building sanos under sanos (click to see video).

Sanos Operating System Kernel

By Michael Ringgaard

Sanos is a minimalistic 32-bit x86 operating system kernel for network server appliances running on standard PC hardware. The kernel implements basic operating system services like booting, memory management, thread scheduling, local and remote file systems, TCP/IP networking and DLL loading and linking. You can use Sanos as a small kernel for embedded server applications written in C or as a JeOS (Just enough Operating System). Sanos has a fairly standard POSIX based API and an ANSI Standard C library.

The kernel was developed as part of an experiment on investigating the feasibility of running java server applications without a traditional operating system only using a simple kernel. A win32 layer allowed the Windows version of a standard HotSpot JVM to run under Sanos, essentially providing a JavaOS platform for server applications.

While Sanos is self-contained in the sense that it can build itself, it can be cross-compiled under either Windows using Microsoft Visual C, or under Linux using GCC. Sanos applications can either be built under Windows using MSVC or under Sanos itself using the Sanos SDK.

Sanos is open source under a BSD style license. Please see the COPYING file for details.

If you want to take a quick look at Sanos you can download a QEMU emulator pre-configured with Sanos. Unzip this file to a directory and double-click on the runsanos.cmd file. This starts an instance of QEMU running Sanos.