← Back
Home › Systems › Operating systems and runtimes

actor-runtime

actor runtime with supervision

Erlang BEAM, Akka

SystemTechniques · 16Primitives · 57 actor-runtime Copying gccompilers · medium: Cheney semispace copying collection: bump allocation, forwarding pointers, compaction for freeGenerational garbage collectioncompilers · medium: Split the heap by age, collect the small young region often and cheaply, and rarely touch old data; wins whenever most objects die young.›Hot reloadingcompilers · medium: Replace code in a running process by swapping an indirection point, then migrate the live state to the new layout at a safe moment.›Actor modelconcurrency · medium: Isolated units of state that interact only by queued messages and handle one at a time: no locks on state, and the same code runs local or remote.›Supervision treesconcurrency · medium: Workers crash on surprises; supervisors only start, watch and restart them, with a restart-rate limit that escalates to their parent.›Work-stealing dequeconcurrency · medium: Per-worker deque: the owner pushes and pops at the bottom without contention, idle workers steal from the top; the core of Rayon, Tokio and Go.›Deterministic simulation testingdistributed · medium: Run the whole system in one thread under a seeded scheduler with simulated network, disk and clock, so every failure replays from its seed.›MPMC bounded queueconcurrency · low: Vyukov's array queue for many producers and consumers: each slot carries a sequence number, so one CAS per operation claims a slot without locks.›Instruction meteringcompilers · low: Charge a fuel budget per instruction or per basic block and trap at zero, so untrusted code is bounded by work done, deterministically.›Reference countingcompilers · low: Keep a count of owners in each object, free it when the count hits zero; deterministic and local, but pays on every copy and leaks cycles.›Fibers stackful coroutinesconcurrency · low: User-mode context switch: stack allocation, register save, M:N scheduling of green threadsHdr histogramdata-structures · low: Log-linear bucketed histograms with bounded relative error for latency percentilesConsistent hashingdistributed · low: Hash nodes and keys onto a ring; each key belongs to the next node clockwise, so membership changes move only about 1/n of keys.›Phi accrual failure detectordistributed · low: Instead of a fixed heartbeat timeout, output a continuous suspicion level φ from the observed heartbeat interval distribution; adapts to each link's jitter.›Process supervisionhardware-os · low: A parent process starts services, reaps their exits and restarts them under a delay and burst-limit policy, then stops them with SIGTERM before SIGKILL.›epoll event loopnetworking · low: One thread waits on thousands of non-blocking sockets with epoll_wait and handles only ready ones; the core of nginx, Redis and tokio.›Mutual TLSsecurity · low: TLS where the client also proves a certificate key, so every connection carries a verified, rotatable machine identity.›Backpressuresystems · low: Bound every queue and make a full queue push back on the producer by blocking, dropping, rejecting or withholding credit.›Graceful drainingsystems · low: On a termination signal, stop taking new work, finish in-flight work until a deadline, tell clients to reconnect elsewhere, then exit; clients resume from a token.›BFS and DFSgraphs · low: The two basic graph traversals; BFS gives hop distances and levels, DFS gives discovery/finish order for cycles, components and topological order.›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.›Mark-sweep garbage collectioncompilers · low: Find everything reachable from the roots, free the rest in place; handles cycles, never moves objects, and is the base of most production collectors.›Dirty page trackinghardware-os · low: Write-protection or PML logs of modified guest/process pages+ 9 more techniques+ 41 more primitives

Similar systems

Share the most building blocks with this one.

In-house systems

Named systems of this kind at large companies, with their paper or write-up.