欧美日操-欧美日韩91-欧美日韩99-欧美日韩ay在线观看-xxxx色-xxxx视频在线

當(dāng)CPU空閑時它都在做什么?

2018-02-02 14:39:45 Linux中國  點擊量: 評論 (0)
在 上篇文章中 我說了操作系統(tǒng)行為的基本原理是,在任何一個給定的時刻,在一個 CPU 上有且只有一個任務(wù)是活動的。但是,如果 CPU 無

當(dāng)CPU空閑時它都在做什么?

在 上篇文章中 我說了操作系統(tǒng)行為的基本原理是,在任何一個給定的時刻,在一個 CPU 上有且只有一個任務(wù)是活動的。但是,如果 CPU 無事可做的時候,又會是什么樣的呢?
事實證明,這種情況是非常普遍的,對于絕大多數(shù)的個人電腦來說,這確實是一種常態(tài):大量的睡眠進(jìn)程,它們都在等待某種情況下被喚醒,差不多在 100% 的 CPU 時間中,都處于虛構(gòu)的“空閑任務(wù)”中。事實上,如果一個普通用戶的 CPU 處于持續(xù)的繁忙中,它可能意味著有一個錯誤、bug、或者運行了惡意軟件。
因為我們不能違反我們的原理,一些任務(wù)需要在一個 CPU 上激活。首先是因為,這是一個良好的設(shè)計:持續(xù)很長時間去遍歷內(nèi)核,檢查是否有一個活動任務(wù),這種特殊情況是不明智的做法。最好的設(shè)計是沒有任何例外的情況。無論何時,你寫一個 if 語句,Nyan Cat 就會喵喵喵。其次,我們需要使用空閑的 CPU 去做一些事情,讓它們充滿活力,你懂得,就是創(chuàng)建天網(wǎng)計劃唄。
因此,保持這種設(shè)計的連續(xù)性,并領(lǐng)先于那些邪惡計劃一步,操作系統(tǒng)開發(fā)者創(chuàng)建了一個空閑任務(wù),當(dāng)沒有其它任務(wù)可做時就調(diào)度它去運行。我們可以在 Linux 的 引導(dǎo)過程 中看到,這個空閑任務(wù)就是進(jìn)程 0,它是由計算機(jī)打開電源時運行的第一個指令直接派生出來的。它在 rest_init 中初始化,在 initidlebootup_task 中初始化空閑調(diào)度類scheduling class。
簡而言之,Linux 支持像實時進(jìn)程、普通用戶進(jìn)程等等的不同調(diào)度類。當(dāng)選擇一個進(jìn)程變成活動任務(wù)時,這些類按優(yōu)先級進(jìn)行查詢。通過這種方式,核反應(yīng)堆的控制代碼總是優(yōu)先于 web 瀏覽器運行。盡管在通常情況下,這些類返回 NULL,意味著它們沒有合適的任務(wù)需要去運行 —— 它們總是處于睡眠狀態(tài)。但是空閑調(diào)度類,它是持續(xù)運行的,從不會失敗:它總是返回空閑任務(wù)。

大云網(wǎng)官方微信售電那點事兒

責(zé)任編輯:任我行

免責(zé)聲明:本文僅代表作者個人觀點,與本站無關(guān)。其原創(chuàng)性以及文中陳述文字和內(nèi)容未經(jīng)本站證實,對本文以及其中全部或者部分內(nèi)容、文字的真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考,并請自行核實相關(guān)內(nèi)容。
我要收藏
個贊
CPU
?
主站蜘蛛池模板: 四虎影院欧美 | 国产成人午夜片在线观看 | 免费高清国产 | 91麻豆免费视频 | 国产成人精品一区二区免费 | 亚洲 欧美 日韩 在线 香蕉 | 色资源二区在线视频 | 在线观看免费视频黄 | 韩国美女豪爽一级毛片 | 欧美一区二区三区在线 | 免费aa毛片 | 日日夜夜综合 | 四虎精品成人免费观看 | 麻豆成人久久精品二区三区小说 | 另类国产精品一区二区 | 亚洲毛片在线免费观看 | 国产三级福利 | 亚洲最大看欧美片网站 | 成在线人永久免费播放视频 | 99视频精品全部国产盗摄视频 | 欧美日韩中文字幕在线视频 | 天天综合五月天 | 污污网站观看 | 亚洲毛片在线播放 | 2019国内精品久久久久久 | 精品欧美一区二区在线观看 | 日韩成人免费视频播放 | 色人久久| 好吊色欧美一区二区三区视频 | 男人天堂成人 | 午夜在线播放免费人成无 | 国产女同一区二区三区五区 | 青青青久97在线观看香蕉 | 欧美国产在线一区 | 免费一级片在线观看 | 日韩福利社 | 欧美成人h版影院在线播放 欧美成人h版影片在线观看 | 在线看片欧美 | 日本色播 | 国产小视频在线高清播放 | 国产视频手机在线观看 |