该问题背后的动机来自探索具有单线程处理器的英特尔Galileo gen2主板。
多任务系统可以处理多个进程和线程,而与系统中安装的处理器或内核的数量以及它们处理的“线程”的数量无关。多任务使用时间分片进行工作:内核和每个正在运行的进程或线程每个都花一些时间运行,然后系统切换到下一个可运行线程。切换非常频繁地进行,这给人的印象是即使不是并行运行,也可以并行运行。
所有这些事情都无需对API等进行任何更改。多核系统需要能够运行比其实际支持的线程更多的线程,单核只是其中的一个实例。
将CPU描述为单线程是指同时多线程(SMT或Intel世界中的超线程),而不是CPU运行多个线程(或进程或任务)的能力。向CPU添加SMT功能不会添加任何有助于运行线程的指令,而只是在某些情况下可以更好地使用硬件。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句