




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、精選優質文檔-傾情為你奉上 物聯網學院20 15 / 2016 學年第 1 學期實 驗 報 告 課程名稱: linux編程基礎 實驗名稱: linux多進程和進程間通信 班 級 學 號: 學 生 姓 名: 指 導 教 師 日 期: 20 15 年 12 月實驗六 linux多進程與進程間通信一、 實驗目的熟悉linux系統編程方法熟悉linux常用的系統調用二、 實驗環境PC機一臺安裝虛擬機版的linux操作系統一臺三、 實驗預習熟悉進程創建/線程創建系統調用熟悉進程間通信系統的調用四、 實驗內容Linux fork調用進程間通信系統調用:管道通信五、 實驗步驟編寫一個程序,實現如下功能:創建
2、兩個子進程,父進程向管道中按照順序輸入數字1 2 3 4 5 6,另外兩個子進程分別從管道中按照順序讀出奇數和偶數,及子進程1讀出的數據應該是1 3 5 7 9,而子進程讀出的數據應該是2 4 6 8 10 數據,要求按先讀奇數,再讀偶數的順序進行程序代碼如下:#include<unistd.h>#include<signal.h>#include<stdio.h>#include<stdlib.h>int pid1,pid2; main( ) int fd2,i=0,j=0;char outpipe100,inpipe1100,inpipe21
3、00,outpipe1100;pipe(fd); /*創建一個管道*/while (pid1=fork( )=-1);/*向管道中寫入字符*/lockf(fd1,1,0);sprintf(outpipe,"");write(fd1,outpipe,50);lockf(fd1,0,0);/*-*/*子進程1先讀取管道中所有的字符,再重新把不需要的字符寫入管道*/if(pid1=0) lockf(fd0,1,0);read(fd0,inpipe1,10);for(i=0;i<10;i+)/把不需要的字符寫入管道 if(i%2)outpipe1j=inpipe1i;j+;l
4、ockf(fd1,1,0);write(fd1,outpipe1,5);lockf(fd1,0,0);/寫入結束sleep(5); /*自我阻塞5秒*/ lockf(fd0,0,0); exit(0); /*-*/else /*子進程2從管道中讀取字符*/while(pid2=fork( )=-1); if(pid2=0) lockf(fd0,1,0); /*互斥*/ read(fd0,inpipe2,5); lockf(fd0,0,0); sleep(5);lockf(fd0,0,0);exit(0);/*讀取結束*/ else wait(0); /*同步*/ read(fd0,inpipe2,10); /*從管道中讀長為50字節的串*/ printf("inpipe2 %sn",inpipe2); wait(0); read(fd0,inpipe1,10); printf("inpipe1 %sn",inpipe1); exit(0); 實驗結果如下:六、 實驗思考(1)、多進程與多線程相比,各自的優點和缺點是什么?多進程多線程優點內存隔離,單個進程的異常不會導致整個應用的崩潰。方便調試。提高系統的并行性,并且開銷小。缺點進程間調用,通訊和切換開銷均比多線程大。沒有內存隔離,單個線程的崩潰會導致整個應用過的退
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 學生欺凌和暴力行為分析工作流程
- 【真題】人教版三年級下冊期末自測評價數學試卷(含解析)2024-2025學年北京市東城區第一六六中學
- 部編版九年級歷史班級復習督促計劃
- 特殊教育中數學核心素養培育心得體會
- 2025年初中物理實驗室工作總結范文
- 鋼結構施工樣板計劃
- 二年級培優輔差科技輔導計劃
- 特殊教育班主任教學心得體會范文
- 以實踐為翼:高中物理教學中STS教育的深度融合與拓展
- 以威利斯模式賦能職高英語閱讀教學:理論、實踐與創新
- DB45∕T 1098-2024 橡膠瀝青路面施工技術規范
- 《蠶絲》教學課件
- 中央軍校面試題庫及答案
- 2025年廣東省高考地理試卷真題(含答案)
- 江西省金控科技產業集團有限公司招聘筆試題庫2025
- 2025年湖北省中考英語試題(附答案)
- 2024年河南省豫地科技集團有限公司招聘真題
- 醫院培訓課件:《靜脈中等長度導管臨床應用專家共識》
- 2024山西杏花村汾酒集團有限責任公司人才招聘筆試參考題庫附帶答案詳解
- 2023年深靜脈血栓形成的診斷和治療的指南
- GA 1809-2022城市供水系統反恐怖防范要求
評論
0/150
提交評論