2021操作系統(tǒng)實(shí)驗(yàn)報(bào)告共9頁.docx
《2021操作系統(tǒng)實(shí)驗(yàn)報(bào)告共9頁.docx》由會(huì)員分享,可在線閱讀,更多相關(guān)《2021操作系統(tǒng)實(shí)驗(yàn)報(bào)告共9頁.docx(20頁珍藏版)》請?jiān)趨R文網(wǎng)上搜索。
1、操作系統(tǒng)實(shí)驗(yàn)報(bào)告共9頁操作系統(tǒng)實(shí)驗(yàn)報(bào)告共9頁 PAGE / NUMPAGES 操作系統(tǒng)實(shí)驗(yàn)報(bào)告 學(xué) 號: 姓 名: 指導(dǎo)老師: 完成日期: 目錄實(shí)驗(yàn)一1實(shí)驗(yàn)二2實(shí)驗(yàn)三7實(shí)驗(yàn)四10實(shí)驗(yàn)五15實(shí)驗(yàn)六18實(shí)驗(yàn)七22實(shí)驗(yàn)一 UNIX/LINUX入門一、實(shí)驗(yàn)?zāi)康牧私?UNIX/LINUX 運(yùn)行環(huán)境,熟悉UNIX/LINUX 的常用基本命令,熟悉和掌握UNIX/LINUX 下c 語言程序的編寫、編譯、調(diào)試和運(yùn)行方法。二、實(shí)驗(yàn)內(nèi)容 熟悉 UNIX/LINUX 的常用基本命令如ls、who、pwd、ps 等。 練_ UNIX/LINUX的文本行編輯器vi 的使用方法熟悉 UNIX/LINUX 下c 語言編譯器
2、cc/gcc 的使用方法。用vi 編寫一個(gè)簡單的顯示“Hello,World!”c 語言程序,用gcc 編譯并觀察編譯后的結(jié)果,然后運(yùn)行它。三、實(shí)驗(yàn)要求按照要求編寫程序,放在相應(yīng)的目錄中,編譯成功后執(zhí)行,并按照要求分析執(zhí)行結(jié)果,并寫出實(shí)驗(yàn)報(bào)告。四、實(shí)驗(yàn)程序#include stdio.h#include stdlib.hint main()printf (Hello World!n);return 0;五、實(shí)驗(yàn)感想通過第一次室驗(yàn),我了解 UNIX/LINUX 運(yùn)行環(huán)境,熟悉了UNIX/LINUX 的常用基本命令,熟悉和掌握了UNIX/LINUX 下c 語言程序的編寫、編譯、調(diào)試和運(yùn)行方法。實(shí)驗(yàn)
3、二 進(jìn)程管理一、實(shí)驗(yàn)?zāi)康募由顚M(jìn)程概念的理解,明確進(jìn)程與程序的區(qū)別;進(jìn)一步認(rèn)識并發(fā)執(zhí)行的實(shí)質(zhì)。二、實(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”。試觀察記錄屏幕上的顯示結(jié)果,并分析原因。(2)進(jìn)程控制修改已編寫的程序,將每一個(gè)進(jìn)程輸出一個(gè)字符改為每一個(gè)進(jìn)程輸出一句話,再觀察程序執(zhí)行時(shí)屏幕上出現(xiàn)的現(xiàn)象,并分析原因。(3)進(jìn)程的管道通信編寫程序?qū)崿F(xiàn)進(jìn)程的管道通信。使用系統(tǒng)調(diào)用pipe()建立一個(gè)管道,二個(gè)子進(jìn)程P1 和P2 分別
4、向管道各寫一句話:Child 1 is sending a message!Child 2 is sending a message!父進(jìn)程從管道中讀出二個(gè)來自子進(jìn)程的信息并顯示(要求先接收P1,再接收P2)。三、實(shí)驗(yàn)要求按照要求編寫程序,放在相應(yīng)的目錄中,編譯成功后執(zhí)行,并按照要求分析執(zhí)行結(jié)果,并寫出實(shí)驗(yàn)報(bào)告。四、實(shí)驗(yàn)設(shè)計(jì) 1、效用設(shè)計(jì) (1)進(jìn)程創(chuàng)建使用fork()創(chuàng)建兩個(gè)子進(jìn)程,父進(jìn)程等待兩個(gè)子進(jìn)程執(zhí)行完再運(yùn)行。(2)進(jìn)程控制使用fork()創(chuàng)建兩個(gè)子進(jìn)程,父進(jìn)程等待兩個(gè)子進(jìn)程分別輸出一句話再運(yùn)行。(3)進(jìn)程的管道通信 先創(chuàng)建子進(jìn)程1,向管道寫入一句話,子進(jìn)程1結(jié)束后創(chuàng)建子進(jìn)程2,向管道
5、寫入一句話,最后父進(jìn)程從管道中讀出。 2、數(shù)據(jù)結(jié)構(gòu) 子進(jìn)程和管道。 3、程序框圖 五、實(shí)驗(yàn)程序(1)進(jìn)程創(chuàng)建#includestdio.h#includestdlib.hint main()int pid1, pid2;pid1=fork();if (pid10) printf(Fork 1 failed!);if (pid1=0) printf(bn);exit(0); if (pid10) wait(NULL); pid2 = fork(); if (pid20) printf(Fork 2 failed!); if (pid2=0) printf(cn);exit(0); if (pid
6、20) wait(NULL);printf(an);exit(0); (2)進(jìn)程控制#includestdio.h#includestdlib.hint main()int pid1, pid2;pid1=fork();if (pid10) printf(Fork 1 failed!);if (pid1=0) printf(This is child bn);exit(0); if (pid10) wait(NULL); pid2 = fork(); if (pid20) printf(Fork 2 failed!); if (pid2=0) printf(This is child cn);
- 1.請仔細(xì)閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
20 積分
下載 | 加入VIP,下載共享資源 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 2021 操作系統(tǒng) 實(shí)驗(yàn) 報(bào)告