Cosmos (operating system)
Cosmos | |
---|---|
![]() Screenshot of a Cosmos test shell booted in QEMU | |
Developer | Cosmos Project |
Working state | Publicly released/under development |
Source model | Open source |
Repository | |
Kernel type | Microkernel |
License | BSD License |
Official website | http://www.gocosmos.org/ |
Cosmos is an open source operating system written in C#. Cosmos also encompasses a compiler (IL2CPU) for converting Common Intermediate Language (.NET) bytecode into native instructions. The operating system is compiled together with a user program and associated libraries (written in any .NET language) using IL2CPU to create a bootable standalone native binary. The binary can be run off a floppy, usb key, or inside a VM. Cosmos is in early stages of development. The currently supported architecture is x86, with more planned, and although the system is aimed at C#, it can be used with most .NET compliant languages. Cosmos is primarily intended for use with Microsoft's .NET Framework, however it can also be compiled using Mono.
According to the Cosmos website, Cosmos is a backronym for C# Open Source Managed Operating System, however the name was chosen before the meaning. Cosmos does not currently aim to become a full operating system, but rather a toolkit to allow other developers to simply and easily build their own operating systems, or as one of the project leaders stated, to act as "operating system Legos". It also functions as an abstraction layer, hiding much of the inner workings of the hardware from the eventual developer.
The current release of Cosmos is Milestone 3 (released 29 March 2009), however work on future releases is well underway. Most work on Cosmos is currently aimed at developing a network interface for the system, with the system already supporting some network cards and some of the features of TCP/IP. Two versions of Cosmos are currently available, the (more up-to-date) source code version and the release version (known as the User Kit). The source version is intended for anyone who wants to help develop the kernel while the user kit is designed for anyone who just wants to use Cosmos to develop their own operating system. For some time prior to the release of Milestone 3 it was recommended that all users download the source code version, as the previos Milestone 2 user kit was becoming outdated.