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

正文內(nèi)容

進(jìn)程同步與互斥-全文預(yù)覽

2025-11-12 10:13 上一頁面

下一頁面
  

【正文】 : wait(0); wait(0); wait(0); 斷開 2個(gè)共享存儲(chǔ)區(qū); 撤消 2個(gè)共享存儲(chǔ)區(qū); 撤消 3個(gè)信號量; exit(0); } 2020/11/23 31 編譯連接并執(zhí)行后的輸出結(jié)果如下: 由運(yùn)行結(jié)果可以看出 , 生產(chǎn)者進(jìn)程分別往緩沖區(qū) 0~ 4中送了 10次產(chǎn)品 ,消費(fèi)者進(jìn)程 A和 B輪流從緩沖區(qū) 0~ 4中取走產(chǎn)品 , 并實(shí)現(xiàn)了 3個(gè)進(jìn)程之間的同步和互斥 , 即實(shí)現(xiàn)了生產(chǎn)者進(jìn)程送了產(chǎn)品后消費(fèi)者進(jìn)程才取走產(chǎn)品 , 并且一次只有一個(gè)進(jìn)程進(jìn)入緩沖區(qū) 。 使用信號量實(shí)現(xiàn)進(jìn)程讀寫緩沖區(qū)的同步和互斥 。 exit(0)。V,1)。 //對 emptyid執(zhí)行 P操作 puts(Enter your text:)。 printf(Parent ok!\n)。 //等待子進(jìn)程終止 shmdt(viraddr)。 semop(emptyid,amp。 2020/11/23 24 while((chld=fork())==1)。 =1。 /*定義 P、 V操作 */ =0。 =1。 char *viraddr。 main() { int chld,i,j。 ⑵ . 同步算法: 子進(jìn)程執(zhí)行條件為單緩沖區(qū)有空 , 設(shè)信號量 empty, 初值為 1; 父進(jìn)程執(zhí)行條件為單緩沖區(qū)有數(shù) , 設(shè)信號量 full, 初值為 0; 上述信號量可以由父進(jìn)程定義 、 申請 、 初始化 , 然后由父子進(jìn)程共享使用 , 子進(jìn)程結(jié)束后由父進(jìn)程撤消 。 //子進(jìn)程終止 } } 2020/11/23 19 編譯連接及運(yùn)行結(jié)果: 2020/11/23 20 利用信號量實(shí)現(xiàn)進(jìn)程同步 [例 410] 父進(jìn)程創(chuàng)建一個(gè)子進(jìn)程 , 父子進(jìn)程共享一個(gè)存儲(chǔ)區(qū) , 子進(jìn)程向共享存儲(chǔ)區(qū)中以覆蓋方式寫信息 , 父進(jìn)程從該共享存儲(chǔ)區(qū)中讀信息并顯示信息 。 semop(mutexid,amp。P,1)。 //撤消信號量 exit(0)。V,1)。 //進(jìn)入臨界區(qū)前執(zhí)行 P操作 printf(prnt in\n)。 //創(chuàng)建子進(jìn)程 if(chld0) //父進(jìn)程返回 { i=1。 =0。 if(semctl(mutexid,0,SETVAL,arg)==1) perror(semctl setval error)。 /*定義數(shù)據(jù)結(jié)構(gòu) */ struct sembuf P,V。 分析: 對臨界區(qū)設(shè)置互斥信號量 mutex, 其內(nèi)部標(biāo)識(shí)為 mutexid, 初值為 1。 因?yàn)樾盘柫坎皇瞧胀ㄗ兞?,對它賦初值只能通過系統(tǒng)調(diào)用函數(shù)semctl(semid,0,SETVAL,arg)進(jìn)行,其值的修改只能通過 P、 V操作,而不能使用普通的賦值語句。P,1)。 6. 定義信號量的 V操作 ( 供所有信號量的 V操作使用 ) =0。 semctl(semid,0,SETVAL,arg)。 ⑵ . 定義給信號量賦初值的參數(shù)數(shù)據(jù)結(jié)構(gòu): union semun arg。 ⑵ . 撤消信號量集 , 格式為: semctl(semid,IPC_RMID,0)。 2020/11/23 12 3.信號量集的控制函數(shù) 實(shí)驗(yàn)中使用該系統(tǒng)調(diào)用實(shí)現(xiàn)以下功能: ⑴ . 為信號量賦初值 , 格式為: union semun arg。V, 1)。 2020/11/23 9 P、 V操作 在實(shí)驗(yàn)中 , 使用該系統(tǒng)調(diào)用實(shí)現(xiàn) P、 V操作 , 使用格式為: struct sembuf P,V。 ③.如果 sem_op為 0:則該進(jìn)程將睡眠直到信號量的值也為 0。 ⑵ . semop確定對 sem_num指定的信號量采取何種操作 , 它可以為負(fù)數(shù) 、 正數(shù)和零 。 /* semaphore index in array */ short sem_op。 其中的 IPC_PRIVATE可以使用具體的整型數(shù)值取代 。 ② . key值不為 IPC_PRIVATE而是由用戶指定一個(gè)非 0整型數(shù)值 , 則
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1