← Back
Home › Systems › Cloud platform and compute

unikernel

unikernel platform

Unikraft

SystemTechniques · 3Primitives · 16 unikernel Library oshardware-os · medium: OS services linked into the application as a library in one address spaceVm snapshot restorehardware-os · medium: Snapshot an initialised VM/isolate heap and restore it for fast cold startsUserspace tcp ip stacknetworking · medium: TCP/IP in user space (smoltcp/lwIP style)Virtio deviceshardware-os · low: Virtqueue rings for paravirtual block, net and vsock devicesHardware virtualization kvmhardware-os · low: VT-x/AMD-V via KVM: vCPU run loop, VM exits, MMIO emulationCooperative schedulingconcurrency · low: Green threads/coroutines yielding at await points on a user-space schedulerVirtual memory and the TLBhardware-os · low: How page tables and TLBs translate every address, what TLB reach means, and when 2 MiB or 1 GiB huge pages pay off on Linux.›X86 boot processhardware-os · low: Firmware to kernel handoff: UEFI/BIOS, boot protocols, page tablesZero-copy I/Onetworking · low: Move bytes between files, sockets and NICs by passing page references instead of copying through user space: sendfile, splice, MSG_ZEROCOPY, kTLS.›Arena allocatorsystems · low: Allocate by bumping a pointer through big chunks and free everything at once: a few instructions per allocation for objects sharing a lifetime.›Slab allocatorsystems · low: Pre-carve pages into equal-size slots per size class with an in-place free list: O(1) alloc and free, no external fragmentation, cache-warm reuse.›System call interfacehardware-os · low: The controlled gate between user code and the kernel: number and arguments in registers, a trap instruction, a validated handler, a result or error code.›mmap and the page cachehardware-os · low: How read() and mmap reach file data through the kernel page cache, what readahead and madvise do, and why databases use their own buffer pool instead.›Copy on write snapshotsstorage · low: Point-in-time snapshots by sharing pages/extents and copying only on writeInternet checksumnetworking · low: Ones-complement IP/TCP/UDP checksum, incremental update (RFC 1624) and offloadIp fragment reassemblynetworking · low: Reassemble IP fragments with timeouts and overlap/DoS protectionTCP CUBICnetworking · low: Loss-based TCP congestion control whose window grows as a cubic function of time since the last loss; the default on Linux, Windows and macOS.›Tun tap devicesnetworking · low: Userspace virtual network interfaces for VPNs and tunnelsHierarchical timing wheelsystems · low: Timers bucketed by expiry into wheels of slots, coarser wheels for far deadlines: O(1) insert and cancel for millions of timeouts.›

Similar systems

Share the most building blocks with this one.