Sanos is a minimalistic 32-bit x86 OS 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 allows the Windows version of the standard HotSpot JVM to run under Sanos, essentially providing a JavaOS platform for server applications. This enables you to run java server applications, like tomcat and jboss, without the need to install a traditional host operating system like Windows or Linux. Only a standard Java HotSpot VM and the Sanos kernel are needed.
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. If you are using a Chrome browser you can run Sanos directly in your browser.
Click on the topics below for further information, or send me an email if you have any questions, comments or problems regarding Sanos. You can also check out the Sanos Blog for news on Sanos.