Dê uma olhada na série Padrões de Design do Kernel do Linux. Os artigos estão relacionados com uma linguagem não orientada a objetos (C) e acredito que estejam bem escritos:
- Padrões de design de kernel do Linux - Parte 1
- Padrões de design do kernel Linux - Parte 2
- Padrões de design do kernel Linux - Parte 3
- Fantasmas do passado do Unix: uma busca histórica por padrões de design
- Fantasmas do passado do Unix, parte 2: Desenhos confinados
- Fantasmas do Unix passado, parte 3: Desenhos não-fixáveis
- Fantasmas do Unix passado, parte 4: Projetos de alta manutenção