Novedades de Solaris Express Developer Edition

SPARC: Admisión de contextos compartidos

Esta mejora en el rendimiento del sistema se ha incluido como novedad en la versión 9/07 de Developer.

El mecanismo contextual, que el hardware de unidad de manejo de memoria (MMU) utiliza para distinguir entre el uso de la misma dirección virtual en diversos espacios de direcciones de procesos, presenta algunos fallos cuando se utiliza la memoria compartida. Los fallos se producen debido a los datos de una memoria compartida determinada; la dirección en diversos procesos puede ser idéntica, pero el número de contexto asociado con cada proceso es diferente. Por ello, el hardware MMU no podrá reconocer una coincidencia. Esto provoca que las asignaciones que se desalojan de forma innecesaria de la caché de traducción de MMU, el búfer de traducción de direcciones (TLB), se sustituyan por asignaciones idénticas con un número de contexto diferente.

El sistema UltraSPARC T2 (Niagara 2) tiene un contexto adicional “compartido” que es una característica de hardware que se puede utilizar para evitar el fallo en el manejo de la memoria compartida. Cuando se busca en el TLB la asignación de una coincidencia en un contexto privado o compartido, se produce un acierto en el TLB. La admisión de software actual de contexto compartido activa la función de procesos que utilizan la Memoria dinámica compartida privada (DISM). En este caso, el segmento de texto de proceso y los segmentos DISM asignados en la misma dirección virtual y con los mismos permisos para cada proceso utilizarán el contexto compartido.