![操作系統(tǒng) 實(shí)驗(yàn)2進(jìn)程控制管理 實(shí)驗(yàn)報(bào)告_第1頁(yè)](http://file4.renrendoc.com/view10/M02/1F/3A/wKhkGWXa0f6ABB8lAAJc_UtCMUI491.jpg)
![操作系統(tǒng) 實(shí)驗(yàn)2進(jìn)程控制管理 實(shí)驗(yàn)報(bào)告_第2頁(yè)](http://file4.renrendoc.com/view10/M02/1F/3A/wKhkGWXa0f6ABB8lAAJc_UtCMUI4912.jpg)
![操作系統(tǒng) 實(shí)驗(yàn)2進(jìn)程控制管理 實(shí)驗(yàn)報(bào)告_第3頁(yè)](http://file4.renrendoc.com/view10/M02/1F/3A/wKhkGWXa0f6ABB8lAAJc_UtCMUI4913.jpg)
![操作系統(tǒng) 實(shí)驗(yàn)2進(jìn)程控制管理 實(shí)驗(yàn)報(bào)告_第4頁(yè)](http://file4.renrendoc.com/view10/M02/1F/3A/wKhkGWXa0f6ABB8lAAJc_UtCMUI4914.jpg)
下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
操作系統(tǒng)課程實(shí)驗(yàn)報(bào)告姓名學(xué)號(hào)系任課教師指導(dǎo)教師評(píng)閱教師實(shí)驗(yàn)地點(diǎn)麗澤樓C304-2麗澤樓C304-1(請(qǐng)勾選實(shí)際實(shí)驗(yàn)地點(diǎn))實(shí)驗(yàn)時(shí)間實(shí)驗(yàn)課表現(xiàn)出勤和個(gè)人表現(xiàn)Q1(15+15(組長(zhǎng)評(píng)分)=30分)得分:實(shí)驗(yàn)總分(Q1+Q2+Q3+Q4)實(shí)驗(yàn)完成情況Q2(45分(組長(zhǎng)評(píng)分,教師根據(jù)實(shí)際情況微調(diào)))得分:實(shí)驗(yàn)編號(hào)與實(shí)驗(yàn)名稱:實(shí)驗(yàn)2進(jìn)程控制管理實(shí)驗(yàn)?zāi)康模?)掌握進(jìn)程的概念,明確進(jìn)程的含義2)認(rèn)識(shí)并了解并發(fā)執(zhí)行的實(shí)質(zhì)實(shí)驗(yàn)內(nèi)容及要求(詳見(jiàn)實(shí)驗(yàn)講義與實(shí)驗(yàn)指導(dǎo)書(shū)):1)編寫(xiě)一段程序,使用系統(tǒng)調(diào)用fork()創(chuàng)建兩個(gè)子進(jìn)程。當(dāng)此程序運(yùn)行時(shí),在系統(tǒng)中有一個(gè)父進(jìn)程和兩個(gè)子進(jìn)程活動(dòng)。讓每一個(gè)進(jìn)程在屏幕上顯示一個(gè)字符:父進(jìn)程顯示'a',子進(jìn)程分別顯示字符'b'和字符'c'。試觀察記錄屏幕上的顯示結(jié)果,并分析原因。2)修改上述程序,每一個(gè)進(jìn)程循環(huán)顯示一句話。子進(jìn)程顯示'daughter…'及'son……',父進(jìn)程顯示'parent……',觀察結(jié)果,分析原因。實(shí)驗(yàn)用到的軟件(:)虛擬機(jī)VMWare/VirtualBoxfedora15實(shí)驗(yàn)內(nèi)容及關(guān)鍵步驟(代碼)Q3(15分)按照上一次實(shí)驗(yàn)的步驟,進(jìn)入后需要切換到管理員,輸入“suroot”,輸入密碼之后,可以輸入“l(fā)s”查看目錄下的文件。附加:為了熟悉上一節(jié)實(shí)驗(yàn)課內(nèi)容,我先創(chuàng)建了一個(gè)myleb2的文件夾,然后再在這個(gè)文件夾里創(chuàng)建一個(gè)子文件夾love,再在里面編譯。開(kāi)始編寫(xiě)代碼,輸入“vitest1.c”,按i開(kāi)始編寫(xiě),輸入以下代碼:#include<stdio.h>intmain(){intp1,p2;while((p1=fork())==-1);/*創(chuàng)建子進(jìn)程p1*/if(p1==0)putchar('b');else{while((p2=fork())==-1);/*創(chuàng)建子進(jìn)程p2*/if(p2==0)putchar('c');elseputchar('a');}}然后按ESC鍵后,輸入“:wq”退出編譯。退出后,輸入“cattest1.c”可查看所輸入的代碼內(nèi)容,輸入“gcctest1.c”,然后輸入“l(fā)s”查看,發(fā)現(xiàn)有a.out這個(gè)文件,然后運(yùn)行它,輸入“./a.out”,可看到輸出的結(jié)果為“acb”。再創(chuàng)建一個(gè)編譯,輸入“vitest2.c”,輸入以下代碼:#include<stdio.h>main(){intp1,p2,i;while((p1=fork())==-1);/*創(chuàng)建子進(jìn)程p1*/if(p1==0)for(i=0;i<10;i++)printf("daughter%d\n",i);else{while((p2=fork())==-1);/*創(chuàng)建子進(jìn)程p2*/if(p2==0)for(i=0;i<10;i++)printf("son%d\n",i);elsefor(i=0;i<10;i++)printf("parent%d\n",i);}}退出后,用同樣方法查看此文件的代碼內(nèi)容。查看無(wú)問(wèn)題后,輸入“gcc–otest2test2.c”,修改運(yùn)行文件名,然后查看該文件夾下的所有文件,能看到“test2”運(yùn)行文件。運(yùn)行“test2”文件,輸入“./test2”,可查看運(yùn)行結(jié)果為“daughter0,daughter1,daughter2,daughter3…..daughter9”。觀察其他同學(xué)的輸出結(jié)果,會(huì)發(fā)現(xiàn)有不一樣的地方,例如:前一個(gè)程序運(yùn)行結(jié)果有的是“bca”或者“bac”,后面這個(gè)結(jié)果也有許多不同之處。在思考和與同學(xué)討論之后,分析這個(gè)結(jié)果的原因。實(shí)驗(yàn)過(guò)程中遇到的問(wèn)題解決辦法與實(shí)驗(yàn)體會(huì)Q4(10分)得分:思考題:有一個(gè)系統(tǒng)調(diào)用可以用來(lái)創(chuàng)建進(jìn)程:fork。這個(gè)系統(tǒng)調(diào)用會(huì)創(chuàng)建一個(gè)與調(diào)用進(jìn)程相同的副本。調(diào)用后,父進(jìn)程和子進(jìn)程擁有相同的儲(chǔ)存映像、同樣的環(huán)境字符串和同樣的打開(kāi)文件。系統(tǒng)調(diào)用格式:pid=fork()fork()返回值意義如下:0:在子進(jìn)程中,pid變量保存的fork()返回值為0,表示當(dāng)前進(jìn)程是子進(jìn)程。>0:在父進(jìn)程中,pid變量保存的fork()返回值為子進(jìn)程的id值(進(jìn)程唯一標(biāo)識(shí)符)。-1:創(chuàng)建失敗。如果fork()調(diào)用成功,它向父進(jìn)程返回子進(jìn)程的PID,并向子進(jìn)程返回0。fork()要完成這些操作:(1)為新進(jìn)程分配一進(jìn)程表項(xiàng)和進(jìn)程標(biāo)識(shí)符(2)檢查同時(shí)運(yùn)行的進(jìn)程數(shù)目(3)拷貝進(jìn)程表項(xiàng)中的數(shù)據(jù)(4)子進(jìn)程繼承父進(jìn)程的所有文件(5)為子進(jìn)程創(chuàng)建進(jìn)程上、下文(6)子進(jìn)程執(zhí)行。因?yàn)槿绻鹒ork()調(diào)用成功,它向父進(jìn)程返回子進(jìn)程的PID,并向子進(jìn)程返回0,即fork()被調(diào)用了一次,但返回了兩次。所以,所建的新進(jìn)程的入口就是是調(diào)用的fork()父進(jìn)程的副本。首先是讀入文件內(nèi)容,再次是看文件有沒(méi)有指定程序運(yùn)行,如果有則運(yùn)行,如果沒(méi)有則輸出出錯(cuò)的信息。實(shí)驗(yàn)中的問(wèn)題及解決辦法:這次的實(shí)驗(yàn)主要是讓我們從輸出結(jié)果中分析問(wèn)題。1.首先是第一個(gè)程序,用c語(yǔ)言編寫(xiě)的代碼,代碼本身是沒(méi)什么問(wèn)題的,但奇怪的是輸出結(jié)果卻是三個(gè)都輸出了。這是因?yàn)槊總€(gè)進(jìn)程被創(chuàng)建后都有一個(gè)程序計(jì)數(shù)器,資源集一樣,如:while((p1=fork())==-1);/*創(chuàng)建子進(jìn)程p1*/while((p2=fork())==-1);/*創(chuàng)建子進(jìn)程p2*/對(duì)父進(jìn)程而言,除了創(chuàng)建2個(gè)子進(jìn)程之外,還要輸出a,它和子進(jìn)程的關(guān)系是競(jìng)爭(zhēng)關(guān)系,同時(shí)需要使用CPU,當(dāng)前獲得什么進(jìn)程,就輸出什么進(jìn)程。輸出的結(jié)果為acb意為:先運(yùn)行父進(jìn)程,并輸出,然后子進(jìn)程被創(chuàng)建后,成為就緒隊(duì)列,父進(jìn)程可以運(yùn)行,然后再開(kāi)始創(chuàng)建子進(jìn)程。所以總的來(lái)說(shuō),就是從進(jìn)程并發(fā)執(zhí)行來(lái)看,各種情況都有可能。上面的三個(gè)進(jìn)程沒(méi)有同步措施,所以父進(jìn)程與子進(jìn)程的輸出內(nèi)容會(huì)疊加在一起。輸出次序帶有隨機(jī)性。2.然后是第二個(gè)程序,因?yàn)樵谟?個(gè)進(jìn)程時(shí),不同的電腦操作系統(tǒng)的調(diào)度算法是不一樣的,因此也會(huì)有其他輸出的次序,但3個(gè)程序都會(huì)輸出。但是也有可能輸出不了,而輸出不了的,則說(shuō)明它已經(jīng)被掛起了。比如這個(gè)程序,隨著循環(huán)次數(shù)的不同,有例如“parent輸出n次后,開(kāi)始輸出別的,再輸出parent,即循環(huán)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 供熱采暖安全文明施工方案
- 養(yǎng)殖協(xié)會(huì)申請(qǐng)書(shū)
- 春分營(yíng)銷(xiāo)活動(dòng)策劃
- 藝術(shù)創(chuàng)作的深度探索
- 職業(yè)病防治培訓(xùn)試題及答案
- 退部門(mén)申請(qǐng)書(shū)格式
- DB61T-供餐單位鼠蟲(chóng)害預(yù)防控制技術(shù)規(guī)范
- 給環(huán)保局的申請(qǐng)書(shū)
- 2024-2025學(xué)年廣東省深圳市羅湖區(qū)翠竹高級(jí)中學(xué)分校高三(上)月考地理試卷(9月份)
- DB2108-T 003-2024 地理標(biāo)志產(chǎn)品 博洛鋪小米
- 特種設(shè)備及重要設(shè)備安全管理制度
- 《自主神經(jīng)系統(tǒng)》課件
- 2025集團(tuán)公司內(nèi)部借款合同范本
- 遼寧省名校聯(lián)盟2025屆高三上學(xué)期1月份聯(lián)合考試語(yǔ)文試題(含答案)
- 2025年山西地質(zhì)集團(tuán)社會(huì)招聘高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2024-2025學(xué)年遼寧省沈陽(yáng)市沈河區(qū)七年級(jí)(上)期末英語(yǔ)試卷(含答案)
- 前牙即刻種植的臨床應(yīng)用
- 2024-2025學(xué)年初中七年級(jí)上學(xué)期數(shù)學(xué)期末綜合卷(人教版)含答案
- 體育活動(dòng)策劃與組織課件
- 公司違規(guī)違紀(jì)連帶處罰制度模版(2篇)
- 2025屆高考物理二輪總復(fù)習(xí)第一編專(zhuān)題2能量與動(dòng)量第1講動(dòng)能定理機(jī)械能守恒定律功能關(guān)系的應(yīng)用課件
評(píng)論
0/150
提交評(píng)論