Imersão Profunda: Rastreamento da Chamada de Sistema `write()` no OpenBSD

2025-03-29

Este artigo mergulha na implementação de baixo nível da chamada de sistema `write()` no OpenBSD. Começando com a chamada `write()` no espaço do usuário, ele rastreia a jornada dos dados pelo kernel, detalhando o caminho completo da chamada de sistema até os dados escritos em um disco rígido NVMe. O artigo revela uma cadeia de chamadas de funções do kernel, incluindo `mi_syscall`, `sys_write`, `dofilewritev`, `vn_write`, `ffs_write`, `uiomove`, `bdwrite`, `syncer`, `bwrite`, `ufs_strategy`, `spec_strategy`, `sdstrategy` e, finalmente, o driver NVMe. Ele ilustra a transformação e transmissão de dados em diferentes níveis de abstração, destacando detalhes técnicos importantes, como mecanismos de cache e transferências DMA.

Desenvolvimento Chamada de Sistema