01 · 2026 · Rust
Chronos
A reverse-execution debugger for AArch64 Linux.
Set a breakpoint, run past the crash, then step backwards to the instruction that corrupted the pointer, with variables showing their past values. Every claim, including the unsupported cases, is covered by a test.
- t − 1 · built
- ptrace control decoded structurally, BRK breakpoints, DWARF 4 and 5, CFI unwinding. Checkpoints by injecting a clone syscall into the target every 64 steps; reverse operations re-fork the nearest one and replay forward.
- t − 2 · why
- Debugging is working backwards from a symptom, and nearly all debugger literature is x86-64. This one was built from the ARM manual and the kernel sources.
- 7
- crates
- 64
- steps per checkpoint
- 0
- external debuggers
- Repository
- Architecture notes
- Determinism model
- last push