實驗報告_進程基礎(chǔ)_第1頁
實驗報告_進程基礎(chǔ)_第2頁
實驗報告_進程基礎(chǔ)_第3頁
實驗報告_進程基礎(chǔ)_第4頁
實驗報告_進程基礎(chǔ)_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、四 川 大 學 計 算 機 學 院、軟 件 學 院實 驗 報 告課程名稱操作系統(tǒng)課程設(shè)計實驗課時1實驗項目進程基礎(chǔ)實驗時間2012年03月25日星期一實驗?zāi)康?1) Linux下進程監(jiān)控命令介紹; 2) 引起進程創(chuàng)建的四個事件演示; 3) 引起進程終止三類事件演示; 4) 在程序中創(chuàng)建進程的實現(xiàn)方法實驗環(huán)境 X86,WindowsXP,VMware Workstation 5.0.0,RedHat Linux , SSHSecureShellClient-3.2.9實驗內(nèi)容(算法、程序、步驟和方法) Lab1-利用ps命令與TOP命令完成進程創(chuàng)建四類事件和三類終止事件的演示:(1) 作業(yè)調(diào)度:

2、a. 在執(zhí)行程序前運行top命令(圖1.1.a)b. 編寫一個循環(huán)次數(shù)較大的程序while1000(圖1.1.b),然后執(zhí)行。c. 觀察top顯示的進程運行狀態(tài),查看顯示的條目中有沒有名為while1000的進程,記錄下pid。(圖1.1.c)d. 手動殺死while1000進程,發(fā)現(xiàn)top結(jié)果中的while1000消失了。(圖1.1.d)(2) 用戶登錄:a. 在圖形界面中執(zhí)行top命令,將top結(jié)果截圖保存。(圖1.2.a)b. 切換到字符界面,輸入用戶名密碼,再次執(zhí)行top命令,將結(jié)果截圖保存。(圖1.2.b)(3) 系統(tǒng)調(diào)用:a. 執(zhí)行pse 。截圖。(圖1.3.a)b. 編寫一個包括

3、系統(tǒng)調(diào)用的程序read.c(圖1.3.b)c. 編譯執(zhí)行read.c,并執(zhí)行pse命令,截圖。(圖1.3.c)(4) 用戶程序調(diào)用:a. 執(zhí)行top命令。(圖1.4.a)b. 編寫程序fork.c,通過fork()函數(shù)手動創(chuàng)建新進程,記錄下pid。(圖1.4.b,c,d)c. 在top產(chǎn)生的結(jié)果中查看是否出現(xiàn)了pid的項(圖1.4.e)Lab2 -在用戶程序中利用fork命令創(chuàng)建一個進程,在父進程中打印父進程的PID號,在子進程中打印子進程的PID號:(1)編寫程序,運用fork()函數(shù)創(chuàng)建子進程,getpid()函數(shù)獲取進程的pid,存為process0.c(圖2.1)(2)編譯執(zhí)行proc

4、ess0.c,將運行結(jié)果截圖。(圖2.2)Lab3 -利用fork和execv函數(shù)族創(chuàng)建一個多進程程序,其中: 父進程創(chuàng)建子進程后,一直等待; 子進程將當前運行的進程結(jié)果存放到result.txt中; 父進程在子進程完成后,讀取result.txt文件,并將結(jié)果打印輸出到屏幕。(1)編寫程序,使用fork()函數(shù)創(chuàng)建子進程,將命令“ping c 4 127.0.0.1 result.txt”(ping的次數(shù)為4,結(jié)果重定向到result.txt文件中)存在字符串數(shù)組argv中,并作為execv()函數(shù)的參數(shù)。父進程中使用wait()函數(shù),并讀取result.txt.中的內(nèi)容,輸出。存為fork

5、.c(圖3.1)(2)對fork.c進行編譯運行,輸出結(jié)果。(圖3.2) 實驗結(jié)果的截圖 Lab1-利用ps命令與TOP命令完成進程創(chuàng)建四類事件和三類終止事件的演示:(1)作業(yè)調(diào)度:1.1.a: 執(zhí)行top命令:1.1.b: while1000.c文件的截圖:1.1.c: while1000出現(xiàn)在了進程列表中:1.1.d: 殺死while1000進程后,執(zhí)行top命令:(2)用戶登錄:1.2.a: 在圖形界面中執(zhí)行top命令,截圖:1.2.b: 切換到字符界面,輸入用戶名密碼登錄,再次top,截圖:(3)系統(tǒng)調(diào)用:1.3.a: 執(zhí)行命令ps e,截圖:1.3.b: 文件read.c,程序中包括

6、文件的讀寫(將產(chǎn)生系統(tǒng)調(diào)用):1.3.c: 創(chuàng)建文件1.txt,輸入一些字符串用于read.c中的讀取:1.3.d: 編譯執(zhí)行read.c,因為包含死循環(huán),程序連續(xù)運行,運行結(jié)果截圖:1.3.e: 執(zhí)行ps e 命令,截圖:(4)用戶程序調(diào)用:1.4.a: 文件fork.c,包含一個子進程的創(chuàng)建,父子進程中都包含一個死循環(huán),連續(xù)打印進程信息:1.4.b: 運行程序,執(zhí)行top命令,截圖:1.4.c: 殺死程序fork,截圖:Lab2-在用戶程序中利用fork命令創(chuàng)建一個進程:2.1: 文件process0.c,包含一個子進程的創(chuàng)建,父子進程分別打印自己的pid:2.2: 編譯執(zhí)行,運行結(jié)果截圖:Lab3-利用fork和execv函數(shù)族創(chuàng)建一個多進程程序:3.1: 文件fork.c,包含一個子進程的創(chuàng)建,子進程調(diào)用execv()函數(shù),執(zhí)行ping命令并將輸出結(jié)果保存到文件result.txt中,父進程中讀取這個文件:3.2: 編譯執(zhí)行,成功在父進程中顯示ping命令的結(jié)果,截圖:小 結(jié) 通過本實驗,我掌握了: 進程監(jiān)控的兩種命令,ps和top命令的使用方法,以及進程創(chuàng)建和終止的典型事

溫馨提示

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

評論

0/150

提交評論