# includeos/includeos

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/includeos-includeos).**

5,239 stars · 392 forks · C++ · Apache-2.0

## Links

- GitHub: https://github.com/includeos/IncludeOS
- Homepage: https://includeos.github.io/
- awesome-repositories: https://awesome-repositories.com/repository/includeos-includeos.md

## Topics

`cpp` `operating-system` `unikernel` `virtualization`

## Description

IncludeOS is a unikernel operating system that bundles application code with only the necessary kernel drivers into a single bootable image. It functions as a resource-efficient cloud service virtual machine and a lightweight serverless runtime environment designed to minimize memory footprints and boot times.

The project provides a Linux compatibility layer via a C library, allowing applications written for Linux to be compiled and executed within the unikernel environment. It also serves as a network appliance framework for building high-performance firewalls and load balancers using configurable TCP/IP stacks.

Broad capabilities include the creation of minimal machine images for deployment on hypervisors such as KVM, Qemu, and VMware, as well as the hardening of embedded IoT devices by preventing runtime reconfiguration. The system supports rapid service startup to optimize serverless cold starts and utilizes non-preemptive scheduling to maintain predictable latency.

## Tags

### Operating Systems & Systems Programming

- [Unikernel Build Toolchains](https://awesome-repositories.com/f/operating-systems-systems-programming/unikernel-build-toolchains.md) — Combines application code and minimal OS functionality at link-time to create resource-efficient unikernel virtual machines. ([source](https://includeos.github.io/))
- [Unikernels](https://awesome-repositories.com/f/operating-systems-systems-programming/unikernels.md) — Builds minimal bootable unikernel images that combine application code with necessary OS functions for efficient cloud deployment.
- [Boot Sequence Bypasses](https://awesome-repositories.com/f/operating-systems-systems-programming/boot-sequence-bypasses.md) — Bypasses standard operating system boot sequences to start virtualized services in milliseconds. ([source](https://cdn.jsdelivr.net/gh/includeos/includeos@main/README.md))
- [C Libraries](https://awesome-repositories.com/f/operating-systems-systems-programming/c-libraries.md) — Provides a minimal C standard library implementation to enable Linux applications to run within the unikernel environment.
- [TCP/IP Stacks](https://awesome-repositories.com/f/operating-systems-systems-programming/systems-programming/bare-metal-development/tcp-ip-stacks.md) — Implements a configurable and modular TCP/IP stack tailored for minimal cloud services.
- [Virtual Machine Image Construction](https://awesome-repositories.com/f/operating-systems-systems-programming/virtualization-emulation/virtualization-platforms/virtualization-technologies/virtual-machines/virtual-machine-image-construction.md) — Compiles and packages service binaries into bootable disk images tailored for specific hypervisors. ([source](https://cdn.jsdelivr.net/gh/includeos/includeos@main/README.md))
- [DMA-Capable Drivers](https://awesome-repositories.com/f/operating-systems-systems-programming/direct-memory-access/dma-controllers/dma-capable-drivers.md) — Implements DMA-capable drivers for network and disk I/O to maximize throughput and reduce CPU overhead.
- [Single-Address-Space Operating Systems](https://awesome-repositories.com/f/operating-systems-systems-programming/single-address-space-operating-systems.md) — Runs applications and system services in a shared memory space to eliminate context-switching overhead.
- [Non-Preemptive Scheduling](https://awesome-repositories.com/f/operating-systems-systems-programming/task-priority-management/non-preemptive-scheduling.md) — Utilizes non-preemptive scheduling to ensure predictable latency and eliminate jitter.

### Part of an Awesome List

- [Virtual Machines](https://awesome-repositories.com/f/awesome-lists/devtools/virtual-machines.md) — Provides resource-efficient machine images designed to run as specialized guests on hypervisors like KVM, Qemu, and VMware.

### Development Tools & Productivity

- [Minimal Runtime Footprints](https://awesome-repositories.com/f/development-tools-productivity/application-installers/installation-footprint-reducers/runtime-footprint-reducers/minimal-runtime-footprints.md) — Reduces initial loading latency by utilizing a minimal disk and memory footprint for rapid application startup. ([source](https://includeos.github.io/))
- [Linux Compatibility Layers](https://awesome-repositories.com/f/development-tools-productivity/platforms-runtimes-language-services/development-platforms/operating-system-environments/operating-systems/windows-development-environments/linux-compatibility-layers.md) — Provides a compatibility layer that allows Linux-targeted applications to be compiled and run with minimal changes. ([source](https://includeos.github.io/blog/))
- [Unikernel Compatibility Layers](https://awesome-repositories.com/f/development-tools-productivity/platforms-runtimes-language-services/development-platforms/operating-system-environments/operating-systems/windows-development-environments/unikernel-compatibility-layers.md) — Ships a C library that allows Linux-written applications to be compiled and executed within a unikernel environment.

### DevOps & Infrastructure

- [Minimal Base Images](https://awesome-repositories.com/f/devops-infrastructure/platform-as-a-service/minimal-base-images.md) — Creates small, bootable images by bundling services with a minimal operating system at link-time. ([source](https://cdn.jsdelivr.net/gh/includeos/includeos@main/README.md))
- [Serverless Runtimes](https://awesome-repositories.com/f/devops-infrastructure/serverless-runtimes.md) — Functions as a lightweight runtime environment that minimizes memory footprints and boot times for cloud workloads.
- [Dynamic Application Updates](https://awesome-repositories.com/f/devops-infrastructure/dynamic-application-updates.md) — Supports upgrading running services without requiring a reboot or incurring downtime. ([source](https://includeos.github.io/blog/))
- [Hypervisor Deployment Targets](https://awesome-repositories.com/f/devops-infrastructure/hypervisor-deployment-targets.md) — Runs as a specialized image across various hypervisors including KVM, Qemu, VirtualBox, and VMware ESXi. ([source](https://includeos.github.io/blog/))

### Networking & Communication

- [Network Appliance Frameworks](https://awesome-repositories.com/f/networking-communication/network-appliance-frameworks.md) — Provides a modular system for building high-performance firewalls and load balancers with configurable TCP/IP stacks.

### Programming Languages & Runtimes

- [Linux Compatibility Layers](https://awesome-repositories.com/f/programming-languages-runtimes/linux-based-runtimes/emulated-linux-environments/application-execution-environments/linux-compatibility-layers.md) — Allows existing Linux applications to run in a minimal virtualized environment using a compatibility C library.
- [Cold Start Optimizations](https://awesome-repositories.com/f/programming-languages-runtimes/compiler-interpreter-internals/compiler-infrastructure/intermediate-representations/bytecode/precompilation/cold-start-optimizations.md) — Reduces serverless cold start latency by packaging application code into minimal, fast-booting images. ([source](https://includeos.github.io/technology.html))

### Security & Cryptography

- [Integrated Security Appliances](https://awesome-repositories.com/f/security-cryptography/network-traffic-filtering/integrated-security-appliances.md) — Provides a framework for building high-performance network appliances like firewalls and load balancers. ([source](https://includeos.github.io/technology.html))
- [IoT Security Hardening](https://awesome-repositories.com/f/security-cryptography/hardware-security/iot-security-hardening.md) — Hardens embedded IoT devices by preventing runtime reconfiguration of the operating system. ([source](https://includeos.github.io/technology.html))
- [Network Traffic Filtering](https://awesome-repositories.com/f/security-cryptography/network-traffic-filtering.md) — Provides firewall capabilities to control incoming and outgoing network packets based on defined rules. ([source](https://includeos.github.io/blog/))

### Software Engineering & Architecture

- [Kernel Image Linking](https://awesome-repositories.com/f/software-engineering-architecture/kernel-image-linking.md) — Combines application code and minimal operating system functions into a single bootable binary during the final linking phase.
- [Hypervisor Abstractions](https://awesome-repositories.com/f/software-engineering-architecture/provider-abstractions/hypervisor-abstractions.md) — Tailors the boot sequence and hardware abstraction layer for compatibility with various cloud hypervisors.

### Hardware & IoT

- [Runtime Hardening](https://awesome-repositories.com/f/hardware-iot/embedded-device-security-scanning/runtime-hardening.md) — Secures IoT hardware by preventing runtime operating system reconfiguration to protect devices in open networks.

### System Administration & Monitoring

- [Deterministic Execution Latencies](https://awesome-repositories.com/f/system-administration-monitoring/hardware-performance-monitoring/hardware-latency-detectors/deterministic-execution-latencies.md) — Eliminates process preemption to maintain consistent response times and minimize jitter on physical hardware. ([source](https://includeos.github.io/technology.html))
