Developer | Return Infinity |
---|---|
Written in | Assembly |
Working state | Current |
Source model | Open source |
Initial release | 2008 |
Latest release | 1.0.0 / November 13, 2016 |
Marketing target | HPCs, HTC, Cloud computing |
Available in | English |
Platforms | x86-64 |
Kernel type | Exokernel, SASOS |
Userland | Unknown |
Default user interface | Command-line |
License | BSD License |
Official website | www |
BareMetal is an exokernel-based single address space operating system (OS) created by Return Infinity.
It is written in assembly to achieve high-performance computing with minimal footprint with a JeOS approach. The operating system is primarily targeted towards virtualized environments for cloud computing, or HPCs due to its design as a lightweight kernel (LWK). It could be used as a unikernel.
It was inspired by another OS written in assembly, MikeOS, and it is a current-day example of an operating system that is not written in C or C++, nor based on Unix-like kernels.
Multitasking on BareMetal is unusual for operating systems in this day and age. BareMetal uses an internal work queue that all CPU cores poll. A task added to the work queue will be processed by any available CPU core in the system and will execute until completion, which results in no context switch overhead.
An API is documented but, in line with its philosophy, the OS does not enforce entry points for system calls (e.g.: no call gates or other safety mechanisms).
BareMetal OS has a build script to pull the latest code, make the needed changes, and then compile C code using the Newlib C standard library.
A mostly-complete C++11 Standard Library was designed and developed for working in ring 0. The main goal of such library is providing, on a library level, an alternative to hardware memory protection used in classical OSes, with help of carefully designed classes.