Cosmos (C# Open Source Managed Operating System) is an operating system development kit which uses .NET, alongside the custom IL2CPU compiler to convert (most) C# code into a working bare-metal OS. Despite C# in the name, any .NET-based language can be used, which includes: VB.NET, IronPython, F# and more. Cosmos itself and its kernel routines are primarily written in C#, and thus the Cosmos name.
In a project, Cosmos can be thought of as a compiler and a sort-of standard library for a project. It gives the user access to often hard to find or otherwise difficult to understand tools.
The following is a non-exhaustive list of features that Cosmos offers:
- Low level assembly access and pointer memory control
- A basic (and unstable at the moment) filesystem
- Most features found in the .NET core library
- A CPU/FPU accelerated math library
- A basic graphics interface
- A basic network interface
- A basic audio interface
Note
Use embeded resources instead of the FS for now.
For instructions on how to install and use Cosmos, please visit the Cosmos website. For documentation and technical information, see the Cosmos Documentation.
If you have questions about how to use Cosmos, want to show off what you have made or have general questions, go check out GitHub Discussions. Alternatively, you can also join our Discord server! If you think you found a bug in Cosmos, please check existing issues first before opening a new one.