IncludeOS is a minimal,
open source
Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use and view the source code, design documents, or content of the product. The open source model is a decentrali ...
,
unikernel
A unikernel is a type of computer program that is static linking, statically linked with the operating system code on which it depends. Unikernels are built with a specialized compiler that identifies the operating system services that a program ...
operating system for cloud services and
IoT, developed by Alf Walla and Andreas Åkesson. IncludeOS allows users to run
C++ applications in the cloud without any operating system.
IncludeOS runs on
virtual machine
In computing, a virtual machine (VM) is the virtualization or emulator, emulation of a computer system. Virtual machines are based on computer architectures and provide the functionality of a physical computer. Their implementations may involve ...
s like
Linux KVM, and VMWare
ESXi/Fusion.
IncludeOS applications boot in about 300 ms. On Solo5/uKVM from
IBM Research
IBM Research is the research and development division for IBM, an American Multinational corporation, multinational information technology company. IBM Research is headquartered at the Thomas J. Watson Research Center in Yorktown Heights, New York ...
, boot times as low as 10 milliseconds are possible.
Architecture
The minimalist architecture of IncludeOS means that it does not have any
virtual memory
In computing, virtual memory, or virtual storage, is a memory management technique that provides an "idealized abstraction of the storage resources that are actually available on a given machine" which "creates the illusion to users of a ver ...
space. In turn, therefore, there is no concept of either
system calls
In computing, a system call (syscall) is the programmatic way in which a computer program requests a service from the operating system on which it is executed. This may include hardware-related services (for example, accessing a hard disk drive ...
or
user space
A modern computer operating system usually uses virtual memory to provide separate address spaces or regions of a single address space, called user space and kernel space. This separation primarily provides memory protection and hardware prote ...
.
References
{{reflist , refs=
[{{cite web
, author= Stig Øyvann , date= November 12, 2018 , df= ymd
, url= https://www.zdnet.com/article/iot-security-and-linux-why-includeos-thinks-it-has-the-edge/
, title= IoT security and Linux: Why IncludeOS thinks it has the edge
, website= ZDNet
]
External links
IncludeOSon GitHub
IncludeOS blog* Alfred Bratterud
Deconstructing the OS: The devil’s In the side effects CppCon 2017 presentation
C++ Weekly – Ep 31 – IncludeOS
Computing platforms
Free software operating systems
Software using the Apache license
Software companies of Norway
Free software programmed in C++
IA-32 operating systems
X86-64 operating systems