viernes, enero 26, 2007

El kernel de Windows Vista: Un artículo sobre la planificación de tareas e hilos. Enlaces simbólicos. Cambios de I/O

Mark Russinovich, creador de Sysinternals - recientemente comprado por Microsoft - ha escrito junto a David Salomon varios libros sobre las tripas del S.O Windows construido a partir del núcleo NT (NT,2000, XP, 2003 y Vista). Dan una visión interna y profunda del sistema, y merece la pena para quien le guste. Ahora, trabaja para Microsoft, y hace poco ha publicado este artículo sobre las modificaciones que se han realizado a nivel de la planificación de tareas en el núcleo. Actualmente el planificador de tareas de los núcleos utiliza el tick del reloj para planificar el tiempo de ejecución de cada hilo. El problema, es que dentro de este tiempo de ejecución puede haber tiempo dedicado a otras tareas (interrupciones del sistema) que no se tiene en cuenta.

La modificación de Windows Vista es usar los contadores de ciclos que tienen actualmente la mayoría de los microprocesadores para poder de esa manera hacer la planificación de tareas y así ver cuanto tiempo ha usado un hilo determinado, y saber si se tiene que cambiar de hilo.

Otra modificación es un planificador para aplicaciones multimedia, denominado Multimedia Class Scheduler Service (MMCSS). Este planificador se encarga de cambiar la prioridad de los hilos registrados con el mismo, para que tengan la cantidad de CPU que han solicitado.

Otras novedad, por llamarla de alguna manera - lleva en Unix más de 20 años - son los enlaces simbólicos en NTFS.

Por último se ha añadido un planificador de entrada y salida para poder priorizar las peticiones de las aplicaciones de acuerdo con una política y modificaciones en el uso de los completion ports un objeto que se usa para sincronizar las entradas y salida asíncronas en Windows, con la idea de evitar cambios de contextos innecesarios.

Por supuesto, el artículo pone los dientes largos para el próximo libro que quieren publicar sobre las tripas de Windows, la revisión del Windows Internals, que será la 5º.

Technorati Tags: ,

No hay comentarios: