操作系統(tǒng)實(shí)驗(yàn)指導(dǎo)書_第1頁
操作系統(tǒng)實(shí)驗(yàn)指導(dǎo)書_第2頁
操作系統(tǒng)實(shí)驗(yàn)指導(dǎo)書_第3頁
操作系統(tǒng)實(shí)驗(yàn)指導(dǎo)書_第4頁
操作系統(tǒng)實(shí)驗(yàn)指導(dǎo)書_第5頁
已閱讀5頁,還剩39頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、操作系統(tǒng)實(shí) 驗(yàn) 指 導(dǎo) 書孫 述 和 編計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院2013年4 -6月用目 錄實(shí)驗(yàn)一 Win2K交互命令與進(jìn)程管理1實(shí)驗(yàn)二 Linux交互命令3實(shí)驗(yàn)三 Linux vi編輯器的使用以及編程實(shí)踐10實(shí)驗(yàn)四 Win2K系統(tǒng)的管理功能13實(shí)驗(yàn)五 Linux進(jìn)程控制與進(jìn)程通信16實(shí)驗(yàn)六 進(jìn)程調(diào)度模擬程序設(shè)計(jì)20實(shí)驗(yàn)七 頁面置換模擬程序設(shè)計(jì)31實(shí)驗(yàn)八 文件系統(tǒng)模擬程序設(shè)計(jì)40操作系統(tǒng)(OS)實(shí)驗(yàn)報(bào)告參考模板59實(shí)驗(yàn)一 Win2K交互命令與進(jìn)程管理一、實(shí)驗(yàn)?zāi)康模?、 通過交互命令的操作實(shí)踐,了解并熟悉Win2000/XP系統(tǒng)的系統(tǒng)功能、文件和網(wǎng)絡(luò)等的管理功能和方法;2、 掌握使用任務(wù)管理器,實(shí)現(xiàn)

2、對Win2000/XP系統(tǒng)的進(jìn)程及內(nèi)部資源利用率的分析管理;二、實(shí)驗(yàn)內(nèi)容:1、 Win2000/XP系統(tǒng)的交互命令2、 Win2000/XP系統(tǒng)的任務(wù)管理器三、實(shí)驗(yàn)方法與步驟:1、 轉(zhuǎn)換當(dāng)前驅(qū)動器(或盤符);2、 目錄管理;3、 文件的創(chuàng)建、編輯、查看、復(fù)制、比較和改名等管理;4、 本地網(wǎng)絡(luò)配置與連接狀態(tài)等的測試與查看等;5、 打開任務(wù)管理器窗口,查看CPU和內(nèi)存的使用情況;6、 進(jìn)程(及活動程序)的查找、查看、撤銷(殺死);7、 網(wǎng)絡(luò)和用戶活動情況監(jiān)控;8、 任務(wù)管理器中的其它菜單與功能。四、實(shí)驗(yàn)素材1、 需要閱讀的參考資料,參見教材P.238-246 ;2、 字符交互命令窗口及執(zhí)行情況參見

3、圖1-1;3、 任務(wù)管理器窗口參見圖1-2圖1-1圖1-2實(shí)驗(yàn)二 Linux交互命令一、實(shí)驗(yàn)?zāi)康模?、 熟悉并掌握Linux系統(tǒng)的交互命令,能夠用交互字符命令實(shí)現(xiàn):目錄管理、文件管理、文本文件的查看和編輯、文件的查找/復(fù)制/改名/比較、本地網(wǎng)絡(luò)配置與連接狀態(tài)等的測試與查看等;2、 了解并熟悉Linux系統(tǒng)的進(jìn)程管理,學(xué)會進(jìn)程的查找、查看、撤銷(殺死),分析系統(tǒng)核心資源分配和使用情況等;3、 通過交互命令的操作實(shí)踐,了解并熟悉Linux系統(tǒng)的系統(tǒng)功能、文件和網(wǎng)絡(luò)等的管理功能和方法;二、實(shí)驗(yàn)內(nèi)容:1、 掌握圖形界面和字符界面下關(guān)機(jī)及重啟的命令。2、 掌握Linux下獲取幫助信息的命令:man、in

4、fo、help以及其他實(shí)用程序。3、 練習(xí)常用的shell命令三、實(shí)驗(yàn)方法與步驟:1、 圖形界面和字符界面下關(guān)機(jī)以及重啟命令立即關(guān)機(jī)并重啟動:shutdown r now或者 reboot;立即關(guān)機(jī):shutdown h now 或者poweroff等待10分鐘關(guān)機(jī)/關(guān)機(jī)并重啟:shutdown h 10 / shutdown r 102、 獲取幫助信息命令注: 內(nèi)為可選命令help -dms:顯示shell的內(nèi)建指令的幫助信息man -akw name : 顯示實(shí)用程序的有用信息和基本用法。name指定幫助內(nèi)容,-a:對所有與name相關(guān)的內(nèi)容進(jìn)行幫助,-k:在整個(gè)手冊中尋找指定字符串,-w

5、:顯示手冊頁的位置。info name:獲取相關(guān)命令的詳細(xì)使用方法按q鍵返回到命令行例:help echo, man ls , info rm3、 目錄操作命令,參見圖2-1 mkdir :創(chuàng)建目錄 rm:刪除文件和目錄;rmdir 刪除目錄cp:復(fù)制目錄和文件; cd:改變當(dāng)前目錄;ls -alrt name:列出當(dāng)前目錄的內(nèi)容;pwd顯示當(dāng)前目錄的路徑圖2-1 目錄操作4、 文件操作命令,如圖2-2,圖2-3gedit:編輯文本文檔cat:顯示文件內(nèi)容; more:分屏顯示mx.c內(nèi)容;less:按頁顯示文件,可使用翻頁鍵;tail :顯示文件后幾行;head:顯示文件的前幾行cat fi

6、le1 file2:連接file1 和file2;sort:將文本文件排序wc:統(tǒng)計(jì)文件filename中的行數(shù)、單詞數(shù)和字符數(shù)od :查看非文本文件;find:查找文件或目錄;cmp:比較文件差異grep:查找文件里符合條件的字符串;file:測試文件類型圖2-2.用gedit命令編輯文本文檔圖2-3文件操作命令5、 常用壓縮與解壓縮工具,見圖2-4gzip:壓縮文件,壓縮后文件格式為.gz; gunzip:解壓縮tar cvf :打包; tar xvf :解包 圖2-46、 進(jìn)程(及活動程序)的查找、查看、撤銷(殺死);ps:用來顯示當(dāng)前進(jìn)程的狀態(tài);ps aux | grep 查看程序是否

7、正在運(yùn)行;kill:刪除執(zhí)行中的程序或工作;pkill:ps與kill的結(jié)合;at:系統(tǒng)將執(zhí)行的任務(wù)排序圖2-5 當(dāng)前進(jìn)程的狀態(tài)7、 網(wǎng)絡(luò)和用戶活動情況監(jiān)控;ping:測試網(wǎng)絡(luò)連接是否正常; ifconfig:查看本機(jī)IP地址;netstat:看網(wǎng)絡(luò)的聯(lián)機(jī)狀態(tài);wall:向所有用戶廣播信息write:向另外一個(gè)用戶發(fā)信息,以CTRL+D結(jié)束mesgy|n :是否接受其他用戶發(fā)來的信息FTP客戶端程序finger:查找并顯示用戶信息;who:查看其他登錄的用戶whoami:查看登錄用戶自己的信息su:切換登錄用戶; passwd:更改用戶密碼chmod:改變文件訪問權(quán)限;chown:改變文件的擁

8、有者或群組stat:顯示文件訪問、修改時(shí)間、大小、屬主和組以及許可模式等信息。圖2-6 網(wǎng)絡(luò)和用戶活動情況圖2-7 顯示文件屬性8、 系統(tǒng)相關(guān)的命令dmesg:顯示機(jī)器引導(dǎo)時(shí)內(nèi)核顯示的狀態(tài)信息free:查看系統(tǒng)內(nèi)存,虛擬內(nèi)存占用情況;df:顯示指定磁盤文件的可用空間;du:查看目錄中各級子目錄使用的硬盤空間top:動態(tài)實(shí)時(shí)查看系統(tǒng)內(nèi)存,CPU,進(jìn)程hostname:查看主機(jī)名;uname:顯示系統(tǒng)信息date:顯示和更改系統(tǒng)日期,時(shí)間clock -w:將系統(tǒng)時(shí)間寫入CMOS;clock -s:根據(jù)CMOS時(shí)間自動設(shè)置系統(tǒng)時(shí)間; cal:顯示日歷圖2-8 系統(tǒng)命令四、實(shí)驗(yàn)素材1、 需要閱讀的參考

9、資料,參見教材P.223-229 -6;2、 字符交互命令窗口及執(zhí)行情況參見圖2-1至圖2-4;3、 進(jìn)程、網(wǎng)絡(luò)、用戶、系統(tǒng)等命令窗口參見圖2-5至圖2-8.實(shí)驗(yàn)三 Linux vi編輯器的使用以及編程實(shí)踐一、實(shí)驗(yàn)?zāi)康模?、 熟悉Linux系統(tǒng)中的vi編輯器,能夠使用vi編輯器建立、編輯、顯示以及加工處理文本文件。2、 理解Shell程序的設(shè)計(jì)方法,熟悉Shell程序的編輯、運(yùn)行、調(diào)試方法與過程。二、實(shí)驗(yàn)內(nèi)容:1、 熟悉Linux系統(tǒng)的vi編輯器掌握三種模式下常用命令的使用編輯模式命令:a, A, i , I, o, O, ESC, : , 回車,ZZ顯示模式命令:ctrl+d/u/b/f,:

10、數(shù)字,x, X, dd, ndd, Y, nyy, p/P, ?name等命令模式: :w,:q,:! , :n , :set nu, :f等2、 熟悉Shell編程實(shí)踐,編寫簡單的C語言程序,并編譯運(yùn)行與顯示結(jié)果。三、實(shí)驗(yàn)方法與步驟:1、 vi編輯器的基本使用,三種模式下各個(gè)命令使用圖3-1 vi編輯器三種模式之間的轉(zhuǎn)換vi編輯器的界面,如圖3-2所示。1) 在命令狀態(tài)鍵入vi test.c 回車進(jìn)入編輯模式2) 按i或a后,進(jìn)入插入模式后,開始編寫程序代碼3) 編寫完畢后,按ESC退到編輯模式4) 鍵入:wq保存退出圖3-2 vi 編輯界面2、 c程序編譯與運(yùn)行圖3-3 c程序的編譯與運(yùn)行

11、3、 c程序的調(diào)試,gdb命令b/break:設(shè)置斷點(diǎn);delete:清除斷點(diǎn); c/continue:繼續(xù)終止的程序;r/run:運(yùn)行程序;step/s:單步進(jìn)行,進(jìn)入函數(shù);next/n:單步不進(jìn)入函數(shù);list/l:顯示源代碼,每次10行;kill:終止正在調(diào)試的程序file:裝入將要調(diào)試的文件;print:先死queue中的內(nèi)容;q:退出gqb圖3-4 gdb調(diào)試程序示例四、實(shí)驗(yàn)素材1、 需要閱讀的參考資料,參見教材P.248-250 ;2、 vi編輯器的使用情況參見圖3-1和圖3-2;3、 c語言程序編譯運(yùn)行及調(diào)試參見圖3-3和圖3-4實(shí)驗(yàn)四 Win2K系統(tǒng)的管理功能一、實(shí)驗(yàn)?zāi)康模?、

12、 熟悉并掌握Win2K這個(gè)注冊表編輯器,熟悉注冊表根鍵的內(nèi)容與作用2、 熟悉Win2K服務(wù)管理工具,了解開機(jī)自動啟動的服務(wù),掌握設(shè)置服務(wù)啟動和停止的方法二、實(shí)驗(yàn)內(nèi)容:1、 熟悉Win2000系統(tǒng)的管理功能,備份注冊表2、 修改注冊表,屏蔽桌面“回收站”圖標(biāo)3、 停止Win2K“自動升級”服務(wù)三、實(shí)驗(yàn)方法與步驟:1、 打開并備份注冊表2、 查找并分析對應(yīng)根鍵以及子鍵,刪除或修改相應(yīng)的鍵值,重啟觀察效果3、 打開服務(wù)管理器,查找相應(yīng)服務(wù),修改后重啟觀察變化4、 打開安全中心,啟動或停止“自動升級”、“防火墻”等5、 運(yùn)行系統(tǒng)配置實(shí)用程序,管理系統(tǒng)自動啟動的程序或項(xiàng)目四、實(shí)驗(yàn)素材1、 需要閱讀的參考

13、資料,參見教材P.231-238 ,P.251-252 8.2.2-3;2、 注冊表編輯器窗口參見圖4-1;運(yùn)行:regedit命令3、 服務(wù)管理器窗口參見圖4-2;打開:控制面板管理工具服務(wù)4、 安全中心窗口參見圖4-3打開:控制面板安全中心5、 系統(tǒng)配置實(shí)用程序窗口參見圖4-4運(yùn)行:msconfig命令圖4-1 注冊表編輯器窗口圖4-2 服務(wù)管理器窗口圖4-3 安全中心窗口圖4-4 系統(tǒng)配置實(shí)用程序窗口實(shí)驗(yàn)五 Linux進(jìn)程控制與進(jìn)程通信一、實(shí)驗(yàn)?zāi)康模?、 掌握進(jìn)程的概念,明確進(jìn)程和程序的區(qū)別。認(rèn)識和了解并發(fā)執(zhí)行的實(shí)質(zhì)。分析進(jìn)程爭用資源的現(xiàn)象,學(xué)習(xí)解決進(jìn)程互斥的方法。2、 了解什么是管道,

14、熟悉Linux支持的管道通信方式二、實(shí)驗(yàn)內(nèi)容:1、 進(jìn)程創(chuàng)建。編寫一段程序,使用系統(tǒng)調(diào)用fork()創(chuàng)建兩個(gè)子進(jìn)程。當(dāng)此程序運(yùn)行時(shí),在系統(tǒng)中有一個(gè)父進(jìn)程和兩個(gè)子進(jìn)程活動。讓每一個(gè)進(jìn)程在屏幕上顯示一個(gè)字符:父進(jìn)程顯示“a“;子進(jìn)程分別顯示字符”b“和字符“c”。試觀察記錄屏幕上的顯示結(jié)果,并分析原因。 2、 進(jìn)程控制。修改已編寫的程序,將每一個(gè)進(jìn)程輸出一個(gè)字符改為每一個(gè)進(jìn)程輸出一句話,用getpid()和getppid()獲得當(dāng)前進(jìn)程號和父進(jìn)程號,觀察程序執(zhí)行時(shí)屏幕上出現(xiàn)的現(xiàn)象,并分析原因。3、 進(jìn)程的管道通信。編寫程序?qū)崿F(xiàn)進(jìn)程的管道通信,使用系統(tǒng)調(diào)用pipe()建立一個(gè)管道,二個(gè)子進(jìn)程P1和P

15、2分別向管道各寫一句話:Child 1 is sending a message! Child 2 is sending a message! 父進(jìn)程從管道中讀出二個(gè)來自子進(jìn)程的信息并顯示(要求先接收P1,再接收P2)。三、實(shí)驗(yàn)方法與步驟:1、 進(jìn)程的創(chuàng)建,參考程序# include#include#include int main() int p1, p2; while(p1=fork()=-1); if(p1=0) putchar(b);/*在子進(jìn)程1中*/ else/*在父進(jìn)程中*/ while(p2=fork()=-1); if(p2=0) putchar(c);/*在子進(jìn)程2中*/

16、else/*在父進(jìn)程中*/ putchar(a); printf(n); return 0; 2、 進(jìn)程的控制,參考程序# include#include#includeint main() int p1, p2, i; while(p1=fork()=-1); if(p1=0) printf(daughter,my id is %d, my parentsid is %dn,getpid(),getppid(); else while(p2=fork()=-1); if(p2=0) printf(son,my id is %d, my parentsid is %dn,getpid(),ge

17、tppid(); else printf(parents,my id is %d, my parentsid is %dn,getpid(),getppid(); return 0;3、 進(jìn)程的管道通信,參考程序# include# include# include#includeint pid1,pid2;int main() int fd2; char OutPipe100,InPipe100; pipe(fd); while(pid1=fork()=-1); if(pid1=0) lockf(fd1,1,0); sprintf(OutPipe,child 1 process is sen

18、ding message!); write(fd1,OutPipe,50); sleep(5); lockf(fd1,0,0); exit(0); else while(pid2=fork()=-1); if(pid2=0) lockf(fd1,1,0); sprintf(OutPipe,child 2 process is sending message!); write(fd1,OutPipe,50); sleep(5); lockf(fd1,0,0); exit(0); else wait(0); read(fd0,InPipe,50); printf(%sn,InPipe); wait

19、(0); read(fd0,InPipe,50); printf(%sn,InPipe); exit(0); return 0;四、實(shí)驗(yàn)素材1、 需要閱讀的參考資料,參見教材P.252-254 -2;2、 進(jìn)程異步并發(fā)執(zhí)行情況參見圖5-1,圖5-2;3、 進(jìn)程的管道通信執(zhí)行情況參見圖5-3;圖5-1異步并發(fā)執(zhí)行測試程序運(yùn)行結(jié)構(gòu)示例圖5-2 進(jìn)程控制運(yùn)行示例圖5-3 進(jìn)程的管道通信運(yùn)行示例實(shí)驗(yàn)六 進(jìn)程調(diào)度模擬程序設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康模?、 通過對進(jìn)程調(diào)度算法的模擬,進(jìn)一步理解進(jìn)程的基本概念;2、 加深對進(jìn)程運(yùn)行狀態(tài)和進(jìn)程調(diào)度過程的了解和理解;3、 加深對調(diào)度算法的理解。二、實(shí)驗(yàn)內(nèi)容:給出進(jìn)程調(diào)度的算

20、法描述:1、 用c+語言編程實(shí)現(xiàn)對N個(gè)進(jìn)程采用某種進(jìn)程調(diào)度算法調(diào)度執(zhí)行的模擬;2、 調(diào)度程序應(yīng)包含兩種不同調(diào)度算法,運(yùn)行時(shí)任選一種,以利于各種方法的分析和比較;3、 主程序流程圖如圖6-1。圖6-1 進(jìn)程調(diào)度模擬程序流程圖三、實(shí)驗(yàn)方法與步驟:進(jìn)程調(diào)度實(shí)驗(yàn)參考代碼#include iostream.h #include windows.h#define N 3 typedef struct int ID; int PRIORITY; int CPUTIME;int ALLTIME; int STARTBLOCK; int BLOCKTIME; int STATE;/0-運(yùn)行 1-阻塞 2-就緒

21、3-結(jié)束 4-未到達(dá) int REACH; int TIME; PROCESS; void textcolor (int color) SetConsoleTextAttribute (GetStdHandle (STD_OUTPUT_HANDLE), color ); void main() int i,time,max,l,l1,time1,flag=0,total=0,N,server10,sum=0; PROCESS pro10; textcolor(13); cout注意:本程序中狀態(tài)代表如下endl0-運(yùn)行 1-阻塞 2-就緒 3-結(jié)束 4-未到達(dá)endlendl; textcol

22、or(15); coutN; couttime; cout請輸入各進(jìn)程初始狀態(tài):endl; coutID PRIORITY REACH ALLTIME STARTBLOCK BLOCKTIMEendl; for(i=0;iproi.IDproi.PRIORITYproi.REACH;cinproi.ALLTIMEproi.STARTBLOCKproi.BLOCKTIME; serveri=proi.ALLTIME; if(proi.REACH=0) proi.STATE=0; else proi.STATE=4; do coutendl當(dāng)前時(shí)刻為:total; textcolor(12); c

23、outendl=各進(jìn)程狀態(tài)為=endl; textcolor(15); coutID PRIORITY CPUTIME ALLTIME STARTBLOCK BLOCKTIME STATEendl; for(i=0;iN;i+) coutproi.ID proi.PRIORITY proi.CPUTIME ; coutproi.ALLTIME proi.STARTBLOCK proi.BLOCKTIME proi.STATE; coutendl; total+=time; for(i=0;iN;i+) if(proi.STATE=4&proi.REACHtotal) proi.STATE=1;

24、 for(i=0;iN;i+) time1=proi.ALLTIME;if(proi.STATE=0)if(proi.ALLTIME=time)/proi.CPUTIME+=time1;proi.ALLTIME=0;proi.STATE=3;proi.TIME=total-time+time1;else/proi.CPUTIME+=time;proi.ALLTIME-=time;proi.STARTBLOCK-;if(proi.STARTBLOCK=0)proi.STATE=1;proi.BLOCKTIME=time1;proi.STARTBLOCK=time1;proi.PRIORITY-=

25、3;proi.TIME=total;if(proi.STATE=1)proi.BLOCKTIME-;if(proi.BLOCKTIME=0) proi.STATE=2;proi.TIME=total;if(proi.STATE=2)/proi.CPUTIME+=time;proi.PRIORITY+;proi.TIME=total;max=-100;l1=-1;l=-1;for(i=0;imax&(proi.STATE=0|proi.STATE=2)l=i;max=proi.PRIORITY;if(proi.STATE=0) l1=i;if(l!=-1&l!=l1) prol.STATE=0;

26、if(l1!=-1) prol1.STATE=2;flag=0;for(i=0;iN;i+)if(proi.STATE!=3)flag=1;break;if(flag=0) break;while(1);coutendl當(dāng)前時(shí)刻:total;textcolor(12);coutendl各進(jìn)程狀態(tài)為endl;textcolor(15);coutID PRIORITY CPUTIME ALLTIME STARTBLOCK BLOCKTIME STATEendl;for(i=0;iN;i+)coutproi.ID proi.PRIORITY proi.CPUTIME ;coutproi.ALLTIM

27、E proi.STARTBLOCK proi.BLOCKTIME proi.STATE;coutendl;coutendl各進(jìn)程運(yùn)行結(jié)束!endl;cout進(jìn)程號 到達(dá)時(shí)間 結(jié)束時(shí)間 周轉(zhuǎn)時(shí)間 帶權(quán)周轉(zhuǎn)時(shí)間endl;textcolor(10);for(i=0;iN;i+)cout proi.ID proi.REACH proi.TIME proi.TIME-proi.REACH (float)(proi.TIME-proi.REACH)/serveriendl;sum+=proi.TIME-proi.REACH;cout平均周轉(zhuǎn)時(shí)間為:(float)sum/Nendl;textcolor(15

28、);四、實(shí)驗(yàn)素材1、 需要閱讀的參考資料,參見教材P.256-257 -3;2、 進(jìn)程調(diào)用模擬程序?qū)嶒?yàn)結(jié)果如下實(shí)驗(yàn)結(jié)果注意:本程序中狀態(tài)代表如下0- 運(yùn)行 1-阻塞 2-就緒 3-結(jié)束 4-未到達(dá)請輸入進(jìn)程數(shù):3請?jiān)O(shè)置時(shí)間片長度:2請輸入各進(jìn)程初始狀態(tài):ID PRIORITY REACH ALLTIME STARTBLOCK BLOCKTIME1 4 5 7 8 32 6 0 7 2 87 3 2 6 2 6當(dāng)前時(shí)刻為:0=各進(jìn)程狀態(tài)為=ID PRIORITY CPUTIME ALLTIME STARTBLOCK BLOCKTIME STATE1 4 0 7 8 3 42 6 0 7 2 8

29、07 3 0 6 2 6 4當(dāng)前時(shí)刻為:2=各進(jìn)程狀態(tài)為=ID PRIORITY CPUTIME ALLTIME STARTBLOCK BLOCKTIME STATE1 4 0 7 8 3 42 3 0 5 1 8 27 3 0 6 2 6 4當(dāng)前時(shí)刻為:4=各進(jìn)程狀態(tài)為=ID PRIORITY CPUTIME ALLTIME STARTBLOCK BLOCKTIME STATE1 4 0 7 8 3 42 4 0 5 1 8 07 3 0 6 2 5 1當(dāng)前時(shí)刻為:6=各進(jìn)程狀態(tài)為=ID PRIORITY CPUTIME ALLTIME STARTBLOCK BLOCKTIME STATE1

30、 4 0 7 8 2 12 1 0 3 5 4 17 3 0 6 2 4 1當(dāng)前時(shí)刻為:8=各進(jìn)程狀態(tài)為=ID PRIORITY CPUTIME ALLTIME STARTBLOCK BLOCKTIME STATE1 4 0 7 8 1 12 1 0 3 5 3 17 3 0 6 2 3 1當(dāng)前時(shí)刻為:10=各進(jìn)程狀態(tài)為=ID PRIORITY CPUTIME ALLTIME STARTBLOCK BLOCKTIME STATE1 5 0 7 8 0 02 1 0 3 5 2 17 3 0 6 2 2 1當(dāng)前時(shí)刻為:12=各進(jìn)程狀態(tài)為=ID PRIORITY CPUTIME ALLTIME S

31、TARTBLOCK BLOCKTIME STATE1 2 0 5 7 0 22 1 0 3 5 1 17 3 0 6 2 1 1當(dāng)前時(shí)刻為:14=各進(jìn)程狀態(tài)為=ID PRIORITY CPUTIME ALLTIME STARTBLOCK BLOCKTIME STATE1 3 0 5 7 0 22 2 0 3 5 0 27 4 0 6 2 0 0當(dāng)前時(shí)刻為:16=各進(jìn)程狀態(tài)為=ID PRIORITY CPUTIME ALLTIME STARTBLOCK BLOCKTIME STATE1 4 0 5 7 0 02 3 0 3 5 0 27 1 0 4 1 0 2當(dāng)前時(shí)刻為:18=各進(jìn)程狀態(tài)為=ID

32、 PRIORITY CPUTIME ALLTIME STARTBLOCK BLOCKTIME STATE1 1 0 3 6 0 22 4 0 3 5 0 07 2 0 4 1 0 2當(dāng)前時(shí)刻為:20=各進(jìn)程狀態(tài)為=ID PRIORITY CPUTIME ALLTIME STARTBLOCK BLOCKTIME STATE1 2 0 3 6 0 22 1 0 1 4 0 27 3 0 4 1 0 0當(dāng)前時(shí)刻為:22=各進(jìn)程狀態(tài)為=ID PRIORITY CPUTIME ALLTIME STARTBLOCK BLOCKTIME STATE1 3 0 3 6 0 02 2 0 1 4 0 27 0

33、0 2 4 3 1當(dāng)前時(shí)刻為:24=各進(jìn)程狀態(tài)為=ID PRIORITY CPUTIME ALLTIME STARTBLOCK BLOCKTIME STATE1 0 0 1 5 0 22 3 0 1 4 0 07 0 0 2 4 2 1當(dāng)前時(shí)刻為:26=各進(jìn)程狀態(tài)為=ID PRIORITY CPUTIME ALLTIME STARTBLOCK BLOCKTIME STATE1 1 0 1 5 0 02 3 0 0 4 0 37 0 0 2 4 1 1當(dāng)前時(shí)刻為:28=各進(jìn)程狀態(tài)為=ID PRIORITY CPUTIME ALLTIME STARTBLOCK BLOCKTIME STATE1 1

34、 0 0 5 0 32 3 0 0 4 0 37 1 0 2 4 0 0當(dāng)前時(shí)刻:30=各進(jìn)程狀態(tài)為=ID PRIORITY CPUTIME ALLTIME STARTBLOCK BLOCKTIME STATE1 1 0 0 5 0 32 3 0 0 4 0 37 1 0 0 4 0 3各進(jìn)程運(yùn)行結(jié)束!進(jìn)程號 到達(dá)時(shí)間 結(jié)束時(shí)間 周轉(zhuǎn)時(shí)間 帶權(quán)周轉(zhuǎn)時(shí)間 1 5 27 22 3.14286 2 0 25 25 3.57143 7 2 30 28 4.66667平均周轉(zhuǎn)時(shí)間為:25Press any key to continue實(shí)驗(yàn)七 頁面置換模擬程序設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康模?、 加深對請求頁式存儲管

35、理實(shí)現(xiàn)原理的理解;2、 掌握頁面置換算法二、實(shí)驗(yàn)內(nèi)容:1、 編制頁面置換算法的模擬程序并測試,分別考慮OPT、FIFO和LRU算法。其結(jié)構(gòu)圖如圖6-2;圖6-2 頁面置換模擬程序結(jié)構(gòu)圖三、實(shí)驗(yàn)方法與步驟:頁面置換模擬程序設(shè)計(jì)參考程序Input(int m,Pro pL)(打印頁面走向狀態(tài));void print(Pro *page1)(打印當(dāng)前的頁面);int Search(int e,Pro *page1 )(尋找內(nèi)存塊中與e相同的塊號); int Max(Pro *page1)(尋找最近最長未使用的頁面);int Count(Pro *page1,int i,int t,Pro pL)(記錄當(dāng)前內(nèi)存塊中頁面離下次使用間隔長度);int main()(主函數(shù));.隨機(jī)數(shù)發(fā)生器 #include #include /準(zhǔn)備用時(shí)鐘函數(shù)調(diào)用庫函數(shù)t=time(NULL);/取時(shí)鐘時(shí)間并存入t調(diào)用庫函數(shù)srand(t);/用時(shí)間t初始化隨機(jī)數(shù)發(fā)生器調(diào)用庫函數(shù)x=ran

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論