In development, in the open

An operating system built on stock Linux and the Felix log.

Nothing boots yet. I'm building NineLives so that the memory of a whole cluster is a log, and so that when a machine dies its programs can carry on somewhere else, from the last record they handled.

The NineLives mark: a cat whose head and tail make a 9. The tail is nine log records. The NineLives mark: a cat whose head and tail make a 9. The tail is nine log records.

What it is meant to be

The design is that every change to the system will be a durable, ordered record in Felix: what should run, where it runs, what each program received and what it produced. A program's state is a fold over those records, so any machine can rebuild it. That is where the name comes from.

Linux is meant to keep handling drivers, memory and local processes. NineLives is for what Linux can't do across machines.

  • Failover

    The goal: a dead machine's programs continue elsewhere, without lost or repeated work.

  • Time travel

    The goal: rebuild any program as it was at any moment, then step forward one record at a time.

  • An audit trail

    The goal: every decision the system makes is on the record, in order.

The kernel is stock Linux, on purpose. Here is why.

Where it is

Design stage. Nothing boots yet. The plan is written down and the first milestone is next. Updated 2026-10-28.

  1. M1

    Joins a cluster

    Planned
  2. M2

    Survives losing a machine

    Planned
  3. M3

    Atomic upgrades

    Planned
  4. M4

    System programs on the log

    Planned
  5. M5

    Real hardware and clouds

    Planned

What each milestone proves