10.2. 메모리 관리
10.2.1. 64비트 ARM용 52비트 PA 사용 가능
이번 업데이트에서는 64비트 ARM 아키텍처용 52비트 물리적 주소 지정(PA)을 사용할 수 있습니다. 이는 이전 48비트 PA보다 더 큰 물리적 주소 공간을 제공합니다.
10.2.2. 5 레벨 페이지 테이블 x86_64
RHEL 7에서 기존 메모리 버스에는 48/46비트의 가상/실제 메모리 주소 지정 용량이 있으며 Linux 커널은 이러한 가상 주소를 물리적 주소로 관리하기 위해 4 레벨의 페이지 테이블을 구현했습니다. 물리적 버스 주소 지정 라인은 물리적 메모리 제한 용량을 64TB로 설정합니다.
이러한 제한은 128 PiB의 가상 주소 공간(64PB 사용자/64PB 커널) 및 4PB의 물리적 메모리 용량을 사용하여 57/52 비트의 가상/실제 메모리 주소 지정으로 확장되었습니다.
확장된 주소 범위를 사용하면 RHEL 8의 메모리 관리에서 5 레벨 페이지 테이블 구현을 지원합니다. 이 구현은 확장 된 주소 범위를 최대 128 PiB의 가상 주소 공간과 4 PiB의 물리적 주소 공간으로 처리할 수 있습니다.
설치된 실제 메모리가 64TiB 미만인 경우에도 이 기능을 지원하는 하드웨어에 대해 5단계 페이지 테이블이 기본적으로 활성화되어 있습니다. 64TiB 미만의 메모리가 있는 시스템의 경우 5 레벨 페이지 테이블을 이동할 때 약간의 오버헤드가 증가합니다. 이러한 오버헤드를 방지하기 위해 사용자는 no5lvl
커널 명령줄 매개 변수를 사용하여 4 레벨 페이지 테이블을 강제로 사용하여 5 레벨 페이지 테이블을 비활성화할 수 있습니다.
10.2.3. 알고리즘 변경
RHEL 8에서는 Linux 커널 알고리즘의 가상 메모리 관리에 업데이트가 있습니다. 이로 인해 이전 버전과 비교하여 익명 메모리 페이지(프로세스 데이터)가 디스크로 더 자주 교체될 수 있습니다. 이러한 변경은 최신 SSD(Solid-State Drive)의 성능 영향이 디스크 회전에 비해 훨씬 낮기 때문에 변경되었습니다. RHEL 8로 마이그레이션할 때 최적의 시스템 성능을 보장하려면 사용자가 시스템을 평가하고 필요한 경우 시스템의 스왑성 설정을 조정하는 것이 좋습니다.