操作系統(tǒng)課程設(shè)計題目及任務(wù)new_第1頁
操作系統(tǒng)課程設(shè)計題目及任務(wù)new_第2頁
操作系統(tǒng)課程設(shè)計題目及任務(wù)new_第3頁
操作系統(tǒng)課程設(shè)計題目及任務(wù)new_第4頁
操作系統(tǒng)課程設(shè)計題目及任務(wù)new_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、題目1:時間片輪轉(zhuǎn)調(diào)度算法模擬要求:用實驗方法模擬單處理機系統(tǒng)的進程調(diào)度,并采用時間片輪轉(zhuǎn)調(diào)度算法作為進程調(diào)度算法。具體任務(wù):1、理解掌握進程調(diào)度實現(xiàn)所涉及到的主要問題:如何組織進程、如何實現(xiàn)處理機調(diào)度。進程控制塊的作用和結(jié)構(gòu),進程控制塊的鏈表組織。進程調(diào)度程序包含從進程就緒隊列選擇并摘取進程、給該進程分配處理機。2、設(shè)計進程控制塊相關(guān)數(shù)據(jù)結(jié)構(gòu),進程狀態(tài)躍遷的相關(guān)模擬;3、實現(xiàn)時間片進程調(diào)度算法模擬程序設(shè)計、編碼及調(diào)試。題目2:靜態(tài)優(yōu)先級調(diào)度算法模擬要求:用實驗方法模擬單處理機系統(tǒng)的進程調(diào)度,并采用靜態(tài)優(yōu)先級調(diào)度算法作為進程調(diào)度算法。具體任務(wù):1、理解掌握進程調(diào)度實現(xiàn)所涉及到的主要問題:如何組

2、織進程、如何實現(xiàn)處理機調(diào)度。進程控制塊的作用和結(jié)構(gòu),進程控制塊的鏈表組織。進程調(diào)度程序包含從進程就緒隊列選擇并摘取進程、給該進程分配處理機。2、設(shè)計進程控制塊相關(guān)數(shù)據(jù)結(jié)構(gòu),進程狀態(tài)躍遷的相關(guān)模擬;3、實現(xiàn)靜態(tài)優(yōu)先級調(diào)度算法模擬程序設(shè)計、編碼及調(diào)試。題目3:最短剩余時間優(yōu)先(動態(tài)優(yōu)先)調(diào)度算法模擬要求:用實驗方法模擬單處理機系統(tǒng)的進程調(diào)度,并采用最短剩余時間優(yōu)先調(diào)度算法作為進程調(diào)度算法。具體任務(wù):1、理解掌握進程調(diào)度實現(xiàn)所涉及到的主要問題:如何組織進程、如何實現(xiàn)處理機調(diào)度。進程控制塊的作用和結(jié)構(gòu),進程控制塊的鏈表組織。進程調(diào)度程序包含從進程就緒隊列選擇并摘取進程、給該進程分配處理機。2、設(shè)計進程

3、控制塊相關(guān)數(shù)據(jù)結(jié)構(gòu),進程狀態(tài)躍遷的相關(guān)模擬;3、實現(xiàn)最短剩余時間優(yōu)先調(diào)度算法模擬程序設(shè)計、編碼及調(diào)試。題目4作業(yè)調(diào)度設(shè)計1、目的本實驗的目的是通過模擬作業(yè)調(diào)度算法的設(shè)計加深對作業(yè)管理基本原理的理解。2、內(nèi)容在后備作業(yè)隊列中,輸入5個作業(yè)各自運行所需要的時間及存儲空間。按先來先服務(wù)的原則進行調(diào)度,輸出作業(yè)調(diào)度的順序及等待的時間。按最短作業(yè)(即運行時間最短)優(yōu)先的原則進行調(diào)度,輸出作業(yè)調(diào)度的順序及等待時間。按最小作業(yè)(即存儲空間最?。﹥?yōu)先的原則進行調(diào)度,輸出作業(yè)調(diào)度的順序及等待的時間。根據(jù)運行情況,比較各種算法。在后備作業(yè)隊列中,先輸入5個作業(yè)各自運行所需要的時間,然后每輸入一個作業(yè)的運行時間,就

4、按響應(yīng)比高優(yōu)先的原則進行調(diào)度,直到輸入作業(yè)的運行時間為0時,依次輸出響應(yīng)比高的其它作業(yè)。3、要求對輸入的每個作業(yè)必須編號,輸出時要有作業(yè)序號、運行時間、存儲空間及等待時間(包括總的等待時間);報告中的運行情況要包括輸入和輸出情況;比較上面幾種調(diào)度算法的優(yōu)劣。4、舉例建主程序、三個子程序(例如:先來先服務(wù)FCFS、最短作業(yè)優(yōu)先LSFS、最短運行時間作業(yè)優(yōu)先SRFS)、打印程序及原始數(shù)據(jù)。五個作業(yè)運行時間,建文件DATA.DAT,其中包含num、runtime、storage、waittime和The waiting time。題目5存儲管理頁面置換算法模擬實現(xiàn)及比較1、目的通過請求頁式管理中頁面

5、置換算法了解虛擬存儲技術(shù)的特點,掌握請求頁式存儲管理的頁面置換算法。2、內(nèi)容通過隨機數(shù)產(chǎn)生一個指令序列,共320條指令。指令的地址按下述原則生成:一半的指令是順序執(zhí)行的;四分之一的指令是均勻分布在前地址部分;四分之一的指令是均勻分布在前地址部分。具體的實施辦法是:在0,319之間選一起點m;順序執(zhí)行一條指令,即m+1條;向前地址0,m1中執(zhí)行一條指令m;順序執(zhí)行一條指令,即m+1條;向后地址(m+2,319執(zhí)行一條指令m將指令序列變換成為頁地址流。假設(shè):頁面大小為1KB;用戶實寸容量為4頁到32頁;用戶虛存容量為32KB。用戶虛存容量32KB,每1KB中放10條指令,共320條指令(0319)

6、。其中09為0頁,1019為1頁310319為31頁。使用不同的頁面調(diào)度算法處理缺頁中斷,并計算不同實存容量下(432KB)的命中率。先進先出算法(FIFO);最近最少使用算法(LRU);最佳淘汰算法(OPT);先淘汰最不常用的頁地址;最少訪問頁面算法(LFU)。命中率的算法為:命中率=缺頁中斷次數(shù)/頁地址流長度3、要求實驗報告中要有程序的詳細框圖,特別是有關(guān)算法本身的框圖;實驗報告中要有程序清單及執(zhí)行的結(jié)果;對不同算法的性能進行評價。題目6linux進程間同步與互斥1、目的調(diào)用linux系統(tǒng)調(diào)用實現(xiàn)多進程的創(chuàng)建、進程間同步與互斥。2、內(nèi)容進程的創(chuàng)建編制一段程序,使用系統(tǒng)調(diào)用fork( )創(chuàng)建

7、兩個子進程,這樣在此程序運行時,在系統(tǒng)中就有一個父進程和兩個自進程在活動。讓每一個進程在屏幕上顯示一個字符:父進程顯示字符a,自進程分別顯示字符b和字符c。試觀察、記錄并分析屏幕上進程調(diào)度的情況。如果在程序中使用系統(tǒng)調(diào)用nice( )來改變各進程的優(yōu)先級,會出現(xiàn)什么現(xiàn)象?進程的控制修改已編制的程序,將每個進程輸出一個字符修改為每個進程輸出一句話,再觀察程序執(zhí)行時屏幕上出現(xiàn)的現(xiàn)象。并分析出現(xiàn)問題的原因。進一步理解各個進程爭奪臨界資源的情況。如果在程序中使用系統(tǒng)調(diào)用locking( )來給每一個進程加鎖,可以實現(xiàn)進程之間的互斥,試觀察并分析出現(xiàn)的現(xiàn)象。進程的軟中斷通訊編制一段程序,實現(xiàn)進程的軟中斷

8、通訊:使用系統(tǒng)調(diào)用fork( )創(chuàng)建兩個子進程;再使用系統(tǒng)調(diào)用。signal( )讓父進程捕捉鍵盤上來的中斷信號(即按Del鍵);在捕捉到中斷信號后,父進程用系統(tǒng)調(diào)用kill( )向兩個子進程發(fā)信號;子進程捕捉到信號后分別輸出下列信息后終止:child process1 is killed by parent!child process2 is killed by parent!父進程等待兩個子進程都終止以后,輸出如下信息后終止。parent process in killed!3、要求仔細觀察設(shè)計中的各種現(xiàn)象及出現(xiàn)的問題。分析產(chǎn)生各種現(xiàn)象的原因。尋找解決問題的辦法。報告應(yīng)至少包括帶注釋的程序

9、清單、輸出的結(jié)果及對各種現(xiàn)象的分析意見。題目7linux進程間管道通信實現(xiàn)生產(chǎn)者-消費者問題1、目的調(diào)用linux系統(tǒng)調(diào)用實現(xiàn)多進程的創(chuàng)建、進程間利用管道進行通信。2、內(nèi)容進程的創(chuàng)建編制一段程序,使用系統(tǒng)調(diào)用fork( )創(chuàng)建兩個子進程,這樣在此程序運行時,在系統(tǒng)中就有一個父進程和兩個自進程在活動。讓每一個進程在屏幕上顯示一個字符:父進程顯示字符a,自進程分別顯示字符b和字符c。試觀察、記錄并分析屏幕上進程調(diào)度的情況。如果在程序中使用系統(tǒng)調(diào)用nice( )來改變各進程的優(yōu)先級,會出現(xiàn)什么現(xiàn)象?(2)進程的管道通訊編制一段程序,實現(xiàn)進程的管道通訊:使用系統(tǒng)調(diào)用pipe()建立一條管道線;兩個子進

10、程分別循環(huán)向這條管道寫一句話:child 1 is sending a message!child 2 is sending a message!而父進程則循環(huán)從管道中讀出信息,顯示在屏幕上。用管道進行通訊,實質(zhì)上是一個多生產(chǎn)者單消費者的問題,必須考慮其中都有哪些同步和互斥,同時向管道輸入端寫的字節(jié)數(shù)必須和從輸出端讀的字節(jié)數(shù)一致,若不一致,則會出現(xiàn)什么問題。3、要求仔細觀察設(shè)計中的各種現(xiàn)象及出現(xiàn)的問題。分析產(chǎn)生各種現(xiàn)象的原因。尋找解決問題的辦法。報告應(yīng)至少包括帶注釋的程序清單、輸出的結(jié)果及對各種現(xiàn)象的分析意見。題目8linux進程軟中斷實現(xiàn)進程間通信1、目的調(diào)用linux系統(tǒng)調(diào)用實現(xiàn)多進程的創(chuàng)

11、建、進程間利用軟中斷進行通信。2、內(nèi)容進程的創(chuàng)建編制一段程序,使用系統(tǒng)調(diào)用fork( )創(chuàng)建兩個子進程,這樣在此程序運行時,在系統(tǒng)中就有一個父進程和兩個自進程在活動。讓每一個進程在屏幕上顯示一個字符:父進程顯示字符a,自進程分別顯示字符b和字符c。試觀察、記錄并分析屏幕上進程調(diào)度的情況。如果在程序中使用系統(tǒng)調(diào)用nice( )來改變各進程的優(yōu)先級,會出現(xiàn)什么現(xiàn)象?(2)進程的“軟中斷”通信它可用于同一用戶的進程之間通信。其方式是:一個進程通過系統(tǒng)調(diào)用kill(pid,sig)向同一用戶的其它進程pid發(fā)送一個軟中斷信號:另一進程通過系統(tǒng)調(diào)用signal(sig,func)捕捉到信號sig后,執(zhí)行

12、予先約定的動作func,從而實現(xiàn)這兩個進程間的通信。發(fā)送信號kill(pid,sig),本進程將指定信號sig發(fā)送給指定進程pid,其中參數(shù)為pid進程號,pid與sig均為整數(shù)值。接收信號signal(sig,func),本進程接收到其它進程發(fā)送給它的信號后,完成指定的功能func。func一般是函數(shù)。在程序中系統(tǒng)調(diào)用sleep(second)用于進程的同步與互斥,自變量是暫停秒數(shù)。其功能是使現(xiàn)行進程暫停執(zhí)行由自變量規(guī)定的秒數(shù)。類似的系統(tǒng)調(diào)用有pause(),它的功能是暫停執(zhí)行本進程,等待kill發(fā)來的信號,收到信號后再繼續(xù)執(zhí)行。在特殊情況下,常用到如下語句signal(SIGINT,SIG

13、_IGN)。它表示遇到了中斷信號SIGINT(按Del鍵)。本進程不做任何動作,即勿略該中斷信號對本進程的影響。(3)編寫一個程序,實現(xiàn)進程的“軟中斷”通信。使用系統(tǒng)調(diào)用fork()創(chuàng)建2個子進程,再使用系統(tǒng)調(diào)用signal()讓父進程捕捉鍵盤上來的中斷信號(即按Del鍵),在捕捉到中斷信號后,父進程用系統(tǒng)調(diào)用kill()向2個子進程發(fā)信號,子進程捕捉到信號后分別輸出下列信息后終止:Child process 1 is killed by parent !Child process 3 is killed by parent !父進程等待2個子進程都終止后,輸出如下信息后終止:Parent p

14、rocess is killed !3、要求仔細觀察設(shè)計中的各種現(xiàn)象及出現(xiàn)的問題。分析產(chǎn)生各種現(xiàn)象的原因。尋找解決問題的辦法。報告應(yīng)至少包括帶注釋的程序清單、輸出的結(jié)果及對各種現(xiàn)象的分析意見。題目9linux進程鎖實現(xiàn)進程間同步與互斥1、目的調(diào)用linux系統(tǒng)調(diào)用實現(xiàn)多進程的創(chuàng)建、進程間利用軟中斷進行通信。2、內(nèi)容進程的創(chuàng)建編制一段程序,使用系統(tǒng)調(diào)用fork( )創(chuàng)建兩個子進程,這樣在此程序運行時,在系統(tǒng)中就有一個父進程和兩個自進程在活動。讓每一個進程在屏幕上顯示一個字符:父進程顯示字符a,自進程分別顯示字符b和字符c。試觀察、記錄并分析屏幕上進程調(diào)度的情況。(2)系統(tǒng)調(diào)用locking進程的

15、控制利用系統(tǒng)調(diào)用locking(fd,mode,size),對指定文件的指定區(qū)域(由size指示)進行加鎖或解鎖,以實現(xiàn)進程的同步與互斥。其中fd是文件描述字;mode是鎖定方式,=1表示加鎖,=0表示解鎖,size是指定文件fd的指定區(qū)域,用0表示從當前位置到文件尾。常用程序段fd = open( “a.out”,2 );i = fork();if( i=0 ) locking(fd,1,0);locking(fd,0,0);(3)編寫一個程序,創(chuàng)建一個文件,文件名為lock.dat,同時父進程創(chuàng)建2個子進程,通過系統(tǒng)調(diào)用locking(),分別讓2個子進程對文件加鎖,再輸出有關(guān)信息,然后解

16、鎖。3、要求仔細觀察設(shè)計中的各種現(xiàn)象及出現(xiàn)的問題。分析產(chǎn)生各種現(xiàn)象的原因。尋找解決問題的辦法。報告應(yīng)至少包括帶注釋的程序清單、輸出的結(jié)果及對各種現(xiàn)象的分析意見。題目10利用進程同步與互斥實現(xiàn)吃水果問題1、目的調(diào)用linux系統(tǒng)調(diào)用實現(xiàn)多進程的創(chuàng)建、進程間同步與互斥解決具體問題。2、內(nèi)容進程的創(chuàng)建編制一段程序,使用系統(tǒng)調(diào)用fork( )創(chuàng)建兩個子進程,這樣在此程序運行時,在系統(tǒng)中就有一個父進程和兩個自進程在活動。讓每一個進程在屏幕上顯示一個字符:父進程顯示字符a,自進程分別顯示字符b和字符c。試觀察、記錄并分析屏幕上進程調(diào)度的情況。(2)利用進程同步與互斥編程實現(xiàn)吃水果問題:桌上有一盤子,桌上有

17、一個空盤,允許存放一只水果,爸爸可向盤內(nèi)放蘋果,媽媽可向盤內(nèi)放桔子,兒子專等吃盤內(nèi)的桔子,女兒專等吃盤中的蘋果。3、要求仔細觀察設(shè)計中的各種現(xiàn)象及出現(xiàn)的問題。分析產(chǎn)生各種現(xiàn)象的原因。尋找解決問題的辦法。報告應(yīng)至少包括帶注釋的程序清單、輸出的結(jié)果及對各種現(xiàn)象的分析意見。題目11利用進程同步與互斥實現(xiàn)理發(fā)師問題1、目的調(diào)用linux系統(tǒng)調(diào)用實現(xiàn)多進程的創(chuàng)建、進程間同步與互斥解決具體問題。2、內(nèi)容進程的創(chuàng)建編制一段程序,使用系統(tǒng)調(diào)用fork( )創(chuàng)建兩個子進程,這樣在此程序運行時,在系統(tǒng)中就有一個父進程和兩個自進程在活動。讓每一個進程在屏幕上顯示一個字符:父進程顯示字符a,自進程分別顯示字符b和字符

18、c。試觀察、記錄并分析屏幕上進程調(diào)度的情況。(2)利用進程同步與互斥編程實現(xiàn)理發(fā)師問題:(1)一個理發(fā)店接待室有n張椅子,工作室有1張椅子; (2)沒有顧客時,理發(fā)師睡覺; (3)第一個顧客來到時,必須將理發(fā)師喚醒; (4)顧客來時如果還有空座的話,他就坐在一個座位上等待; (5)如果顧客來時沒有空座位了,他就離開,不理發(fā)了; (6)當理發(fā)師處理完所有顧客,而又沒有新顧客來時,他又開始睡覺。3、要求仔細觀察設(shè)計中的各種現(xiàn)象及出現(xiàn)的問題。分析產(chǎn)生各種現(xiàn)象的原因。尋找解決問題的辦法。報告應(yīng)至少包括帶注釋的程序清單、輸出的結(jié)果及對各種現(xiàn)象的分析意見。題目12利用進程同步與互斥實現(xiàn)面包房算法1、目的調(diào)

19、用linux系統(tǒng)調(diào)用實現(xiàn)多進程的創(chuàng)建、進程間同步與互斥解決具體問題。2、內(nèi)容進程的創(chuàng)建編制一段程序,使用系統(tǒng)調(diào)用fork( )創(chuàng)建兩個子進程,這樣在此程序運行時,在系統(tǒng)中就有一個父進程和兩個自進程在活動。讓每一個進程在屏幕上顯示一個字符:父進程顯示字符a,自進程分別顯示字符b和字符c。試觀察、記錄并分析屏幕上進程調(diào)度的情況。(2)利用進程同步與互斥編程實現(xiàn)面包房算法: 這是由Lamport于1974年提出的解決互斥問題的另一個軟件算法。面包房不斷制作面包,由若干個(n個)銷售員銷售;每個來到面包房的顧客按次序領(lǐng)到一個號碼(號碼每次加1),并等著叫號,當一個銷售員空閑下來,就叫下一個最小的號碼并

20、為顧客服務(wù)。3、要求仔細觀察設(shè)計中的各種現(xiàn)象及出現(xiàn)的問題。分析產(chǎn)生各種現(xiàn)象的原因。尋找解決問題的辦法。報告應(yīng)至少包括帶注釋的程序清單、輸出的結(jié)果及對各種現(xiàn)象的分析意見。題目13利用進程同步與互斥實現(xiàn)銀行叫號1、目的調(diào)用linux系統(tǒng)調(diào)用實現(xiàn)多進程的創(chuàng)建、進程間同步與互斥解決具體問題。2、內(nèi)容進程的創(chuàng)建編制一段程序,使用系統(tǒng)調(diào)用fork( )創(chuàng)建兩個子進程,這樣在此程序運行時,在系統(tǒng)中就有一個父進程和兩個自進程在活動。讓每一個進程在屏幕上顯示一個字符:父進程顯示字符a,自進程分別顯示字符b和字符c。試觀察、記錄并分析屏幕上進程調(diào)度的情況。(2)利用進程同步與互斥編程實現(xiàn)銀行排隊叫號算法: 銀行有

21、n個窗口(n個職員),每個職員只能對一個顧客辦理業(yè)務(wù)。顧客隨機到來,并排號。每個顧客辦理業(yè)務(wù)的時間也是隨機不等的。每個職員辦完前一個顧客后,從排的顧客中選取排號最小的人進行服務(wù),過時作廢。請完成上述過程的程序。3、要求仔細觀察設(shè)計中的各種現(xiàn)象及出現(xiàn)的問題。分析產(chǎn)生各種現(xiàn)象的原因。尋找解決問題的辦法。報告應(yīng)至少包括帶注釋的程序清單、輸出的結(jié)果及對各種現(xiàn)象的分析意見。題目14 最佳適配內(nèi)存分配算法模擬1、目的用程序?qū)崿F(xiàn)可變分區(qū)內(nèi)存管理過程,并按最佳適配算法進行分配。2、內(nèi)容(1)基本思想可變分區(qū)是指系統(tǒng)不預(yù)先劃分固定分區(qū),而是在裝入程序的時候劃分內(nèi)存區(qū)域,使得為程序分配的分區(qū)大小恰好等于該程序的需

22、求量,且分區(qū)的個數(shù)是可變的。顯然可變分區(qū)有較大的靈活性,較之固定分區(qū)能獲得好的內(nèi)存利用率。(2)數(shù)據(jù)結(jié)構(gòu)可變分區(qū)管理可以用兩種數(shù)據(jù)結(jié)構(gòu)實現(xiàn),一種是已分配區(qū)表和空閑區(qū)表,也就是用預(yù)先定義好的系統(tǒng)空間來存放空間分配信息。另一種也是最常用的就是空閑鏈表,由于對分區(qū)的操作是動態(tài)的,所以很難估計數(shù)據(jù)結(jié)構(gòu)所占用的空間,而且空閑區(qū)表會占用寶貴的系統(tǒng)空間,所以提出了空閑鏈表的概念。(3)設(shè)計要求請實現(xiàn)一個完整的可變分區(qū)管理器,包括最佳適配內(nèi)存分配算法進行分配,回收,分區(qū)碎片整理等。題目15 最差適配內(nèi)存分配算法模擬1、目的用程序?qū)崿F(xiàn)可變分區(qū)內(nèi)存管理過程,并按最差適配算法進行分配。2、內(nèi)容(1)基本思想可變分區(qū)

23、是指系統(tǒng)不預(yù)先劃分固定分區(qū),而是在裝入程序的時候劃分內(nèi)存區(qū)域,使得為程序分配的分區(qū)大小恰好等于該程序的需求量,且分區(qū)的個數(shù)是可變的。顯然可變分區(qū)有較大的靈活性,較之固定分區(qū)能獲得好的內(nèi)存利用率。(2)數(shù)據(jù)結(jié)構(gòu)可變分區(qū)管理可以用兩種數(shù)據(jù)結(jié)構(gòu)實現(xiàn),一種是已分配區(qū)表和空閑區(qū)表,也就是用預(yù)先定義好的系統(tǒng)空間來存放空間分配信息。另一種也是最常用的就是空閑鏈表,由于對分區(qū)的操作是動態(tài)的,所以很難估計數(shù)據(jù)結(jié)構(gòu)所占用的空間,而且空閑區(qū)表會占用寶貴的系統(tǒng)空間,所以提出了空閑鏈表的概念。(3)設(shè)計要求請實現(xiàn)一個完整的可變分區(qū)管理器,包括最差適配內(nèi)存分配算法進行分配,并進行回收,分區(qū)碎片整理等。題目16 分頁式內(nèi)存

24、管理模擬1、目的用程序?qū)崿F(xiàn)分頁式內(nèi)存管理過程。2、內(nèi)容 分頁機制把線性地址空間和物理地址空間分別劃分為大小相同的塊。這樣的塊稱之為頁。通過在線性地址空間的頁與物理地址空間的頁之間建立 的映射,分頁機制實現(xiàn)線性地址到物理地址的轉(zhuǎn)換。線性地址空間的頁與物理地址空間的頁之間的映射可根據(jù)需要而確定,可根據(jù)需要而改變。線性地址空間的任何 一頁,可以映射為物理地址空間中的任何一頁。 采用分頁管理機制實現(xiàn)線性地址到物理地址轉(zhuǎn)換映射的主要目的是便于實現(xiàn)虛擬存儲器。不象段的大小可變,頁的大小是相等并固定的。根據(jù)程序的邏輯劃分段,而根據(jù)實現(xiàn)虛擬存儲器的方便劃分頁。請實現(xiàn)一個完整的分頁式內(nèi)存管理器,包括相應(yīng)程序邏輯

25、地址與內(nèi)存物理地址頁面的數(shù)據(jù)結(jié)構(gòu)、頁面地址變換、并進行回收等。并實現(xiàn)FIFO、LRU、NRU三種頁面置換算法。題目17 文件系統(tǒng)設(shè)計 通過一個簡單多用戶文件系統(tǒng)的設(shè)計,加深理解文件系統(tǒng)的內(nèi)部功能及內(nèi)部實現(xiàn)。內(nèi)容:為Linux系統(tǒng)設(shè)計一個簡單的二級文件系統(tǒng),以實現(xiàn)下列功能:1可以實現(xiàn)下列幾條命令(1) login 用戶登錄(2) dir 文件目錄列表(3) creat 創(chuàng)建文件(4) delete 刪除文件(5) open 打開文件(6) close 關(guān)閉文件 (7) read 讀文件(8) write 寫文件2實驗提示 (1)首先確定文件系統(tǒng)的數(shù)據(jù)結(jié)構(gòu):主目錄、子目錄及活動文件等。主目錄和子目

26、錄都以文件的形式存放在磁盤,這樣便于查找和修改。 (2)用戶創(chuàng)建的文件,可以編號存儲于磁盤上。如file0、file1、file2等,并以編號作為物理地址,在目錄中進行登記。題目17 磁盤調(diào)度算法的編程實現(xiàn)及評估目的: 通過編程實現(xiàn)磁盤調(diào)度算法設(shè)計,加深理解磁盤調(diào)度算法的理解及提高編程能力。 內(nèi)容: 編程實現(xiàn)下列三種磁盤調(diào)度算法,并求出每種算法的平均尋道時間,并比較性能優(yōu)劣。(1) 先來先服務(wù)(2) 最短尋道時間優(yōu)先(3) 掃描調(diào)度算法題目18 Windows資源管理器的模擬實現(xiàn)目的:通過編程實現(xiàn)windows資源管理器,加深對磁盤、文件夾、文件的理解及編程能力。內(nèi)容: 指定有磁盤或文件夾,通

27、過遞歸的方法搜索該位置下的所有資源并列出相應(yīng)信息(屬性、大小、日期等)。題目19 Linux操作系統(tǒng)內(nèi)核配置與編譯目的:了解Linux操作系統(tǒng)內(nèi)核的結(jié)構(gòu),并根據(jù)需要進行內(nèi)核的配置與編譯。內(nèi)容:1. 了解linux操作系統(tǒng)的目錄結(jié)構(gòu)2. 掌握linux操作系統(tǒng)內(nèi)核的選項作用3. 進行操作系統(tǒng)內(nèi)核配置4. 編譯操作系統(tǒng)內(nèi)核5. 利用新的內(nèi)核進行啟動操作系統(tǒng)。題目20 Linux操作系統(tǒng)模塊編譯與使用目的:了解Linux操作系統(tǒng)模塊程序的結(jié)構(gòu),并根據(jù)需要進行簡單內(nèi)核模塊的編譯與使用。內(nèi)容:1. 了解linux操作系統(tǒng)的模塊程序的結(jié)構(gòu)2. 進行操作系統(tǒng)模塊程序內(nèi)核配置3. 編譯操作系統(tǒng)模塊4. 將新的

28、模塊插入到操作系統(tǒng),并使用該模塊,查看模塊相關(guān)信息5. 最終卸載該模塊。題目21 資源管理器搜索功能的實現(xiàn)目的:通過編程實現(xiàn)windows資源管理器的搜索功能,加深對磁盤、文件夾、文件的理解及編程能力。內(nèi)容:指定有磁盤或文件夾,通過遞歸的方法搜索該位置下符合條件的資源并列出相應(yīng)信息(屬性、大小、日期等)。題目22 進程管理器的模擬實現(xiàn)目的:編程模擬實現(xiàn)進程管理器,加深對進程、程序概念掌握,并提高編程能力。內(nèi)容:利用Windows相關(guān)編程工具,實現(xiàn)進程管理器的相關(guān)功能:(1) 顯示當前正在運行的進程及其占用的資源(2) 可以對某一進程進行停止;題目23 linux內(nèi)核進程調(diào)度算法源碼分析通過閱讀

29、linux源代碼,分析研究linux的進程調(diào)度策略和算法。要求以源碼為依據(jù),回答下面的問題:1) 進程調(diào)度隊列是如何組織的2) 三種調(diào)度類型(SCHED_FIFO, SCHED_RR, SCHED_OHTER)的實現(xiàn)過程3) 優(yōu)先級是如何定義和動態(tài)變化的4) 時間片的賦值?它與優(yōu)先級的關(guān)系?重點分析內(nèi)核數(shù)據(jù)結(jié)構(gòu)task_struct(在include/linux/sched.h中)和調(diào)度函數(shù)schedule()(在kernel/sched.c中題目24 linux虛擬的管道字符設(shè)備驅(qū)動程序?qū)崿F(xiàn)要求:(1)管道:一個FIFO的信息流。允許多個進程向管道寫入數(shù)據(jù),允許多個進程從管道讀出數(shù)據(jù)。在讀/寫過程中,保證數(shù)據(jù)的寫入順序與讀出順序是一致的。(2)以字符設(shè)備的形式實現(xiàn)管道字

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論