Snapshots: freezing a running computer
How an entire running machine becomes a file you can save, send and restore — and why some systems here boot in two seconds.
On a physical computer, "save everything exactly as it is right now" is close to impossible. State is scattered across registers, caches, memory, device controllers and disks, much of it inaccessible while the machine runs. On an emulated computer it is almost easy, because all of that state is just data structures in a program.
What goes into a snapshot
- Every processor register, including the invisible ones.
- The full contents of guest RAM.
- Device state: video mode, disk controller registers, timers, the clock.
- Any disk sectors the guest has modified.
Restore all of that and the guest resumes mid-instruction, with no way to detect that anything happened. From the operating system's point of view no time passed at all — which occasionally confuses software that checks the clock and finds it has jumped.
Why some machines here start instantly
This is the trick behind the machines marked *instant*. Booting Haiku or ReactOS honestly, from firmware to desktop, takes minutes under emulation. So instead they ship a snapshot taken after someone already sat through that boot. Starting the machine restores the snapshot, and the desktop appears in a couple of seconds.
The two kinds here
In-memory snapshots are the quick ones: take one before you try something risky, restore it when it goes wrong. They live in the page, so a reload takes them with it.
Exported state files are the durable ones. The same snapshot, written to a file you download and keep. Load it back later — or on another computer, or send it to someone else — and you get your machine back exactly as you left it. It is the one way a machine here genuinely outlives its tab.
Snapshots are large, because uncompressed RAM is large: a 512 MB machine produces a file of roughly that size. The pre-booted snapshots in the catalog are compressed with zstd, which typically gets them down to a fraction of the original.