日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Linux中進程通信方法

每個進程各自有不同的用戶地址空間,任何一個進程的全局變量在另一個進程中都看不到,所以進程之間要交換數(shù)據(jù)必須通過內(nèi)核,在內(nèi)核中開辟一塊緩沖區(qū),進程1把數(shù)據(jù)從用戶空間拷到內(nèi)核緩沖區(qū),進程2再從內(nèi)核緩沖區(qū)把數(shù)據(jù)讀走,內(nèi)核提供的這種機制稱為進程間通信(IPC,InterProcess Communication)

成都創(chuàng)新互聯(lián)公司是一家專業(yè)從事網(wǎng)站設計、成都網(wǎng)站制作、網(wǎng)頁設計的品牌網(wǎng)絡公司。如今是成都地區(qū)具影響力的網(wǎng)站設計公司,作為專業(yè)的成都網(wǎng)站建設公司,成都創(chuàng)新互聯(lián)公司依托強大的技術(shù)實力、以及多年的網(wǎng)站運營經(jīng)驗,為您提供專業(yè)的成都網(wǎng)站建設、營銷型網(wǎng)站建設及網(wǎng)站設計開發(fā)服務!

進程通信的方式

1.管道

管道分為有名管道和無名管道

無名管道是一種半雙工的通信方式,數(shù)據(jù)只能單向流動,而且只能在具有親緣關(guān)系的進程間使用.進程的親緣關(guān)系一般指的是父子關(guān)系。無明管道一般用于兩個不同進程之間的通信。當一個進程創(chuàng)建了一個管道,并調(diào)用fork創(chuàng)建自己的一個子進程后,父進程關(guān)閉讀管道端,子進程關(guān)閉寫管道端,這樣提供了兩個進程之間數(shù)據(jù)流動的一種方式。

有名管道也是一種半雙工的通信方式,但是它允許無親緣關(guān)系進程間的通信。

2.信號量

信號量是一個計數(shù)器,可以用來控制多個線程對共享資源的訪問.,它不是用于交換大批數(shù)據(jù),而用于多線程之間的同步.它常作為一種鎖機制,防止某進程在訪問資源時其它進程也訪問該資源.因此,主要作為進程間以及同一個進程內(nèi)不同線程之間的同步手段.

Linux提供了一組精心設計的信號量接口來對信號進行操作,它們不只是針對二進制信號量,下面將會對這些函數(shù)進行介紹,但請注意,這些函數(shù)都是用來對成組的信號量值進行操作的。它們聲明在頭文件sys/sem.h中。

semget函數(shù)

它的作用是創(chuàng)建一個新信號量或取得一個已有信號量

semop函數(shù)

它的作用是改變信號量的值

semctl函數(shù)

該函數(shù)用來直接控制信號量信息

3.信號

信號是一種比較復雜的通信方式,用于通知接收進程某個事件已經(jīng)發(fā)生.

4.消息隊列

消息隊列是消息的鏈表,存放在內(nèi)核中并由消息隊列標識符標識.消息隊列克服了信號傳遞信息少,管道只能承載無格式字節(jié)流以及緩沖區(qū)大小受限等特點.消息隊列是UNIX下不同進程之間可實現(xiàn)共享資源的一種機制,UNIX允許不同進程將格式化的數(shù)據(jù)流以消息隊列形式發(fā)送給任意進程.對消息隊列具有操作權(quán)限的進程都可以使用msget完成對消息隊列的操作控制.通過使用消息類型,進程可以按任何順序讀信息,或為消息安排優(yōu)先級順序.

5.共享內(nèi)存

共享內(nèi)存就是映射一段能被其他進程所訪問的內(nèi)存,這段共享內(nèi)存由一個進程創(chuàng)建,但多個進程都可以訪問.共享內(nèi)存是最快的IPC(進程間通信)方式,它是針對其它進程間通信方式運行效率低而專門設計的.它往往與其他通信機制,如信號量,配合使用,來實現(xiàn)進程間的同步與通信.

6.套接字

socket,即套接字是一種通信機制,憑借這種機制,客戶/服務器(即要進行通信的進程)系統(tǒng)的開發(fā)工作既可以在本地單機上進行,也可以跨網(wǎng)絡進行。也就是說它可以讓不在同一臺計算機但通過網(wǎng)絡連接計算機上的進程進行通信。也因為這樣,套接字明確地將客戶端和服務器區(qū)分開來。

套接字的特性由3個屬性確定,它們分別是:域、類型和協(xié)議。

可用于不同及其間的進程通信


分享題目:Linux中進程通信方法
網(wǎng)頁URL:http://m.5511xx.com/article/cdoccji.html