Inmersión Profunda: Trazando la Llamada al Sistema `write()` en OpenBSD
Este artículo profundiza en la implementación a bajo nivel de la llamada al sistema `write()` en OpenBSD. Comenzando con la llamada `write()` en el espacio de usuario, rastrea el recorrido de los datos a través del kernel, detallando la ruta completa desde la llamada al sistema hasta que los datos se escriben en un disco duro NVMe. El artículo revela una cadena de llamadas a funciones del kernel, incluyendo `mi_syscall`, `sys_write`, `dofilewritev`, `vn_write`, `ffs_write`, `uiomove`, `bdwrite`, `syncer`, `bwrite`, `ufs_strategy`, `spec_strategy`, `sdstrategy` y, finalmente, el controlador NVMe. Ilustra la transformación y transmisión de datos a través de diferentes niveles de abstracción, destacando detalles técnicos clave como los mecanismos de caché y las transferencias DMA.