Topics /

Systems & Performance

The most popular blog posts about systems & performance on Hacker News. 6,942 posts.

Any year
1085

How does Linux NAT a ping?

A few months ago, I found myself wondering how a command like ping 1.1.1.1 works from within a private network. In most private networks, multiple hosts connect to the Internet through a router. For IPv4, the router performs network address translation (NAT) by rewriting the original host’s source address to the…

1086

The Paxos Algorithm, or How to Win a Turing Award

The lectures assume no prior knowledge of the Paxos consensus algorithm or of TLA+, the language in which the specifications are written. In fact, the lectures constitute a crash course on TLA+. If you're interested just in the algorithm, you will probably find the specs annoying and will try to read only the…

1088

Infectious Executable Stacks

In software development there are many concepts that at first glance seem useful and sound, but, after considering the consequences of their implementation and use, are actually horrifying. Examples include thread cancellation , variable length arrays , and memory aliasing . GCC’s closure extension to C is another…

1090

Can I start using Wayland in 2026?

Wayland is the successor to the X server (X11, Xorg) to implement the graphics stack on Linux. The Wayland project was actually started in 2008, a year before I created the i3 tiling window manager for X11 in 2009 — but for the last 18 years (!), Wayland was never usable on my computers. I don’t want to be stuck on…

1096

The relative performance of C and Rust

My blog post on falling in love with Rust got quite a bit of attention – with many being surprised by what had surprised me as well: the high performance of my naive Rust versus my (putatively less naive?) C. However, others viewed it as irresponsible to report these performance differences, believing that these…

1105

There is no 'printf'

In C, 'main' returns an int. What happens when you don't explicitly return a value, though? C99 provides a return value of 0, but C89... well, that's undefined, my favorite kind of behavior.

1110

Escaping VirtualBox 6.1: Part 1

This post is about a VirtualBox escape for the latest currently available version (VirtualBox 6.1.16 on Windows). The vulnerabilities were discovered and exploited by our team Sauercl0ud as part of the RealWorld CTF 2020/2021. The vulnerability was known to the organizers, requires the guest to be able to insert…