【问题标题】:Kernel Threads vs Hyperthreads内核线程与超线程
【发布时间】:2015-04-14 14:08:53
【问题描述】:

内核线程和超线程有什么区别?还是一样?

我知道操作系统调度的内核线程不是用户线程。

没有人同时谈论他们两个......

【问题讨论】:

  • 内核线程:软件。超线程,硬件。或者,不同类型的水果。

标签: multithreading operating-system kernel hyperthreading


【解决方案1】:

“内核线程”是由内核创建和调度的软件线程。比较用户线程,它们由用户模式库创建,就内核而言是一个执行线程。

“超线程”是英特尔同步多线程的营销名称,是一种用于超标量机器的硬件多线程解决方案。本质上,它允许 CPU(内核)同时从多个(在英特尔的情况下为 2 个)内存位置获取和执行指令。这称为“线程级并行”,即通过运行多个任务来提高 CPU 的利用率。

超线程 CPU(例如 i7 内核)向操作系统内核提供多个 CPU,并且内核在任何时间点都可以在每个 CPU 上执行一个软件线程。通常它还会告诉操作系统哪些“CPU”是单个 CPU 的硬件线程,以便调度程序做出更好的决策。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-07-15
    • 1970-01-01
    • 2019-11-21
    • 2022-08-15
    • 2023-04-03
    • 1970-01-01
    • 2011-02-02
    • 2018-06-09
    相关资源
    最近更新 更多