CPU的超线程和OS的上下文切换之间的关系?

时间:2015-10-17 17:32:20

标签: operating-system cpu hyperthreading

对cpu核心进行超线程化意味着可以将核心视为逻辑上两个或多个逻辑/虚拟cpu核心来运行多个进程。

操作系统还通过调度和上下文切换提供并发编程。

两者是否做同样的事情,即支持并发编程?

他们的关系是什么?例如,OS的并发性是否需要cpu核心来提供超线程,反之亦然?

感谢。

1 个答案:

答案 0 :(得分:1)

超线程需要额外的硬件支持。

  • 在上下文切换中,您必须从硬件中删除所有信息并加载其他进程的信息。

  • 如果是HT ,您有重复的硬件单元,其中预先加载了其他进程的信息,以便开关非常快。

因此,对于超线程的核心,切换不需要将当前正在运行的进程的整个进程控制块取出并加载另一个进程。它只需要切换要从中读取指令的硬件单元。

引用维基百科:

  

超线程的工作原理是复制某些部分   处理器 - 存储架构状态但不复制的处理器   主要的执行资源。这允许超线程处理器   看起来像通常的“物理”处理器和额外的“逻辑”   处理器到主机操作系统。