【Linux 内核】进程优先级与调度策略 ② ( 获取调度策略对应的进程优先级函数 | sched_get_priority_max 函数 | sched_get_priority_min 函数 )
文章目錄
- 一、獲取進(jìn)程優(yōu)先級(jí)函數(shù)
- 二、調(diào)度策略參數(shù)
- 三、進(jìn)程優(yōu)先級(jí)說(shuō)明
在上一篇博客 【Linux 內(nèi)核】進(jìn)程優(yōu)先級(jí)與調(diào)度策略 ① ( SCHED_FIFO 調(diào)度策略 | SCHED_RR 調(diào)度策略 | 進(jìn)程優(yōu)先級(jí) ) 中 , 簡(jiǎn)單介紹了 " 進(jìn)程調(diào)度策略 " 與 " 進(jìn)程優(yōu)先級(jí) " 概念 , 本篇博客開(kāi)始繼續(xù)介紹進(jìn)程調(diào)度的代碼細(xì)節(jié) ;
一、獲取進(jìn)程優(yōu)先級(jí)函數(shù)
Linux 內(nèi)核中 , 通過(guò)下面 222 個(gè)函數(shù) , 可以獲取進(jìn)程的 " 優(yōu)先級(jí)最大值 “ 和 ” 優(yōu)先級(jí)最小值 " ;
獲取 實(shí)時(shí)進(jìn)程 優(yōu)先級(jí)最大值 函數(shù) : 傳入調(diào)度策略 對(duì)應(yīng)的宏定義 ;
int sched_get_priority_max(int policy)獲取 實(shí)時(shí)進(jìn)程 優(yōu)先級(jí)最小值 函數(shù) : 傳入調(diào)度策略 對(duì)應(yīng)的宏定義 ;
int sched_get_priority_min(int policy)調(diào)度策略參數(shù)參考 【Linux 內(nèi)核】調(diào)度器 ⑨ ( Linux 內(nèi)核調(diào)度策略 | SCHED_NORMAL 策略 | SCHED_FIFO 策略 | SCHED_NORMAL 策略 | SCHED_BATCH策略 ) 博客 ;
二、調(diào)度策略參數(shù)
上述兩個(gè)函數(shù) , 傳入的調(diào)度策略參數(shù) , 在 Linux 內(nèi)核源碼中的 linux-5.6.18\include\uapi\linux\sched.h 頭文件中定義 ;
/** Scheduling policies*/ #define SCHED_NORMAL 0 #define SCHED_FIFO 1 #define SCHED_RR 2 #define SCHED_BATCH 3 /* SCHED_ISO: reserved but not implemented yet */ #define SCHED_IDLE 5 #define SCHED_DEADLINE 6調(diào)度策略源碼參考 【Linux 內(nèi)核】調(diào)度器 ⑨ ( Linux 內(nèi)核調(diào)度策略 | SCHED_NORMAL 策略 | SCHED_FIFO 策略 | SCHED_NORMAL 策略 | SCHED_BATCH策略 ) 博客 ;
三、進(jìn)程優(yōu)先級(jí)說(shuō)明
SCHED_OTHER 進(jìn)程調(diào)度策略 不支持進(jìn)程優(yōu)先級(jí)機(jī)制 ;
SCHED_FIFO 和 SCHED_RR 進(jìn)程調(diào)度策略 , 支持 進(jìn)程優(yōu)先級(jí)機(jī)制 , 進(jìn)程優(yōu)先級(jí)取值 111 ~ 999999 , 優(yōu)先級(jí)數(shù)值越大 , 優(yōu)先級(jí)越高 ;
SCHED_FIFO 、SCHED_RR 實(shí)時(shí)調(diào)度策略 , 進(jìn)程優(yōu)先級(jí)最大值為 999999
SCHED_NORMAL、SCHED_BATCH、SCHED_IDLE 普通調(diào)度策略 , 調(diào)用獲取進(jìn)程優(yōu)先級(jí)函數(shù) , 得到的結(jié)果始終為 000 . 是 普通任務(wù)調(diào)度函數(shù) ;
進(jìn)程優(yōu)先級(jí)參考 【Linux 內(nèi)核】調(diào)度器 ⑨ ( Linux 內(nèi)核調(diào)度策略 | SCHED_NORMAL 策略 | SCHED_FIFO 策略 | SCHED_NORMAL 策略 | SCHED_BATCH策略 ) 博客 ;
總結(jié)
以上是生活随笔為你收集整理的【Linux 内核】进程优先级与调度策略 ② ( 获取调度策略对应的进程优先级函数 | sched_get_priority_max 函数 | sched_get_priority_min 函数 )的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 【Linux 内核】SMP 对称多处理器
- 下一篇: 【Linux 内核】进程优先级与调度策略