ใช้เครื่องมือ "sgx_emmt" เพื่อกําหนดจํานวนสแตกและหน่วยความจํา heap เพื่อจัดสรรสําหรับขอบเขตในไฟล์กําหนดค่าขอบเขต
- ในไฟล์กําหนดค่าขอบเขต ระบุ StackMaxSize และ HeapMaxSize เป็น 32 GB แต่ละตัวเพื่อให้แน่ใจว่ามีการจัดสรรหน่วยความจําที่เพียงพอสําหรับการปิด
- การคอมไพล์ล้มเหลวเนื่องจากหน่วยความจําที่ร้องขอมีขนาดใหญ่เกินไป
โปรดดู ที่ ส่วน เครื่องมือวัดหน่วยความจําขอบเขต ใน SGX Developer Reference for Linux* (มีให้ใน Intel® SGX Linux เอกสารล่าสุด) สําหรับรายละเอียดเกี่ยวกับการใช้ sgx_emmt เพื่อวัดการใช้งานจริงของหน่วยความจําที่ได้รับการปกป้องโดยขอบเขตในขณะรันไทม์
ปัจจุบันเครื่องมือวัดหน่วยความจําแบบขอบเขตมีฟังก์ชันต่อไปนี้:
- รับค่าการใช้งานstack peakสําหรับขอบเขต
- รับค่าการใช้งานสูงสุด Heap สําหรับขอบเขต
- รับค่าการใช้งานสูงสุดของหน่วยความจําที่สงวนไว้สําหรับขอบเขต
เครื่องมือจะรายงานขนาดการใช้งานหน่วยความจําเป็น KB หลังจากที่คุณได้รับข้อมูลการใช้หน่วยความจําที่แม่นยําสําหรับขอบเขตของคุณแล้ว ให้ แก้ไข ไฟล์กําหนดค่าขอบเขตตามข้อมูลนี้เพื่อใช้หน่วยความจําที่ป้องกันไว้อย่างเต็มรูปแบบ
หาก StackMaxSize และ HeapMaxSize ในไฟล์กําหนดค่าแบบขยายเป็นมากกว่าหน่วยความจําที่มีอยู่ในระบบ อาจเกิดข้อผิดพลาดในการคอมไพล์หรือหน่วยความจํารันไทม์
ข้อมูลอ้างอิงนักพัฒนา SGX สําหรับ Linux ล่าสุดอยู่ใน เอกสารล่าสุดของ Linux Intel® SGX