1.一種處理器調(diào)度方法,其特征在于,所述方法包括如下步驟:
接收線程優(yōu)先級(jí)或時(shí)間片修改指令;
修改線程的優(yōu)先級(jí)或時(shí)間片并獲取處于就緒狀態(tài)且優(yōu)先級(jí)最高的線程;
當(dāng)前處于運(yùn)行狀態(tài)的線程退出內(nèi)核獨(dú)占區(qū)時(shí),將所述處于就緒狀態(tài)且優(yōu)先級(jí)最高的線程按照其時(shí)間片長(zhǎng)短在處理器中執(zhí)行。
2.根據(jù)權(quán)利要求1所述的處理器調(diào)度方法,其特征在于,所述修改線程的優(yōu)先級(jí)或時(shí)間片并獲取處于就緒狀態(tài)且優(yōu)先級(jí)最高的線程的步驟之后還包括:
判斷所述處于就緒狀態(tài)且優(yōu)先級(jí)最高的線程的優(yōu)先級(jí)是否比所述當(dāng)前處于運(yùn)行狀態(tài)的線程的優(yōu)先級(jí)高;
若是則所述處理器內(nèi)核中斷執(zhí)行所述當(dāng)前處于運(yùn)行狀態(tài)的線程,否則等待所述當(dāng)前處于運(yùn)行狀態(tài)的線程的時(shí)間片結(jié)束。
3.根據(jù)權(quán)利要求1所述的處理器調(diào)度方法,其特征在于,所述方法還包括:
在所述處于就緒狀態(tài)且優(yōu)先級(jí)最高的線程具有多個(gè)時(shí),按照各線程的時(shí)間片比例輪流在所述處理器中執(zhí)行。
4.根據(jù)權(quán)利要求2所述的處理器調(diào)度方法,其特征在于,判斷所述處于就緒狀態(tài)且優(yōu)先級(jí)最高的線程的優(yōu)先級(jí)是否比所述當(dāng)前處于運(yùn)行狀態(tài)的線程的優(yōu)先級(jí)高的步驟之前還包括:
檢查函數(shù)是否被線程調(diào)度以及所述處理器內(nèi)核是否允許線程調(diào)度,若是則計(jì)算處于就緒狀態(tài)的線程的最高優(yōu)先級(jí)。
5.根據(jù)權(quán)利要求1所述的處理器調(diào)度方法,其特征在于,修改線程的優(yōu)先級(jí)或時(shí)間片并獲取處于就緒狀態(tài)且優(yōu)先級(jí)最高的線程的步驟包括:
判斷待修改優(yōu)先級(jí)的線程的狀態(tài);
若所述待修改優(yōu)先級(jí)的線程為就緒狀態(tài),則在修改所述線程的優(yōu)先級(jí)后獲取處于就緒狀態(tài)且優(yōu)先級(jí)最高的線程;
若所述待修改優(yōu)先級(jí)的線程不為就緒狀態(tài),則等待當(dāng)前處于運(yùn)行狀態(tài)的線程退出內(nèi)核獨(dú)占區(qū)。
6.一種處理器調(diào)度系統(tǒng),其特征在于,所述系統(tǒng)包括:
指令接收模塊,用于接收線程優(yōu)先級(jí)或時(shí)間片修改指令;
處理模塊,用于修改線程的優(yōu)先級(jí)或時(shí)間片并獲取處于就緒狀態(tài)且優(yōu)先級(jí) 最高的線程;
執(zhí)行模塊,用于當(dāng)前處于運(yùn)行狀態(tài)的線程退出內(nèi)核獨(dú)占區(qū)時(shí),將所述處于就緒狀態(tài)且優(yōu)先級(jí)最高的線程按照其時(shí)間片長(zhǎng)短在處理器中執(zhí)行。
7.根據(jù)權(quán)利要求6所述的處理器調(diào)度系統(tǒng),其特征在于,所述處理模塊還包括第一判斷單元,所述第一判斷單元用于判斷所述處于就緒狀態(tài)且優(yōu)先級(jí)最高的線程的優(yōu)先級(jí)是否比所述當(dāng)前處于運(yùn)行狀態(tài)的線程的優(yōu)先級(jí)高;
所述執(zhí)行模塊還用于所述處于就緒狀態(tài)且優(yōu)先級(jí)最高的線程的優(yōu)先級(jí)比所述當(dāng)前處于運(yùn)行狀態(tài)的線程的優(yōu)先級(jí)高時(shí),請(qǐng)求所述處理器內(nèi)核中斷執(zhí)行所述當(dāng)前處于運(yùn)行狀態(tài)的線程,否則等待所述當(dāng)前處于運(yùn)行狀態(tài)的線程的時(shí)間片結(jié)束。
8.根據(jù)權(quán)利要求6所述的處理器調(diào)度系統(tǒng),其特征在于,所述執(zhí)行模塊還用于在所述處于就緒狀態(tài)且優(yōu)先級(jí)最高的線程具有多個(gè)時(shí),按照各線程的時(shí)間片比例輪流在所述處理器中執(zhí)行。
9.根據(jù)權(quán)利要求7所述的處理器調(diào)度系統(tǒng),其特征在于,所述處理模塊還包括檢查單元,用于檢查函數(shù)是否被線程調(diào)度以及所述處理器內(nèi)核是否允許線程調(diào)度,若是所述處理模塊則計(jì)算處于就緒狀態(tài)的線程的最高優(yōu)先級(jí)。
10.根據(jù)權(quán)利要求6所述的處理器調(diào)度系統(tǒng),其特征在于,所述處理模塊還包括第二判斷單元,所述第二判斷單元用于判斷待修改優(yōu)先級(jí)的線程的狀態(tài);
所述執(zhí)行模塊還用于在所述待修改優(yōu)先級(jí)的線程為就緒狀態(tài)時(shí),在修改所述線程的優(yōu)先級(jí)后獲取處于就緒狀態(tài)且優(yōu)先級(jí)最高的線程;
所述執(zhí)行模塊還用于在所述待修改優(yōu)先級(jí)的線程不為就緒狀態(tài)時(shí),則等待當(dāng)前處于運(yùn)行狀態(tài)的線程退出內(nèi)核獨(dú)占區(qū)。