滴水穿石
Mapeamento de memória, worker threads e binários ELF - correções e aprofundamentos do statreader.c
22-10-2025Correções técnicas e explorações sobre conceitos fundamentais: diferença entre `mmap()` e `malloc()`, como worker threads funcionam no kernel, `MAP_SHARED` vs `MAP_PRIVATE`, e a relação entre ferramentas estáticas (`nm`, `objdump`) e dinâmicas (`mmap`) no ciclo de vida de programas.
Refatorando statreader.c - aplicando lições do memreader.c para monitoramento de CPU
19-10-2025Uma análise prática da refatoração do `statreader.c` aplicando as sugestões do Sanchez sobre o `memreader.c`. Explorando o `/proc/stat`, diferenças entre CPUs físicas e virtuais, significado de jiffies, e como transformar dados do kernel em observabilidade útil.
Notas sobre sugestões - Parte 3, o mito do “estado atual”
16-10-2025Uma retratação sobre o que foi dito na parte 2: `open()` não revela o “estado atual” do arquivo, ele apenas oferece uma visão local e momentânea. Nesta parte, discuto essa confusão entre camadas, a noção de tempo no sistema e os próximos passos do projeto.
Explorando o ELF e as seções de memória em C - Parte 2 das notas sobre o memreader.c
11-10-2025Nessa parte 2 das notas sobre o `memreader.c`, mergulho no formato binário `ELF` e nas seções de memória `.BSS`, `.DATA` e `.RODATA`. Também discuto como usar `nm` e `objdump` para inspecionar símbolos, além de entender a relação entre `signal handlers`, `nanosleep()` e chamadas POSIX como `open()` e `fopen()`.
Analisando sugestões no memreader.c - static, volatile e signal handlers em C
10-10-2025Uma análise das sugestões do Sanchez sobre o `memreader.c`, explorando conceitos essenciais da linguagem C como `volatile`, `static`, declarações antecipadas de função (forward declarations) e o funcionamento de signal handlers.
Após três anos desenvolvendo software, decidi explorar novos desafios: unir programação de baixo nível e física computacional. Este é o ponto de partida da minha jornada em direção ao CFD.