freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

進(jìn)程間同步和通信-wenkub

2022-10-22 08:43:40 本頁面
 

【正文】 ? 管道只能在具有親緣關(guān)系的進(jìn)程之間進(jìn)行通信 ? 通過 fork傳遞管道的描述符 ? 任意的兩個進(jìn)程不可能共享同一個管道 ? 無法打開已經(jīng)存在的管道 Embedded Operating Systems 7 FIFO ? 管道的一個重大限制是它沒有名字,因此 只能用于具有親緣關(guān)系的進(jìn)程間通信,在 有名管道( named pipe或 FIFO)提出后, 該限制得到了克服。 ? 需要雙方通信時,需要建立起兩個管道; ? 只能用于父子進(jìn)程或者兄弟進(jìn)程之間(具有親緣關(guān)系的進(jìn)程); Embedded Operating Systems 4 在 shell中使用管道的例子 ? 命令:“ ls | more” 使用 pipeline “|”將兩個命令” ls”和“ more”連接起來,使得 ls的輸出成為 more的輸入 ? 也可以使用如下的兩個命令 ? 命令 1:“ ls tmp” ? 命令 2:” more tmp” 命令 1把 ls的輸出重定向到 tmp文件中; 命令 2把 more的輸入重定向到 tmp文件 Embedded Operating Systems 5 創(chuàng)建一個管道 ? 管道可看成是被打開的文件,但并沒有真實的 文件與之對應(yīng) ? pipe()系統(tǒng)調(diào)用用來創(chuàng)建一個新的管道 include int pipe(int filedes[2])。 ? 管道兩端分別用描述符 filedes[0]和 filedes[1]描述 ? 管道兩端的功能是固定的: ? filedes[0]只能用于讀,稱為管道讀端; ? filedes[1]只能用于寫,稱為管道寫端。 ? FIFO,有名管道 ? 特殊的文件類型: 1,嚴(yán)格遵循先入先出的讀寫規(guī)則 2,類似管道,在文件系統(tǒng)中不存在數(shù)據(jù)塊,而是與一塊內(nèi)核緩沖區(qū)相關(guān)聯(lián) 3,有名字, FIFO的名字包含在系統(tǒng)的目錄樹結(jié)構(gòu)中,可以按名訪問 Embedded Operating Systems 8 ? FIFO的操作: ? 以及: open, close, read, write等普通文件操作 Embedded Operating Systems 9 FIFO舉例 ? 創(chuàng)建一個 FIFO: ? 向 FIFO寫: ? 從 FIFO讀: Embedded Operating Systems 10 Embedded Operating Systems 11 Embedded Operating Systems 12 Embedded Operating Systems 13 消息隊列 ? 消息隊列就是一個消息的鏈表。 //標(biāo)志 ? 對于發(fā)送消息來講, msgflg有意義的標(biāo)志為 IPC_NOWAIT:指明在消息隊列沒有足夠空間容納要發(fā)送的消息時, msgsnd是否等待 Embedded Operating Systems 16 ? 接收消息 int msgrcv(int msqid, //msqid為消
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1