【发布时间】:2016-07-12 19:58:18
【问题描述】:
我试图了解 TCS 启用的 SGX 线程和 SDK 提供的不受信任的线程之间的区别。
如果我理解正确,TCS 允许多个逻辑处理器进入同一个飞地。每个逻辑处理器都有自己的 TCS,因此也有自己的入口点(TCS 中的OENTRY 字段)。每个线程运行直到 AEX 发生或到达线程的末尾。但是,这些由 TCS 启用的线程还没有办法相互同步。至少,没有用于同步的 SGX 指令。
另一方面,SGX SDK 提供了一组线程同步原语,主要是互斥体和条件变量。这些原语不受信任,因为它们最终由操作系统提供服务。
我的问题是,这些 线程同步原语 是否打算供 TCS 线程使用?如果是这样,这不会降低安全性吗?操作系统可以随心所欲地进行调度。
【问题讨论】:
标签: intel trusted-computing sgx