Solaris 10 새로운 기능

시스템 성능 향상

Solaris 10 5/08 릴리스에는 다음과 같은 시스템 성능 기능과 향상된 기능이 추가되었습니다.

64 비트 SPARC: sun4v 플랫폼에 대한 메모리 배치 최적화 지원

메모리 배치 최적화(Memory Placement Optimization, MPO)를 사용하면 운영 체제에서 메모리를 로컬에서 스레드나 프로세스가 실행되는 코어에 할당할 수 있습니다. sun4v 아키텍쳐는 가상 하드웨어 환경에서 실행됩니다. sun4v 플랫폼의 MPO 기능은 sun4v 계층에 필수 표준 액세서를 제공하여 일반 MPO 프레임워크에 소재지 정보를 제공합니다. 이 기능은 메모리 액세스 대기 시간이 다른 다중 소켓이 있는 플랫폼에 효과적입니다. MPO 기능은 메모리를 로컬에서 노드로 할당하는 OS를 활성화하여 여러 응용 프로그램의 성능을 향상시킵니다.

SPARC: 공유 컨텍스트 지원

서로 다른 프로세스 주소 공간에서 동일한 가상 주소가 사용되는 경우를 구분하기 위해 MMU(Memory Management Unit) 하드웨어에 의해 사용되는 컨텍스트 체계는 공유 메모리가 사용될 때 비효율성을 발생시킵니다. 공유 메모리의 비효율성은 서로 다른 프로세스에서 특정 공유 메모리의 데이터와 주소가 실제로는 동일할 수 있지만 각 프로세스에 연결된 컨텍스트 번호는 다르기 때문에 발생합니다. 따라서 MMU 하드웨어에서 일치를 인식할 수 없습니다. 이로 인해 MMU 변환 캐시 및 TLB(Translation Lookaside Buffer)에서 매핑이 불필요하게 제거되고, 동일한 매핑에 의해 다른 컨텍스트 번호로 대체됩니다.

Niagara 2 시스템에는 공유 메모리 처리의 비효율성을 방지하는 데 사용될 수 있는 하드웨어 기능인 추가 공유 컨텍스트가 있습니다. TLB에서 매핑을 검색할 때 전용 컨텍스트나 공유 컨텍스트의 일치 항목으로 인해 TLB 히트가 발생합니다. 공유 컨텍스트에 대한 현재 소프트웨어 지원은 DISM(Dynamic Intimate Shared Memory)을 사용하는 프로세스의 기능을 활성화합니다. 이 경우, 각 프로세스에 대한 동일한 권한을 사용하여 동일한 가상 주소에 매핑되는 DISM 세그먼트와 프로세스 텍스트 세그먼트는 공유 컨텍스트를 사용합니다.

x86: CPUID 기반 캐시 계층 인식

현대의 Intel 프로세서는 CPUID 명령을 통해 프로세서의 캐시 계층에 대한 정보를 검색하기 위한 인터페이스를 제공합니다.