亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

linux任務調度機制指的是什么

發布時間:2022-07-20 14:31:40 來源:億速云 閱讀:191 作者:iii 欄目:建站服務器

本篇內容主要講解“linux任務調度機制指的是什么”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“linux任務調度機制指的是什么”吧!

linux的任務調度機制是指系統在某個事件執行的特定命令或程序;每一個CPU都會有一個隊列來存儲處于“TASK_RUNNING”狀態的任務,任務調度就是從這些隊列中取出優先級最高的任務作為下一個放入CPU執行的任務。

本教程操作環境:linux7.3系統、Dell G3電腦。

linux的任務調度機制是什么

是指系統在某個時間執行的特定的命令或程序

在Linux中,每一個CPU都會有一個隊列來存儲處于TASK_RUNNING狀態的任務,任務調度就是從這些隊列中取出優先級最高的任務作為下一個放入CPU執行的任務。

任務的調度需要進過兩個過程:上下文切換和選擇算法

上下文切換

從一個進程的上下文切換到另一個進程的上下文,因為其發生頻率很高,所以通常都是調度器效率高低的關鍵。

schedule()函數中調用了switch_to宏,這個宏實現了進程之間的真正切換,其代碼存放于include/i386/system.h。

switch_to宏是用嵌入式匯編寫成的,較難理解。

switch_to()函數正常返回,棧上的返回地址是新進程的task_struct::thread::eip,即新進程上一次被掛起時設置的繼續運行的位置(上一次執行switch_to()時的標號”1:”位置)。

至此轉入新進程的上下文中運行。這其中涉及到wakeup,sleepon等函數來對進程進行睡眠與喚醒操作。

選擇算法

Linux schedule()函數將遍歷就緒隊列中的所有進程,調用goodness()函數計算每一個進程的權值weight,從中選擇權值最大的進程投入運行。Linux的調度器主要實現在schedule()函數中。

調度步驟:

Schedule函數工作流程如下:

(1)清理當前運行中的進程
(2)選擇下一個要運行的進程(pick_next_task)
(3)設置新進程的運行環境
(4) 進程上下文切換

Linux 調度器將進程分為三類

進程調度是操作系統的核心功能。

調度器只是調度過程中的一部分,進程調度是非常復雜的過程,需要多個系統協同工作完成。

本文所關注的僅為調度器,它的主要工作是在所有RUNNING 進程中選擇最合適的一個。

作為一個通用操作系統,Linux 調度器將進程分為三類:

交互式進程

此類進程有大量的人機交互,因此進程不斷地處于睡眠狀態,等待用戶輸入。典型的應用比如編輯器 vi。此類進程對系統響應時間要求比較高,否則用戶會感覺系統反應遲緩。

批處理進程

此類進程不需要人機交互,在后臺運行,需要占用大量的系統資源。但是能夠忍受響應延遲。比如編譯器。

實時進程

實時對調度延遲的要求最高,這些進程往往執行非常重要的操作,要求立即響應并執行。比如視頻播放軟件或飛機飛行控制系統,很明顯這類程序不能容忍長時間的調度延遲,輕則影響電影放映效果,重則機毀人亡

到此,相信大家對“linux任務調度機制指的是什么”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

吴桥县| 富蕴县| 宜章县| 仁怀市| 重庆市| 镇原县| 信阳市| 锡林郭勒盟| 沙雅县| 梁山县| 遵义市| 乌审旗| 安塞县| 齐齐哈尔市| 石泉县| 手机| 新乡市| 修文县| 丰原市| 佛学| 武强县| 新昌县| 鸡西市| 华安县| 安徽省| 江都市| 无极县| 海晏县| 贺州市| 马鞍山市| 隆化县| 建水县| 泽普县| 龙山县| 绥芬河市| 勃利县| 勐海县| 枝江市| 烟台市| 锦屏县| 环江|