進程的創(chuàng)建控制-實驗報告_第1頁
進程的創(chuàng)建控制-實驗報告_第2頁
進程的創(chuàng)建控制-實驗報告_第3頁
進程的創(chuàng)建控制-實驗報告_第4頁
進程的創(chuàng)建控制-實驗報告_第5頁
免費預覽已結束,剩余1頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、.;內蒙古師大計算機與信息工程學院操作系統(tǒng)課程實驗報告 實習題目操作系統(tǒng)原理實驗進程的創(chuàng)建控制實驗指導教師玉柱職 稱副教授學生姓名王雪婷學 號20141105053日 期16-12-7實現(xiàn)工具Telnet實現(xiàn)環(huán)境Linux實習內容(功能、目標)通過編寫一段程序,使用系統(tǒng)調用fork( )函數(shù)創(chuàng)建兩個子進程,第一個子進程輸出brother1,第二個子進程輸出brother2,父進程輸出father,從而體會進程間的并發(fā)特征。實現(xiàn)的思想、方法和技術(含數(shù)據(jù)結構、算法)使用c語言進行編寫,利用分叉函數(shù)生成子進程,子進程生成之后在子進程中調用sleep( )函數(shù),調整父進程及子進程的并發(fā)執(zhí)行過程。1.

2、 Fork() (1) 功能:創(chuàng)建一子進程; (2) 返回值 0: 從進程返回; 0: 從父進程返回,返回值為子進程的進程標識號; -1: 創(chuàng)建失敗返回。2. Exit() (1)功能:終止調用進程(結束進程); (2)說明: 結束進程后,要通知父進程; (父進程中wait調用讀取相應信息)3. Wait() (1) 功能:控制父進程與子進程同步; (2) 返回值 -1:出錯返回; n:正確返回子進程的ID; 0:其它。4. sleep(n) (1) 功能:當前進程睡眠n秒鐘; (2) 使調用進程進入睡眠隊列。主要代碼注釋#include#includemain() int p1,p2; wh

3、ile(p1=fork()=-1); if(p1=0) printf(brother1n); exit(0); sleep(5); else while(p2=fork()=-1); if(p2=0) printf(brother2n); exit(0); sleep(0); wait(0); printf(fathern); / 創(chuàng)建子進程1/如果p1是0,執(zhí)行子進程1中的內容/否則將創(chuàng)建子進程2結果分析(含實現(xiàn)中出錯原因分析)第一次編寫完成之后運行出現(xiàn)了圖1的情況(因圖片放入該頁面會出現(xiàn)文字越界現(xiàn)象,所以圖片放在了最后一頁),經過查找發(fā)現(xiàn)程序中使用了exit( )函數(shù)但是沒有使用頭文件;當添加完頭文件之后,運行出現(xiàn)了圖2現(xiàn)象,表明實驗成功,但是想起老師上課時說進程上cpu是隨機的,所以測試了四組,但是結果都是一樣的(見圖3),輸出依次是:brother1

溫馨提示

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

評論

0/150

提交評論