多執行緒
維基百科,自由的 encyclopedia
多執行緒(英語:multithreading),是指從軟體或者硬體上實現多個執行緒並行執行的技術。具有多執行緒能力的電腦因有硬體支援而能夠在同一時間執行多於一個執行緒,進而提升整體處理效能。具有這種能力的系統包括對稱多處理機、多核心處理器以及晶片級多處理(Chip-level multithreading)或同時多執行緒(Simultaneous multithreading)處理器。
此條目需要補充更多來源。 (2009年12月17日) |
Quick Facts 「多執行緒」的各地常用名稱, 中國大陸 ...
「多執行緒」的各地常用名稱 | |
---|---|
中國大陸 | 多線程 |
臺灣 | 多線、多執行緒 |
港澳 | 多線程 |
Close
軟體多執行緒。即便處理器只能執行一個執行緒,作業系統也可以通過快速的在不同執行緒之間進行切換,由於時間間隔很小,來給使用者造成一種多個執行緒同時執行的假象。這樣的程式執行機制被稱為軟體多執行緒。如微軟的Windows作業系統和Linux就是在各個不同的執行緒間來回切換,被稱為單人多工作業系統。而DOS這類文字介面作業系統在一個時間只能處理一項工作,被視為單人單工作業系統。
除此之外,許多系統及處理器也支援硬體多執行緒技術。對稱多處理機(SMP)系統具有多個處理器,所以具有真正的同時執行多個執行緒的能力;CMP技術通過在一塊晶片上整合多個核心(Core)也具有真正的多執行緒能力;CMT技術則稍有不同,有的是依靠硬體執行執行緒切換來獲得多執行緒能力,作業系統不再負責執行緒切換,因而這部分開銷可以減少甚至消除,這方面典型的例子是Sun的UltraSPARC T1,它同時綜合了CMP和CMT。微軟的Windows 2000以後的作業系統皆支援多執行緒與超執行緒技術。