新聞中心
linux是一種開放源代碼,多用戶操作系統(tǒng)。它提供了一個(gè)平臺(tái),支持各種程序和應(yīng)用程序的執(zhí)行,以實(shí)現(xiàn)高效、安全的操作。因此,保證Linux系統(tǒng)有效地利用計(jì)算機(jī)資源,就顯得尤為重要。對(duì)此,Linux系統(tǒng)提供了有效地調(diào)度機(jī)制,它根據(jù)不同的情況提供不同的調(diào)度算法,以保持系統(tǒng)在高效率和公平之間取得平衡。

Linux系統(tǒng)使用調(diào)度程序記錄所有正在運(yùn)行的進(jìn)程。系統(tǒng)核心(內(nèi)核)可以訪問(wèn)調(diào)度程序,以檢查哪些進(jìn)程正在運(yùn)行,并確定哪些進(jìn)程應(yīng)該進(jìn)入到執(zhí)行狀態(tài)。 Linux系統(tǒng)的調(diào)度程序采用傳統(tǒng)的可搶占調(diào)度策略,即在它運(yùn)行的不同時(shí)間點(diǎn),內(nèi)核可以根據(jù)需要打斷和重新啟動(dòng)進(jìn)程,以搶占資源。
在Linux系統(tǒng)中,調(diào)度策略是由調(diào)度器決定的,它是由一系列組成的調(diào)度算法,可以根據(jù)當(dāng)前的系統(tǒng)負(fù)荷情況來(lái)確定掛起/恢復(fù)的進(jìn)程,以實(shí)現(xiàn)系統(tǒng)穩(wěn)定的、高效的調(diào)度。常見(jiàn)的調(diào)度算法包括先來(lái)先服務(wù)(FCFS)算法和最短剩余時(shí)間算法(SRT)等。
Linux系統(tǒng)同時(shí)還支持任務(wù)和優(yōu)先級(jí)調(diào)度策略。與搶占式調(diào)度方式不同,任務(wù)調(diào)度是將一系列當(dāng)前激活的進(jìn)程歸類為任務(wù)組,其優(yōu)先級(jí)被設(shè)置為比普通進(jìn)程優(yōu)先級(jí)高的固定值,高優(yōu)先級(jí)任務(wù)組中的進(jìn)程總是會(huì)優(yōu)先被調(diào)度,這樣可以保證重要的進(jìn)程能夠優(yōu)先得到資源,實(shí)現(xiàn)系統(tǒng)的穩(wěn)定性。
最后,Linux系統(tǒng)的調(diào)度機(jī)制提供了一種以公平和高效性為基礎(chǔ)的機(jī)制,以此來(lái)改善系統(tǒng)性能,以保證實(shí)時(shí)和多任務(wù)進(jìn)程有效地共享并復(fù)用系統(tǒng)資源,從而有效地提高系統(tǒng)的特定性能指標(biāo),為用戶提供更為舒適的交互體驗(yàn)。
// Linux調(diào)度程序
/*
* schedule()
*
* 根據(jù)調(diào)度算法和優(yōu)先級(jí)將上下文切換到新進(jìn)程
*/
void schedule(struct task_struct * new) {
// 保存活動(dòng)進(jìn)程的上下文
// 開始新進(jìn)程的上下文變換
}
/*
* pick_next_task()
*
* 從就緒隊(duì)列中選擇下一個(gè)最優(yōu)的任務(wù)
*/
struct task_struct * pick_next_task() {
// 遍歷就緒隊(duì)列
// 使用調(diào)度算法選擇合適的進(jìn)程
// 返回最優(yōu)任務(wù)
}
香港服務(wù)器選創(chuàng)新互聯(lián),2H2G首月10元開通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務(wù)提供商,擁有超過(guò)10年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機(jī)、網(wǎng)站系統(tǒng)開發(fā)經(jīng)驗(yàn)。專業(yè)提供云主機(jī)、虛擬主機(jī)、域名注冊(cè)、VPS主機(jī)、云服務(wù)器、香港云服務(wù)器、免備案服務(wù)器等。
分享題目:Linux系統(tǒng)的調(diào)度機(jī)制:保持效率和公平?。╨inux系統(tǒng)調(diào)度機(jī)制)
標(biāo)題鏈接:http://fisionsoft.com.cn/article/dhoeepi.html


咨詢
建站咨詢
