跳转至主要内容
支持知识库

英特尔® Software Guard Extensions (英特尔® SGX) 围圈线程在出现异常或中断之后如何移至另一个内核?

内容类型: 产品信息和文件   |   文章 ID: 000088863   |   上次审核日期: 2021 年 12 月 15 日

说明

无法确定 英特尔® Software Guard Extensions (英特尔® SGX) 围圈的逻辑内核切换过程。

解决方法

围圈在特定线程内执行,由在逻辑处理器内核上执行的线程控制结构 (TCS)定义。所有指令均在 TCS 环境中进行,并且每个应用程序可能有多个 TCS。异步围圈退出 (AEX) 指令被发布到围圈运行的特定逻辑内核。用于隔离执行的创新指令和软件模型围圈入口和退出章节充分解释了这一过程。

"EENTER 指令是在程序控制下进入围圈的方法。要执行 EENTER,软件必须提供要进入围圈的 TCS 的地址。TCS 是指围圈内用来传输控制的位置,以及围圈 AEX 应该存储寄存器状态的内部位置。当逻辑处理器进入围圈时,TCS 会被视为繁忙,直到逻辑处理器退出围圈。SGX 允许围圈构建者定义多个 TCS 结构,从而支持多程飞地......AEX 后恢复执行:在系统软件为导致逻辑过程退出围圈的事件提供服务后,逻辑处理器可以使用 ERESUME 重新开始执行。"

免责声明

本页面上的内容是原始英文内容的人工翻译与计算机翻译的组合。我们提供此内容是为了您的便利并且仅供参考,未必完整或准确。如果本页面的英文版与翻译版之间存在任何冲突,应以英文版为准。 查看此页面的英语版本。