




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、班級(jí): 學(xué)號(hào): 姓名: 成績:實(shí)驗(yàn)一 進(jìn)程管理一、實(shí)驗(yàn)?zāi)康膌 加深對(duì)進(jìn)程概念的理解,明確進(jìn)程和程序的區(qū)別。l 進(jìn)一步認(rèn)識(shí)并發(fā)執(zhí)行的實(shí)質(zhì)。l 分析進(jìn)程爭用資源的現(xiàn)象,學(xué)習(xí)解決進(jìn)程互斥的方法。二、 實(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)程活動(dòng)。讓每一個(gè)進(jìn)程在屏幕上顯示一個(gè)字符:父進(jìn)程顯示字符“a”;子進(jìn)程分別顯示字符“b”和字符“c”。2進(jìn)程控制修改已經(jīng)編好的程序,將每個(gè)進(jìn)程輸出一個(gè)字符改為每個(gè)進(jìn)程輸出一句話,在觀察程序執(zhí)行時(shí)屏幕上出現(xiàn)的現(xiàn)象,并分析原因。如果在程序中使用系統(tǒng)調(diào)用lockf()來給每一個(gè)進(jìn)程加鎖,可以實(shí)
2、現(xiàn)進(jìn)程之間的互斥,觀察并分析出現(xiàn)的現(xiàn)象。3參考程序 #include <stdio.h> Main() Int p1,p2; While (p1=fork()= =-1); If (p1= =0) Putchar(b); Else While (p2=fork()= =-1); If (p2= =0) Putchar(c); Else Putchar(a);分析:從進(jìn)程并發(fā)執(zhí)行來看,輸出bac,acb或bca都有可能。原因:fork()創(chuàng)建進(jìn)程所需要的時(shí)間要多于輸出一個(gè)字符的時(shí)間,因此在主進(jìn)程創(chuàng)建進(jìn)程2的同時(shí),進(jìn)程1就輸出了”b”,而進(jìn)程2和主程序的輸出次序是有隨機(jī)性的,所以會(huì)出現(xiàn)
3、多種可能結(jié)果。進(jìn)程控制源程序: #include <stdio.h> Main() int p1,p2; while (p1=fork()= =-1); if (p1= =0) for(i=0;i<50;i+) printf(“child%dn”,i); else while (p2=fork()= =-1); if (p2= =0) for(i=0;i<50;i+) printf(“son%dn”,i); else for(i=0;i<50;i+) printf(“daughter%dn”,i);運(yùn)行結(jié)果: Child Son Daughter 或c
4、hild son child son daughter 等分析:由于函數(shù)printf()輸出的字符串之間不會(huì)被中斷,因此,字符串內(nèi)部的字符順序輸出時(shí)不變。但是,由于進(jìn)程并發(fā)執(zhí)行時(shí)的調(diào)度順序和父子進(jìn)程的搶占處理機(jī)問題,處處字符串的順序和先后隨著執(zhí)行的不同而發(fā)生變化。參考程序3: #include <stdio.h> #include <unistd.h> Main() Int p1,p2,I; While (p1=fork()= =-1); If (p1= =0) Lockf(1,1,0); For(i=0;i<50;i+) Printf(“child%dn”,i)
5、; Lockf(1,0,0);Else While (p2=fork()= =-1); If (p2= =0) Lockf(1,1,0); For(i=0;i<50;i+) Printf(son%dn”,i); Lockf(1,0,0); Else Lockf(1,1,0); For(i=0;i<50;i+) Printf(“daughter%dn”,i); Lockf(1,0,0); 背景知識(shí)1、fork()創(chuàng)建一個(gè)新進(jìn)程int fork()其中返回int取值意義如下:0:創(chuàng)建子進(jìn)程,從子進(jìn)程返回的id值大于0:從父進(jìn)程返回的子進(jìn)程id值-1:創(chuàng)建失敗2、lockf(files,
6、function,size):用作鎖定文件的某些段或者整個(gè)文件,本函數(shù)適用的頭文件為:#include<unistd.h>參數(shù)定義:int lockf(files,function,size)int files,function;long size;其中:files是文件描述符:function是鎖定和解鎖;1表示鎖定,0表示解鎖。size是鎖定和解鎖的字節(jié)數(shù),若用0,表示從文件的當(dāng)前位置到文件尾。操作系統(tǒng)原理實(shí)驗(yàn)報(bào)告專 業(yè)計(jì)算機(jī)科學(xué)與技術(shù) 班 級(jí) 學(xué) 號(hào) 姓 名 指導(dǎo)教師 陳 珂 完成時(shí)間 成 績 報(bào)告要求一. 封面指定樣稿 二. 紙張統(tǒng)一用A4紙打印標(biāo)題:字體黑體;大小小三小四正文內(nèi)容:字體宋體;大小小四左右頁邊距:2厘米,有頁碼 三撰寫內(nèi)容
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 金屬冶煉中的物理化學(xué)反應(yīng)考核試卷
- 2024年濾紫外石英玻璃燈管資金申請報(bào)告代可行性研究報(bào)告
- 負(fù)載測試工具的選擇與應(yīng)用試題及答案
- 2025年中國變速V帶行業(yè)市場前景預(yù)測及投資價(jià)值評(píng)估分析報(bào)告
- 抖音網(wǎng)紅代言合作內(nèi)容制作與推廣協(xié)議
- 智能手機(jī)攝像頭模組研發(fā)與市場推廣合作合同
- 拓展產(chǎn)業(yè)鏈畜牧養(yǎng)殖場承包經(jīng)營與飼料加工合同
- 貴重物品物流保險(xiǎn)賠償協(xié)議
- 教育培訓(xùn)機(jī)構(gòu)課程推廣與教育投資合作協(xié)議
- 金融理財(cái)產(chǎn)品風(fēng)險(xiǎn)控制協(xié)議追加條款
- 田畝轉(zhuǎn)戶協(xié)議書
- 2025年MySQL開發(fā)趨勢試題及答案研究
- 違約就業(yè)協(xié)議書
- 《人工智能通識(shí)導(dǎo)論(慕課版)》全套教學(xué)課件
- 烘培創(chuàng)業(yè)合伙協(xié)議書
- 2025年信息系統(tǒng)管理知識(shí)考試試題及答案
- 馬法理學(xué)試題及答案
- 2025年全國保密教育線上培訓(xùn)考試試題庫附完整答案(奪冠系列)含答案詳解
- 視頻制作拍攝服務(wù)方案投標(biāo)文件(技術(shù)方案)
- 量子計(jì)算中的量子比特穩(wěn)定性研究-全面剖析
- 構(gòu)建健全企業(yè)資金體系
評(píng)論
0/150
提交評(píng)論