SLAT(Second Level Address Translation, 2단계 주소 변환)은 Hyper-V와 함께 작동하는 기술로, 인텔과 AMD 프로세서 양쪽 모두에서 지원됩니다. 인텔 프로세서에서는 EPT(Extended Page Table, 확장 페이지 테이블), AMD 프로세서에서는 RVI(Rapid Virtualization Indexing, 신속 가상화 인덱싱)라는 이름으로 불립니다. 이 글에서는 SLAT의 개념부터 내 컴퓨터의 SLAT 지원 여부 확인 방법, 그리고 BIOS에서 2단계 주소 변환을 활성화하는 방법까지 자세히 알아보겠습니다.
2단계 주소 변환(SLAT)이란?

SLAT은 인텔의 경우 네할렘(Nehalem) 아키텍처 프로세서 이상, AMD의 경우 바르셀로나(Barcelona) 프로세서 이상부터 지원됩니다.
이러한 프로세서의 특별한 점은 TLB(Translation Lookaside Buffer, 변환 색인 버퍼)를 내장하고 있다는 사실입니다. TLB를 갖춘 프로세서는 물리 메모리 변환을 지원하며, 이 캐시에는 프로세서의 페이지 테이블에서 최근 사용된 매핑 정보가 모두 저장되어 있습니다. 가상 주소를 물리적 주소로 변환해야 할 때 TLB는 내장된 캐시를 통해 매핑 정보를 빠르게 찾아냅니다. 만약 해당 데이터가 존재하지 않으면 페이지 폴트(page fault)가 발생하고, 운영체제가 페이지 테이블에서 매핑 정보를 검색합니다. 관련 매핑 레코드를 찾게 되면 해당 정보는 곧바로 TLB에 기록되어 주소 변환이 이루어집니다.

Hyper-V는 이처럼 가상 리소스와 가상 함수에 크게 의존하기 때문에, 게스트 물리 주소를 실제 물리 주소로 변환하는 과정에서 발생하는 오버헤드를 크게 줄일 수 있습니다. 그 결과 상당량의 물리적 자원이 절약되고, 절약된 자원을 다른 기능에 활용할 수 있습니다.
컴퓨터가 SLAT을 지원하는지 확인하는 방법
내 컴퓨터가 SLAT을 지원하는지 확인하는 방법은 두 가지입니다.
- Microsoft TechNet에서 제공하는 CoreInfo 유틸리티 사용
- 'Windows 기능 켜기/끄기' 유틸리티 사용
1] Microsoft TechNet의 CoreInfo 유틸리티 사용
TechNet에서 CoreInfo 압축 파일을 다운로드한 후, 운영체제가 설치된 파티션의 최상위 경로(C:\)에 압축을 해제합니다.
명령 프롬프트를 관리자 권한으로 실행한 뒤, 다음 명령어를 입력하여 해당 위치로 이동합니다.
cd C:\
이어서 아래 명령어를 실행합니다.
coreinfo.exe -v
그러면 다음과 비슷한 결과 화면이 출력됩니다.

사용 중인 프로세서에 따라 EPT 또는 RVI 항목이 표시되며, 해당 기능의 지원 여부에 대한 정보를 확인할 수 있습니다.
2] 'Windows 기능 켜기/끄기' 사용
제어판에서 'Windows 기능 켜기/끄기' 패널을 엽니다.
Hyper-V 항목을 확장합니다.
만약 'Hyper-V 플랫폼' 옵션이 회색으로 비활성화되어 있다면, 시스템이 SLAT을 지원하지 않는 것입니다.
BIOS에서 SLAT 활성화하는 방법
SLAT 기능을 활성화하는 방법은 의외로 간단합니다. 별도의 설정 없이 BIOS(UEFI) 설정 화면에서 가상화(Virtualization) 옵션만 활성화해 주면 됩니다. 인텔 CPU는 'Intel Virtualization Technology(VT-x)', AMD CPU는 'SVM Mode'라는 항목으로 표시되는 경우가 많으니 참고하세요.
이 가이드가 여러분께 도움이 되었기를 바랍니다.
