《進(jìn)程調(diào)度》PPT課件

《進(jìn)程調(diào)度》PPT課件

ID:37394751

大?。?.57 MB

頁數(shù):109頁

時間:2019-05-11

《進(jìn)程調(diào)度》PPT課件_第1頁
《進(jìn)程調(diào)度》PPT課件_第2頁
《進(jìn)程調(diào)度》PPT課件_第3頁
《進(jìn)程調(diào)度》PPT課件_第4頁
《進(jìn)程調(diào)度》PPT課件_第5頁
資源描述:

《《進(jìn)程調(diào)度》PPT課件》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、Wax526@163.comLinux內(nèi)核分析-2Linux系統(tǒng)結(jié)構(gòu)Linux內(nèi)核組成Linux內(nèi)核主要由五個子系統(tǒng)組成:進(jìn)程調(diào)度,內(nèi)存管理,虛擬文件系統(tǒng),網(wǎng)絡(luò)接口,進(jìn)程間通信。(1)進(jìn)程調(diào)度(SCHED):控制進(jìn)程對CPU的訪問。當(dāng)需要選擇下一個進(jìn)程運行時,由調(diào)度程序選擇最值得運行的進(jìn)程??蛇\行進(jìn)程實際上是僅等待CPU資源的進(jìn)程,如果某個進(jìn)程在等待其它資源,則該進(jìn)程是不可運行進(jìn)程。Linux使用了比較簡單的基于優(yōu)先級的進(jìn)程調(diào)度算法選擇新的進(jìn)程。Linux內(nèi)核功能(2)內(nèi)存管理(MM)允許多個進(jìn)程安全

2、的共享主內(nèi)存區(qū)域。Linux的內(nèi)存管理支持虛擬內(nèi)存,即在計算機(jī)中運行的程序,其代碼,數(shù)據(jù),堆棧的總量可以超過實際內(nèi)存的大小,操作系統(tǒng)只是把當(dāng)前使用的程序塊保留在內(nèi)存中,其余的程序塊則保留在磁盤中。必要時,操作系統(tǒng)負(fù)責(zé)在磁盤和內(nèi)存間交換程序塊。內(nèi)存管理從邏輯上分為硬件無關(guān)部分和硬件有關(guān)部分。硬件無關(guān)部分提供了進(jìn)程的映射和邏輯內(nèi)存的對換;硬件相關(guān)的部分為內(nèi)存管理硬件提供了虛擬接口。Linux內(nèi)核功能(3)虛擬文件系統(tǒng)(VirtualFileSystem,VFS)隱藏了各種硬件的具體細(xì)節(jié),為所有的設(shè)備提供了

3、統(tǒng)一的接口,VFS提供了多達(dá)數(shù)十種不同的文件系統(tǒng)。虛擬文件系統(tǒng)可以分為邏輯文件系統(tǒng)和設(shè)備驅(qū)動程序。邏輯文件系統(tǒng)指Linux所支持的文件系統(tǒng),如ext,fat等,設(shè)備驅(qū)動程序指為每一種硬件控制器所編寫的設(shè)備驅(qū)動程序模塊。Linux內(nèi)核功能(4)網(wǎng)絡(luò)接口(NET)提供了對各種網(wǎng)絡(luò)標(biāo)準(zhǔn)的存取和各種網(wǎng)絡(luò)硬件的支持。網(wǎng)絡(luò)接口可分為網(wǎng)絡(luò)協(xié)議和網(wǎng)絡(luò)驅(qū)動程序。網(wǎng)絡(luò)協(xié)議部分負(fù)責(zé)實現(xiàn)每一種可能的網(wǎng)絡(luò)傳輸協(xié)議。網(wǎng)絡(luò)設(shè)備驅(qū)動程序負(fù)責(zé)與硬件設(shè)備通訊,每一種可能的硬件設(shè)備都有相應(yīng)的設(shè)備驅(qū)動程序。(5)進(jìn)程間通訊(IPC)支持進(jìn)程

4、間各種通信機(jī)制。Linux內(nèi)核功能各個子系統(tǒng)之間的依賴關(guān)系如下:處于中心位置的進(jìn)程調(diào)度,所有其它的子系統(tǒng)都依賴它,因為每個子系統(tǒng)都需要掛起或恢復(fù)進(jìn)程。一般情況下,當(dāng)一個進(jìn)程等待硬件操作完成時,它被掛起;當(dāng)操作真正完成時,進(jìn)程被恢復(fù)執(zhí)行。例如,當(dāng)一個進(jìn)程通過網(wǎng)絡(luò)發(fā)送一條消息時,網(wǎng)絡(luò)接口需要掛起發(fā)送進(jìn)程,直到硬件成功地完成消息的發(fā)送,當(dāng)消息被成功的發(fā)送出去以后,網(wǎng)絡(luò)接口給進(jìn)程返回一個代碼,表示操作的成功或失敗。其他子系統(tǒng)以相似的理由依賴于進(jìn)程調(diào)度。Linux內(nèi)核功能進(jìn)程調(diào)度與內(nèi)存管理之間的關(guān)系:這兩個子系

5、統(tǒng)互相依賴。在多道程序環(huán)境下,程序要運行必須為之創(chuàng)建進(jìn)程,而創(chuàng)建進(jìn)程的第一件事情,就是將程序和數(shù)據(jù)裝入內(nèi)存。? 進(jìn)程間通信與內(nèi)存管理的關(guān)系:進(jìn)程間通信子系統(tǒng)要依賴內(nèi)存管理支持共享內(nèi)存通信機(jī)制,這種機(jī)制允許兩個進(jìn)程除了擁有自己的私有空間,還可以存取共同的內(nèi)存區(qū)域。? 虛擬文件系統(tǒng)與網(wǎng)絡(luò)接口之間的關(guān)系:虛擬文件系統(tǒng)利用網(wǎng)絡(luò)接口支持網(wǎng)絡(luò)文件系統(tǒng)(NFS),也利用內(nèi)存管理支持RAMDISK設(shè)備。Linux內(nèi)核功能內(nèi)存管理與虛擬文件系統(tǒng)之間的關(guān)系:內(nèi)存管理利用虛擬文件系統(tǒng)支持交換,交換進(jìn)程定期由調(diào)度程序調(diào)度

6、,這也是內(nèi)存管理依賴于進(jìn)程調(diào)度的原因。當(dāng)一個進(jìn)程存取的內(nèi)存映射被換出時,內(nèi)存管理向文件系統(tǒng)發(fā)出請求,同時,掛起當(dāng)前正在運行的進(jìn)程。? 除了這些依賴關(guān)系外,內(nèi)核中的所有子系統(tǒng)還要依賴于一些共同的資源。這些資源包括所有子系統(tǒng)都用到的過程。例如:分配和釋放內(nèi)存空間的過程,打印警告或錯誤信息的過程,還有系統(tǒng)的調(diào)試?yán)痰鹊?。Linux內(nèi)核功能進(jìn)程管理1進(jìn)程管理的基本概念2Linux中的進(jìn)程管理1進(jìn)程的基本概念1.1程序的順序執(zhí)行和并發(fā)執(zhí)行1.程序的順序執(zhí)行所謂程序的順序執(zhí)行是指該程序獨占整個系統(tǒng)中的所有資源,

7、處理機(jī)嚴(yán)格按照程序所規(guī)定的順序進(jìn)行操作,只有在前一個操作執(zhí)行完后,才進(jìn)行后繼操作。程序的順序執(zhí)行有以下特征。(1)順序性。(2)封閉性。(3)可再現(xiàn)性。2.程序的并發(fā)執(zhí)行程序的并發(fā)執(zhí)行可總結(jié)為:一組在邏輯上互相獨立的程序或程序段在執(zhí)行過程中其執(zhí)行時間在客觀上互相重疊,即一個程序段的執(zhí)行尚未結(jié)束,另一個程序段的執(zhí)行已經(jīng)開始的執(zhí)行方式。程序的順序執(zhí)行一個有四條語句的程序段:S1:a:=x+2;S2:b:=y+4;S3:c:=a+b;S4:d:=c+b;程序的順序執(zhí)行s1s2s3s4程序的并發(fā)執(zhí)行s1s2s

8、3s4程序并發(fā)執(zhí)行時具有如下特征。(1)間斷性。(2)失去封閉性。(3)不可再現(xiàn)性。程序AM1:N:=N+1gotoM1程序BM2:PRINT(N);N:=0;gotoM2設(shè)共享變量N初值為8,則會產(chǎn)生三種執(zhí)行結(jié)果:9,9,08,0,18,9,01.2進(jìn)程的定義和特征1.進(jìn)程的定義進(jìn)程是一個具有一定獨立功能的程序關(guān)于某個數(shù)據(jù)集合的一次運行活動。2.進(jìn)程的特征(1)結(jié)構(gòu)特征(2)動態(tài)性(3)并發(fā)性(4)獨立性(5)異步性1.3進(jìn)程的狀態(tài)及其轉(zhuǎn)換1.進(jìn)程的基

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。