2.3. Estructura de lista dinámica
El sistema operativo requiere un conjunto de información en cada procesador en el sistema. En Red Hat Enterprise Linux 5, esta información se asignaba a una matriz de tamaño fijo en memoria. Este método era rápido y directo para sistemas que contenían pocos procesadores.
Sin embargo, cuando el número de procesadores para un sistema crece, este método produce sobrecarga significativa. Puesto que el tamaño de matriz de memoria es fijo, el recurso compartido puede convertirse en un cuello de botella cuando más procesadores intentan accederlo al mismo tiempo.
Con el fin de solucionar este problema, Red Hat Enterprise Linux 6 usa una estructura de lista dinámica para información de procesador. Esta estructura permite a la matriz utilizada para información de procesador ser asignado de forma dinámica: si existen únicamente ocho procesadores en el sistema, entonces solo se crearán ocho entradas en la lista. Si hay 2.048 procesadores, entonces también se crearán 2.048 entradas.
Una estructura de lista dinámica permite un cerramiento más específico. Por ejemplo, si se necesita actualizar al mismo tiempo información para procesadores 6, 72, 183, 657, 931 y 1546, puede realizarse con un paralelismo mayor. Situaciones como estas son más frecuentes en sistemas grandes de alto rendimiento que en sistemas pequeños.