최대 영토 크기를 결정하는 두 가지 방법.
클라우드 환경에서는 BIOS에서 엔클레이브 페이지 캐시(EPC)를 포함하는 프로세서 예약 메모리(PRM)를 확인할 수 없습니다.
인텔® Software Guard Extensions(인텔® SGX) SDK를 사용하여 영토에 사용할 수 있는 메모리를 찾을 수 없습니다.
인텔® Software Guard Extensions(인텔® SGX) SDK는 최대 영토 크기를 찾을 수 있는 방법을 제공하지 않습니다. 인텔® Software Guard Extensions(인텔® SGX) SDK를 사용하면 엔클레이브 구성 파일을 사용하여 응용 프로그램에서 영토 크기를 설정할 수 있습니다.
프로세서에서 사용할 수 있는 인텔® Software Guard Extensions(인텔® SGX) 기능을 보고하는 방법은 두 가지가 있습니다. 두 옵션 모두 가상 최대 영토 크기인 MaxEnclaveSize를 보고합니다. 실제 최대 영토 크기는 운영 체제 또는 메모리 제한에 따라 결정됩니다.
옵션 1
Linux* 시스템에서 터미널에서 cpuid를 실행 합니다.
$ cpuid | grep MaxEnclaveSize
옵션 2
test_sgx.c를 사용하십시오.
- SGX 하드웨어 Github으로 이동하여 파일 test_sgx.c를 다운로드하거나 저장소를 복제합니다.
- 엮다 그리고 달리다 test_sgx.c. 지시:
$ gcc test-sgx.c -o test-sgx
$ ./test-sgx
MaxEnclaveSize에 대한 설명
MaxEnclaveSize 0경우 플랫폼에서 SGX가 활성화되지 않습니다.
SGX가 활성화되면 가장 일반적인 출력은 다음과 입니다.
MaxEnclaveSize_Not64: 1f
MaxEnclaveSize_64: 24
- MaxEnclaveSize_Not64: 지원되는 최대 영토 크기는 64비트 모드가 아닌 경우 2^(EDX[7:0]) 바이트입니다.
- MaxEnclaveSize_64: 64비트 모드에서 작동할 때 지원되는 최대 엔클레이브 크기는 2^(EDX[15:8]) 바이트입니다.
영토의 최대 가상 크기는 32비트당 2^(0x1f), 64비트 엔클레이브의 경우 2^(0x24)입니다.
IA 소프트웨어 개발자 매뉴얼 Vol 3d Part 4의 섹션 37.7.2, 표 37-6에서 CPUID 호출로 반환된 값을 참조하십시오.