版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
課程名稱:Linux高級系統(tǒng)編程_______________授課年級:___________________________授課學(xué)期:___________________________教師姓名:___________________________二零二x年零三月零一日課程名稱第六章SystemVIPC計劃學(xué)時二學(xué)時內(nèi)容分析本章主要介紹消息隊列,享內(nèi)存,信號燈教學(xué)目地與教學(xué)要求要求學(xué)生理解SystemV通信機(jī)制地原理,掌握SystemV通信機(jī)制地特點(diǎn)及應(yīng)用場合,掌握SystemV通信機(jī)制編程接口地用法,熟練使用SystemV通信機(jī)制實(shí)現(xiàn)功能需求教學(xué)重點(diǎn)消息隊列,享內(nèi)存,信號燈教學(xué)難點(diǎn)消息隊列,享內(nèi)存,信號燈教學(xué)方式課堂講解及ppt演示教學(xué)過程第一課時(消息隊列,享內(nèi)存)內(nèi)容回顧回顧上節(jié)內(nèi)容,引出本課時主題。第五章介紹了早期程間通信機(jī)制。這些早期通信機(jī)制雖然便于操作,但有很大地局限,因此本章將介紹功能更加豐富地SystemVIPC。SystemVIPC在Linux系統(tǒng)占有很重要地位置,包括消息隊列,享內(nèi)存,信號燈(信號量集)。其使用接口較復(fù)雜,細(xì)節(jié)較多,操作要熟練掌握。從而引出本節(jié)地內(nèi)容。明確學(xué)目地能夠掌握消息隊列簡介能夠掌握消息隊列編程能夠掌握消息隊列實(shí)驗(yàn)?zāi)軌蛘莆障韮?nèi)存簡介知識講解消息隊列簡介Linux下地程通信機(jī)制基本是從UNIX臺繼承下來地。對UNIX發(fā)展做出重大貢獻(xiàn)地兩大主力AT&T地貝爾實(shí)驗(yàn)室及BSD在程間通信方面地側(cè)重點(diǎn)有所不同。前者是對UNIX早期地程間通信手段行了系統(tǒng)地改與擴(kuò)充,形成了SystemVIPC,這些都是針對本地通信;后者則跳過該限制,形成了基于套接字(socket)地程間通信機(jī)制。本節(jié)將介紹消息隊列地使用。顧名思義,消息隊列就是一些消息地列表,或者說是一些消息組成地隊列。消息隊列與管道有些類似,消息隊列可以認(rèn)為是管道地改版。相較于管道地先先出準(zhǔn)則,消息隊列在讀取時可以按照消息地類型行讀取,這也是消息隊列地特點(diǎn),它可以實(shí)現(xiàn)消息隨機(jī)查詢。消息發(fā)送時,需要將消息封裝,然后添加到隊列地末尾即可,而消息接收時則可以根據(jù)需求行選擇地讀?。ㄗx取即將封裝地消息從隊列移除)。如圖所示,程可以通過消息隊列發(fā)送消息,同時也可以從消息隊列讀取消息,不同于無名管道地單向通信,操作更加靈活。消息隊列編程下面將通過簡單地示例展示消息隊列地基本地使用,在該示例,一個程向消息隊列添加消息,另外一個程從消息隊列讀取消息。具體案例參考六.一.二節(jié)。消息隊列實(shí)驗(yàn)六.一.二節(jié)介紹了消息隊列地基本接口使用,本節(jié)將通過一個實(shí)驗(yàn)完成更加復(fù)雜地需求。實(shí)驗(yàn)將實(shí)現(xiàn)兩個終端地信息互,類似于聊天。在一個終端輸入,信息可以實(shí)時顯示到另一個終端,反之同理。實(shí)驗(yàn)設(shè)計地原理如圖所示。享內(nèi)存簡介享內(nèi)存是一種最為高效地程間通信方式。因?yàn)槌炭梢灾苯幼x寫內(nèi)存,而無須創(chuàng)建任何形式地載體即可完成數(shù)據(jù)地傳遞。享內(nèi)存地通信原理,與程地虛擬地址空間映射息息有關(guān)。享內(nèi)存即內(nèi)存享,多個程通過訪問同一塊內(nèi)存區(qū)域,來實(shí)現(xiàn)數(shù)據(jù)地互。根據(jù)三.一節(jié)講述地程地內(nèi)存問題,可以很容易理解這種通信原理。一般情況下,每個程都享有自己地獨(dú)立地虛擬內(nèi)存空間,因此不同地程所映射地物理內(nèi)存也不相同。而享內(nèi)存地通信原理,則剛好是將一塊實(shí)際地物理內(nèi)存空間,分別映射到不同程地虛擬地址空間上,這樣程只需要關(guān)注映射屬于自己地虛擬地址即可,其訪問地空間則為同一塊空間。這樣地操作雖然很高效,但也有缺陷。因?yàn)槎鄠€程同時訪問同一享地資源,則會產(chǎn)生競態(tài),從而導(dǎo)致數(shù)據(jù)地不確定。這一點(diǎn)與多線程通信是一樣地。因此享內(nèi)存這種通信機(jī)制基本不能單獨(dú)使用,而是需要結(jié)合一定地同步互斥機(jī)制,保證數(shù)據(jù)地訪問不會出現(xiàn)問題。享內(nèi)存地通信原理如圖所示。享內(nèi)存編程由于享內(nèi)存通信時不可單獨(dú)使用,因此本示例將不會同時操作享內(nèi)存。而是采用程向享內(nèi)存寫入,之后另一個程再行讀取。具體案例詳情參考六.二.二節(jié)。第二課時(享內(nèi)存,信號燈)內(nèi)容回顧回顧上節(jié)內(nèi)容,引出本課時主題。上節(jié)已經(jīng)介紹了消息隊列,享內(nèi)存地部分內(nèi)容,下面將介紹享內(nèi)存接下來內(nèi)容與信號燈。明確學(xué)目地能夠掌握信號燈簡介能夠掌握信號燈編程能夠掌握信號燈實(shí)驗(yàn)知識講解信號燈簡介六.二節(jié)主要介紹了享內(nèi)存地使用,享內(nèi)存作為程間最高效地通信機(jī)制,其缺陷也十分明顯。為了保證程在訪問同一內(nèi)存區(qū)域而不會產(chǎn)生競態(tài),享內(nèi)存需要與同步互斥機(jī)制配合使用。SystemV提供了這種機(jī)制,配合享內(nèi)存使用。信號燈也可以稱為信號量集。顧名思義,即信號量地集合。在四.二.五節(jié),已經(jīng)介紹了信號量地使用。信號燈其操作與信號量基本類似,不同地是信號燈可以操作多個信號量。對于每個信號量地地核心操作為PV操作,P操作即申請信號量,如果信號量地值大于零則申請成功,信號量地值減一,如果信號量地值為零則申請阻塞;V操作即釋放信號量,如果釋放成功,則信號量地加一。信號燈編程具體案例詳情參考六.三.二節(jié)展示函數(shù)地基本操作。初始化兩個信號量(初始值同為零),并行PV操作。信號燈實(shí)驗(yàn)六.二.二節(jié),介紹了享內(nèi)存地基本編程,通過程向享內(nèi)存區(qū)域?qū)懭霐?shù)據(jù),之后其它程從該區(qū)域讀取數(shù)據(jù)。然而數(shù)據(jù)傳遞往往不是一次就可以結(jié)束地,如果在程行讀取操作時
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025下半年四川雅安天全縣事業(yè)單位招聘19人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025下半年北京市國土資源局事業(yè)單位招聘2人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025上海市教育考試院公開招聘4人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025上半年浙江省安吉縣機(jī)關(guān)事業(yè)單位招聘73人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025上半年江蘇省南通啟東市事業(yè)單位招聘84人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025上半年四川省自貢榮縣事業(yè)單位考試聘用110人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025上半年四川省內(nèi)江市市中區(qū)部分事業(yè)單位招聘72人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025上半四川南充經(jīng)濟(jì)開發(fā)區(qū)應(yīng)急響應(yīng)中心招聘歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 高等院校教師聘用合同樣稿
- 游艇俱樂部內(nèi)墻翻新刮瓷協(xié)議
- 幼兒園后勤管理總結(jié)匯報
- 2024年研究生考試考研思想政治理論(101)試卷及解答參考
- 2023-2024學(xué)年浙江省寧波市江北區(qū)四年級(上)期末數(shù)學(xué)試卷
- 年終獎發(fā)放通知范文
- 農(nóng)產(chǎn)品物流集散中心建設(shè)方案及發(fā)展思路
- 自動化生產(chǎn)線安裝與調(diào)試課件
- 快樂讀書吧:中國民間故事(專項(xiàng)訓(xùn)練)-2023-2024學(xué)年五年級語文上冊(統(tǒng)編版)
- 車間主任個人年終總結(jié)
- 實(shí)驗(yàn)室LIMS軟件培訓(xùn)
- 成品油零售經(jīng)營批準(zhǔn)證書變更、補(bǔ)辦、到期換證申請表
- 癲癇持續(xù)狀態(tài)
評論
0/150
提交評論