Blog
CPU, memória, processos, I/O, containers por baixo. O modelo mental que transforma debugging de "mistério" em ciência — e faz você entender observabilidade, performance e sistemas distribuídos de verdade.
Fetch-Decode-Execute em detalhe, por que cache miss mata performance, como branch prediction funciona — e o que isso significa para o código que você escreve.
Stack vs heap, por que stack overflow acontece, virtual memory como abstração, page fault e swapping — como o SO gerencia memória de todos os processos.
O que é uma syscall, por que trocar entre user mode e kernel mode tem custo, como strace revela o que seu programa faz de verdade.
stdin/stdout/stderr como file descriptors, por que tudo é arquivo no Linux, pipes, redirecionamento — e como isso afeta performance de I/O.
Por que servidores web usam epoll em vez de um thread por conexão. Blocking vs non-blocking vs async I/O — o fundamento de event loops como asyncio e Node.js.
O que diferencia um thread de um processo no SO, context switch, por que green threads existem, e como Go goroutines e Python asyncio resolvem diferente.
Docker não é mágica — é Linux namespaces + cgroups + union filesystem. Entender isso explica por que containers são mais leves que VMs e como security funciona.
Por que "olá" tem bytes diferentes em UTF-8 e Latin-1. Big-endian vs little-endian. JSON vs Protobuf vs MessagePack — trade-offs de serialização.
Por que relógios em servidores diferentes mentem. NTP e PTP, clock drift, por que nunca usar wall clock para medir duração, e como sistemas distribuídos lidam com tempo.
Carregando…