管道通訊實驗報告

2021-08-20 22:30:49 字數 1155 閱讀 2932

實驗目的

1.熟悉管道的概念

2.掌握利用管道實現程序間通訊的方法

實驗內容

編寫一段程式,實現程序的管道通訊:

1.使用系統呼叫

pipe()

建立一條管道線。兩個子程序p1和p2分別向管道各寫一句話:

child 1 is sending a message!

chile 2 is sending a message!

2.父程序則從管道中讀出來自於兩個子程序的資訊,顯示在螢幕上。

部分**(僅供參考)

父程序wait(0); //等待管道中有資訊       

read(fd[0],inpipe,50); // 從管道裡讀資訊     

printf("%s\n",inpipe);        

wait(0);       

read(fd[0],inpipe,50);       

printf("%s\n",inpipe);       

exit(0);

子程序sprintf(outpipe,"message from child one!!!!");  

write(fd[1],outpipe,50); //往管道裡寫訊息

sleep(2);  

exit(0);

注意1.父子程序之間的同步關係如何實現?

2.當兩個子程序往管道裡面寫資訊的時候是否需要對管道實現互斥訪問?

#include#include#include#includeint pid1,pid2;

void main()

else

else

}}

**執行截圖:

訊息佇列通訊實驗報告總結

1 了解什麼是訊息 訊息佇列 2 掌握訊息傳送的機理 作用 建立訊息佇列 原型 int msgget key t key,int msgflag 引數 key 鍵值 ipc private msgflag 許可權 返回值 成功 訊息佇列id 出錯 1 標頭檔案 include include inc...

IDC通訊實驗

背景 模擬下idc機房通訊流程,其實就是根據自己的想法來做的實驗,有不對之處,請指正 在這裡我們假設有兩種流量,應用與管理流量,我們想讓其管理流量與應用流量分開,但以下實驗並沒有完全將應用流量與管理流量分開,因我們有內網的應用如db,那麼,我們應該使用其管理口來使流量分開,此次實驗沒有做,而且內網還...

串列埠通訊實驗

晶振12mhz,波特率1200,程式啟動後微控制器主動發出hello server,pc使用串列埠助手應答微控制器,當微控制器收到pc發來的資料aah後,將30h 3fh的16個位元組傳送給pc,當51收到e0h時就發40h 5fh的32個位元組資料,若微控制器收到其他資料後,則不做任何修改返回pc...