Esta mejora del rendimiento del sistema se ha incluido como novedad en Solaris Express 9/06.
A partir de esta versión, se ha mejorado la compatibilidad con páginas de gran tamaño de Solaris al ampliar la admisión de múltiples tamaños de página (MPSS) a:
Memoria compartida SysV no ISM/DISM
Las asignaciones MAP[lowbar]SHARED creadas por mmap() de /dev/zero o con el indicador MAP[lowbar]ANON
En las versiones anteriores a Solaris Express 9/06, las aplicaciones de usuario sólo podían asignar segmentos SysV ISM/DISM con páginas de gran tamaño y no se admitía el uso de páginas de gran tamaño para los segmentos creados por MAP[lowbar]SHARED mmap() de /dev/zero o mmap(). La nueva función amplía la admisión de páginas de gran tamaño de estos dos modos:
En los sistemas basados en SPARC, el núcleo de Solaris asigna automáticamente las páginas de gran tamaño a asignaciones de memoria compartidas lo suficientemente grandes de SysV no ISM/DISM, /dev/zero o MAP[lowbar]ANON.
En los sistemas basados en SPARC y x86, se ha mejorado la interfaz de memcntl(MC[lowbar]HAT[lowbar]ADVISE) para permitir a los usuarios solicitar de forma explícita el uso de páginas de gran tamaño para memoria anónima MAP[lowbar]SHARED (creada por mmap() de /dev/zero o con el indicador MAP[lowbar]ANON) y memoria SysV no ISM/DISM.
No obstante, en versiones anteriores, memcntl(MC[lowbar]HAT[lowbar]ADVISE) y las asignaciones MAP[lowbar]SHARED funcionaban únicamente en el caso de memoria creada por archivos de asignación regulares. La principal ventaja de la función de ampliación de MPSS es el aumento potencial del rendimiento para las aplicaciones que crean grandes segmentos de memoria compartida no ISM/DISM o que tienen grandes asignaciones MAP[lowbar]SHARED /dev/zero o MAP[lowbar]ANON. Esta mejora del rendimiento se obtiene al reducir los errores de TLB debidos al uso de páginas de mayor tamaño.