Rcore Stats < 2024-2026 >

Now she wondered: had she written a ghost into the kernel? A fragment of a process that refused to die, trapped in unzeroed memory, patiently trying to execute its own strange purpose?

The command was a tool she’d written herself. It hooked into the kernel’s internal performance counters: context switches, page faults, syscall latency, heap allocations. For the past hour, she’d been watching a single, bizarre anomaly.

She pulled up the rcore source code—every unsafe block, every extern "C" function, every raw pointer she’d dared to touch. She searched for any callback, any timer interrupt, any forgotten test hook that could explain PID 0’s behavior. rcore stats

Lena had been debugging the rcore kernel for eleven hours. The terminal on her screen was a waterfall of green-on-black text, streaming the delicate innards of a Unix-like operating system she was building from scratch, line by agonizing line.

Then she remembered: the memory allocator. Two months ago, she’d implemented a custom slab allocator for kernel objects. It reused freed memory without zeroing it—a performance hack she’d deemed safe because the kernel only stored trusted data. Now she wondered: had she written a ghost into the kernel

Lena smiled. Then she deleted the file, zeroed the slab allocator, and added a panic! to any future reuse of freed kernel memory.

She’d blamed cosmic rays. Bad RAM. Her own exhaustion. It hooked into the kernel’s internal performance counters:

Most of her peers used Linux or the BSDs. But Lena had chosen rcore—a teaching kernel written in Rust—because she wanted to feel every gear turn. She wanted memory safety without a garbage collector, concurrency without data races. She wanted to trust the machine.