使用"sgx_emmt"工具确定堆栈和堆栈内存的数量,以便在飞地配置文件中为围圈分配一个飞地。
- 在围圈配置文件中,指定 StackMaxSize 和 HeapMaxSize 为每个 32 GB,以确保为围圈分配足够的内存。
- 编译失败,因为请求的内存过大。
有关使用sgx_emmt测量运行时围圈对受保护内存的实际使用情况的详细信息,请参阅 SGX Developer Reference for Linux* (适用于 英特尔® SGX Linux 最新文档)中的 围圈内存测量工具部分。
目前,围圈内存测量工具提供了以下功能:
- 获取飞地的stack peak使用值。
- 获取飞地的堆峰使用值。
- 获取围圈的预留内存峰值使用值。
该工具报告 KB 中内存使用量的大小。获取有关围圈的准确内存使用信息后,根据此信息 编辑 围圈配置文件,以充分利用受保护的内存。
如果围圈配置文件中的 StackMaxSize 和 HeapMaxSize 大于系统中的可用内存,则可能会发生编译或运行时内存错误。
Linux 的最新 SGX 开发人员参考 英特尔® SGX Linux 最新文档