CPU空閒時在忙什麼
CPU空閒時在忙什麼?你知道嗎?關於這個問題小編整理的這篇文章,希望對大家有用,更多信息請瀏覽應屆畢業生考試網!
如Duarte文中所述,阻止CPU消耗太多電量的一種方法是內置更長的時鐘週期(tick periods)。通過這種方式,CPU在喚醒之前需要度過更長的空閒時間,然後執行基本任務,接着再次睡眠。
什麼是空閒任務(idle task)?
空閒任務可能聽起來有點自相矛盾。關鍵是你要理解CPU既然通電,那麼就必須時刻不停地在運轉,即使他什麼正事也不幹。在哲學上對應的詞彙就是所謂的“忙等待”(busy waiting),本質是讓CPU不停地去計算某個條件,看看是否為true.
對於運行在x86芯片上的Windows來説,這個功能表現為暫停(HLT)指令,對應Windows的System Idle Process進程。Windows只有在某個CPU核心沒有合適的線程可執行時,才會調用idle空閒進程去運行。如果你查看Windows系統的任務管理器,你會看到System Idle Process(系統空閒進程)大多數時候都顯示一個較高的使用百分比。和進程列表中的其他進程不同,空閒進程的值越高,代表CPU的工作量越小。設計HLT指令的目的是為了儘可能地減少電量消耗,並使 CPU 進入節能模式/狀態。
HLT的歷史
HLT(暫停)指令其實有很長的歷史——在第一顆8086處理器上就已經實現了,但早期操作系統並不支持它。老程序員可能會記得,曾經有一段時間,甚至連基本的 HLT 功能都總是不能按預期方式執行。回首過去的超頻年代,那時候CPU有一個基本的工具(utility)叫做 Rain(雨),用來實際地增加CPU的idle空閒時間(以及提升處理過程中的散熱和能耗)。隨着時間的流逝,我們可以看到硬件製造廠商和軟件開發者都變得越來越複雜。
這是Windows 8創新的一個方面——好吧,本質上只是嘗試創新——但卻產生了一些奇怪的結果。在默認情況下它允許在處理過程中有更長的間隔週期,但這也導致一些程序產生問題,如Google Chrome等程序為了更快地對用户操作進行響應,會自動將時鐘頻率(tick rate)設置為操作系統所允許的最小值。這個BUG在新版程序中已經修復了,但仍可能減少某些Windows 8電腦的電池續航時間。
一顆 Intel 8086 CPU, 1978年。確實,當時CPU是很簡單的玩意兒—— 大約只有2萬個晶體管.
這確實是一個可以調節時鐘週期的地方,加上要支持沒有基於晶體定時器的系統,使微軟措手不及。在Windows8中,軟件通過混合操作系統時間記錄的方式來調整前端總線速度,就會導致錯誤的基準測試結果。這種行為在[Windows 10]中一直保持,儘管它只是一個小眾的問題——在操作系統產生錯誤的結果你必須調整系統前端總線的時鐘.
原來的那篇博客主要討論的是桌面操作系統,race-to-idle是現代CPU架構的關鍵組件。AMD和英特爾每年都會發布新一代產品,還會經常推出更新,可能最高性能只提升那麼一點點,但通過更好的時鐘門控(clock gating)卻能顯著提高能量使用率並更快地進行節能模式切換.
-
三級緩存是什麼意思
三級緩存是為讀取二級緩存後未命中的數據設計的—種緩存,在擁有三級緩存的CPU中,只有約5%的數據需要從內存中調用,這進一步提高了CPU的效率。下面是YJBYS小編整理的三級緩存相關知識,希望對你有幫助!原理:其運作原理在於使用較快速的儲存裝置保留一份從慢速儲...
-
液晶顯示器字體發虛的解決辦法
解決液晶顯示器字體發虛的問題,第一件事就是查看液晶顯示器的分辨率有沒有被正確的設定。液晶顯示器都會有一個最佳分辨率,就像19英寸寬屏液晶顯示器是1440*900(部分是1680*1050),22英寸寬屏液晶顯示器是1680*1050,而當用户設定的分辨率不是這個最佳分辨率時,就會出...
-
系統找不到硬盤分區原因解析
問:我有一個二手硬盤,前段時間用得好好的,可是有一天開機,突然顯示硬盤錯誤。掛接了雙硬盤,進入系統後無法找到該硬盤的分區,但是在BIOS裏能看到這個硬盤,啟動時也能認出硬盤。該如何解決?答:在BIOS裏能檢測到硬盤,但是在系統裏找不到,主要原因是硬盤分區表損壞或引導文件...
-
CPU 故障的排查方法
CPU過熱會引起頻繁死機,這個問題該怎麼解決,這時候就需要看看CPU的温度,如果温度過高(正常50度),那麼,CPU故障的排查方法有哪些?歡迎大家閲讀!更多相關信息請關注相關欄目!●頻率有時自動降低開機後本來166MHz的CPU變成133MHz了,顯示的信息是“DefaultsCMOSSetupLoaded”,...