Linux多進(jìn)程并發(fā)執(zhí)行實(shí)驗(yàn)_第1頁(yè)
Linux多進(jìn)程并發(fā)執(zhí)行實(shí)驗(yàn)_第2頁(yè)
Linux多進(jìn)程并發(fā)執(zhí)行實(shí)驗(yàn)_第3頁(yè)
Linux多進(jìn)程并發(fā)執(zhí)行實(shí)驗(yàn)_第4頁(yè)
Linux多進(jìn)程并發(fā)執(zhí)行實(shí)驗(yàn)_第5頁(yè)
已閱讀5頁(yè),還剩1頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

一、實(shí)驗(yàn)?zāi)康?、對(duì)理論課中學(xué)習(xí)的進(jìn)程、程序等的概念作進(jìn)一步的理解,明確進(jìn)程和程序的區(qū)別;2、加深理解進(jìn)程并發(fā)執(zhí)行的概念,認(rèn)識(shí)多進(jìn)程并發(fā)執(zhí)行的實(shí)質(zhì);3、觀(guān)察進(jìn)程爭(zhēng)奪資源的現(xiàn)象,分析其過(guò)程和原因,學(xué)習(xí)解決進(jìn)程互斥的方法;4、對(duì)經(jīng)典的多用戶(hù)、多任務(wù)的優(yōu)先級(jí)輪轉(zhuǎn)調(diào)度系統(tǒng)Linux有一定的了解;5、了解Linux系統(tǒng)中多進(jìn)程之間通過(guò)管道通信的根本原理和應(yīng)用方法。二、實(shí)驗(yàn)內(nèi)容1、用virtual虛擬機(jī)運(yùn)行l(wèi)inux虛擬系統(tǒng);2、分析并理解源程序;3、在linux中輸入相應(yīng)程序并觀(guān)察運(yùn)行結(jié)果。三、實(shí)驗(yàn)原理〔一〕多進(jìn)程并發(fā)執(zhí)行是使用后臺(tái)任務(wù)來(lái)實(shí)現(xiàn)任務(wù)的“多進(jìn)程化〞。在不加控制的模式下,不管有多少任務(wù),全部都后臺(tái)執(zhí)行。也就是說(shuō),在這種情況下,有多少任務(wù)就有多少“進(jìn)程〞在同時(shí)執(zhí)行?!捕硨?shí)驗(yàn)中要用到的函數(shù)1、fork〔〕函數(shù)——進(jìn)程創(chuàng)立函數(shù)。2、getpid〔〕函數(shù)——取得目前進(jìn)程的進(jìn)程標(biāo)識(shí)碼。3、exit〔〕函數(shù)——用來(lái)正常終結(jié)目前進(jìn)程的執(zhí)行。4、sleep〔〕函數(shù)——用來(lái)延時(shí),它會(huì)被掛起,把處理器讓給其他的進(jìn)程。5、printf〔〕函數(shù)——是格式化輸出函數(shù),一般用于向標(biāo)準(zhǔn)輸出設(shè)備按規(guī)定格式輸出信息?!踩硨?shí)驗(yàn)中要用的命令1、cd命令:功能:改變工作目錄。語(yǔ)法:cd[directory]說(shuō)明:該命令將當(dāng)前目錄改變至directory所指定的目錄。假設(shè)沒(méi)有指定directory,那么回到用戶(hù)的主目錄。為了改變到指定目錄,用戶(hù)必須擁有對(duì)指定目錄的執(zhí)行和讀權(quán)限。該命令可以使用通配符。2、mkdir命令:功能:創(chuàng)立一個(gè)目錄〔類(lèi)似MSDOS下的md命令〕。

語(yǔ)法:mkdir[選項(xiàng)]dir-name

說(shuō)明:該命令創(chuàng)立由dir-name命名的目錄。要求創(chuàng)立目錄的用戶(hù)在當(dāng)前目錄中〔dir-name的父目錄中〕具有寫(xiě)權(quán)限,并且dirname不能是當(dāng)前目錄中已有的目錄或文件名稱(chēng)。3、ls命令:功能:ls是英文單詞list的簡(jiǎn)寫(xiě),其功能為列出目錄的內(nèi)容。這是用戶(hù)最常用的一個(gè)命令之一,因?yàn)橛脩?hù)需要不時(shí)地查看某個(gè)目錄的內(nèi)容。該命令類(lèi)似于DOS下的dir命令。語(yǔ)法:ls[選項(xiàng)][目錄或是文件]

說(shuō)明:對(duì)于每個(gè)目錄,該命令將列出其中的所有子目錄與文件。對(duì)于每個(gè)文件,ls將輸出其文件名以及所要求的其他信息。默認(rèn)情況下,輸出條目按字母順序排序。當(dāng)未給出目錄名或是文件名時(shí),就顯示當(dāng)前目錄的信息。4、vim、clear命令在這里就不做介紹了?!菜摹硨?shí)驗(yàn)源程序如下:#include<stdio.h>#include<unistd.h>#include<sys/types.h>#include<sys/wait.h>#include<stdlib.h>main(){intpid1,pid2,i=1;while((pid1=fork())==-1);if(pid1==0){printf("Thisischildprocess1,pid=%d\n",getpid());sleep(1);for(i='A';i<='Z';i++){printf("Childprocess1print:%c\n",i);sleep(1);}exit(0);}else{while((pid2=fork())==-1);if(pid2==0){printf("Thisischildprocess2,pid=%d\n",getpid());sleep(1);for(i='a';i<='z';i++){printf("Childprocess1print:%c\n",i);sleep(1);}exit(0);}else{printf("Thisisaparentprocess,pid=%d\n",getpid());sleep(1);for(i=1;i<=26;i++){printf("Parentprocessprint:%d\n",i);sleep(1);exit(0);}}}}四、實(shí)驗(yàn)步驟1、翻開(kāi)VirtualBox虛擬機(jī),并運(yùn)行l(wèi)inux操作系統(tǒng);2、在linux操作系統(tǒng)中輸入相關(guān)指令如下:cd/(進(jìn)入根目錄下);ls〔查詢(xún)根目錄下的文件〕;mkdirmylinux〔在根目錄下新建一個(gè)文件夾mylinux〕;vimjinchengbingfa.c〔新建一個(gè)c文件〕;3、進(jìn)入vim編輯器,輸入源程序,保存并退出;4、輸入gccjinchengbingfa.c-ojinchengbingfa對(duì)文件進(jìn)行編譯;5、./jinchengbingfa進(jìn)行調(diào)試;6、調(diào)試無(wú)誤后截圖,然后關(guān)閉系統(tǒng),實(shí)驗(yàn)畢。五、實(shí)驗(yàn)截圖1、調(diào)試過(guò)程〔截圖〕:2、局部程序〔截圖〕:3、調(diào)試結(jié)果〔截圖〕:六、實(shí)驗(yàn)心得完成這這次實(shí)驗(yàn),實(shí)話(huà)實(shí)說(shuō),花了不少心思,當(dāng)然一份耕耘一分收獲,到最后我學(xué)到不少知識(shí)。通過(guò)這次實(shí)驗(yàn),首先,我學(xué)會(huì)了怎么裝virtual虛擬機(jī)和怎么裝linux系統(tǒng),以前,裝系統(tǒng)對(duì)我來(lái)說(shuō),永遠(yuǎn)是渴望而不可及的事情,總覺(jué)得能裝系統(tǒng)的人的都是超人,現(xiàn)在也讓我夢(mèng)想了一下超人的感覺(jué),真的頗有成就感,我的這點(diǎn)小小的滿(mǎn)足都是因?yàn)槲覀冇幸晃缓茇?fù)責(zé)的老師,很耐心地指導(dǎo)我們實(shí)驗(yàn),很細(xì)心地幫我們分析并改正調(diào)試過(guò)程中的種種錯(cuò)誤,萬(wàn)分感謝老師。在此,只想由衷地對(duì)老師說(shuō)聲“謝謝〞,其次,我能更

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論