Under the Hood
Loading visualizer…
DNSresolving host
TCPconnecting
TLShandshake
HTTPrequesting
Initializing Sorting Algorithms...
Sorting
Trees
Graphs
Preparing interactive visualizations...
Under the Hood
Loading visualizer…
Protection rings, the syscall trap, table dispatch, argument validation — and why fewer crossings is always faster
Your program does not run on the hardware. It runs on top of an operating system that never lets it touch the hardware directly, and the CPU enforces that separation in silicon. x86 defines four privilege levels, called rings. Your code — every program you have ever written — lives in ring 3, the least privileged one.
x86-64 Linux convention
Active Recall
Why does the syscall instruction jump to an address the kernel registered, instead of one the caller supplies?