Internos de cambio de contexto de Linux: estado del proceso y memoria

2025-01-02

Este artículo profundiza en la representación de procesos y sus estados por parte del kernel de Linux, centrándose en las estructuras de datos clave: task_struct y mm_struct. task_struct gestiona el estado de ejecución, incluyendo el estado del proceso, el seguimiento del tiempo de la CPU y la información de programación. mm_struct maneja el estado de la memoria, abarcando tablas de páginas, límites de segmentos de memoria y detalles específicos de la arquitectura. El artículo explica detalladamente los campos dentro de estas estructuras y sus roles en el cambio de contexto, ofreciendo una comprensión profunda del funcionamiento interno del kernel de Linux.

Leer más

El Teorema de Imposibilidad del Clustering: Por qué no existen algoritmos perfectos

2024-12-26

Este artículo explora el problema del 'triángulo imposible' en los algoritmos de clustering. Haciendo un paralelo con el teorema CAP, el autor argumenta que todo algoritmo de clustering debe sacrificar una de las tres propiedades deseables: invariancia de escala, riqueza y consistencia. El artículo define cada propiedad e ilustra cómo algoritmos como k-means comprometen una para lograr las otras. La conclusión enfatiza que los desarrolladores deben elegir algoritmos en función de las necesidades específicas de su aplicación, aceptando que un algoritmo de clustering perfecto es matemáticamente imposible.

Leer más