秋霞电影网午夜鲁丝片无码,真人h视频免费观看视频,囯产av无码片毛片一级,免费夜色私人影院在线观看,亚洲美女综合香蕉片,亚洲aⅴ天堂av在线电影猫咪,日韩三级片网址入口

實驗三linux進程信號通信

上傳人:huo****ian 文檔編號:253313254 上傳時間:2024-12-11 格式:PPT 頁數(shù):12 大?。?86.65KB
收藏 版權(quán)申訴 舉報 下載
實驗三linux進程信號通信_第1頁
第1頁 / 共12頁
實驗三linux進程信號通信_第2頁
第2頁 / 共12頁
實驗三linux進程信號通信_第3頁
第3頁 / 共12頁

下載文檔到電腦,查找使用更方便

9.9 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《實驗三linux進程信號通信》由會員分享,可在線閱讀,更多相關(guān)《實驗三linux進程信號通信(12頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、單擊此處編輯母版標(biāo)題樣式,,單擊此處編輯母版文本樣式,,第二級,,第三級,,第四級,,第五級,,,,*,,,單擊此處編輯母版標(biāo)題樣式,,單擊此處編輯母版文本樣式,,第二級,,第三級,,第四級,,第五級,,,,*,實驗三,linux,進程信號通信,一、實驗?zāi)康?了解,linux,中的信號,熟悉,linux,系統(tǒng)中進程之間軟中斷信號的基本原理。,二、實驗內(nèi)容,1,、編寫程序:用,fork(),創(chuàng)建兩個子進程,再用系統(tǒng)調(diào)用,signal(),讓父進程捕捉鍵盤上來的中斷信號(按,^c,鍵);捕捉到中斷信號后,父進程用系統(tǒng)調(diào)用,kill(),向兩個子進程發(fā)出信號,子進程捕捉到信號后分別輸出下列信息,然后

2、終止:,,,child process1 is killed by parent!,,child process2 is killed by parent!,,父進程等待兩個子進程終止后,輸出如下的信息后終止:,,parent process is killed!,,2.,分析利用軟中斷通信實現(xiàn)進程同步的機制。,,3,、寫出例,2,中的實驗結(jié)果,并作適當(dāng)?shù)姆治觥?三、實驗指導(dǎo),1,、,kill(),系統(tǒng)調(diào)用,,系統(tǒng)調(diào)用格式:,int kill(pid,sig),,參數(shù)定義:,int pid,sig;,,其中,,pid,是一個或一組進程的標(biāo)識符,參數(shù),sig,是要發(fā)送的軟中斷信號。,,(,1,)

3、,pid>0,時,核心將信號發(fā)送給進程,pid.,,(2)pid=0,時,核心將信號發(fā)送給與發(fā)送進程同組的所有進程。,,(,3,),pid=-1,時,核心將信號發(fā)送給所有用戶標(biāo)識符真正等于發(fā)送進程的有效用戶標(biāo)識號的進程。,2,。,signal(),系統(tǒng)調(diào)用,,預(yù)置對信號的處理方式,允許調(diào)用進程控制軟中斷信號。,,系統(tǒng)調(diào)用格式:,,signal(sig,function),,參數(shù)定義:,,signal(sig,function),,int sig;,,void(*func)();,,其中,,sig,用于指定信號的類型,,sig,為,0,則表示沒有收到任何信號,余者如下表所示:,,值,名字,說明,

4、01,SIGHUP,掛起(,hangup),02,SIGINT,中斷,當(dāng)用戶從鍵盤按,^c,時,03,SIGQUIT,退出,當(dāng)用戶從鍵盤按,quit,鍵時,04,SIGILL,非法指令,05,SIGTRAP,跟蹤陷阱,啟動進程,跟蹤代碼的執(zhí)行。,06,SIGIOT,IOT,指令,06,SIGEMT,EMT,指令,07,SIGFPE,浮點運算溢出,08,SIGKILL,殺死。終止進程,。。。,,,16,SIGUSR1,用戶自定義信號,1,17,SIGUSR2,用戶自定義信號,2,,18,SIGCLD,某個子進程死,19,SIGPWR,電源故障,function:,在該進程中的一個函數(shù)地址,,,在

5、核心態(tài)返回用戶態(tài)時,,,它以軟中斷信號的序號作為參數(shù)調(diào)用該函數(shù),,,對除了信號,sigkill,sigtrap,sigpwr,以外的信號,,,核心自動地重新設(shè)置軟中斷信號處理程序的值為,SIG_DFL,,一個進程不能捕獲,SIGKILL,信號,.,,,function,解釋如下,:,,(1)function=1,時,,,進程對,sig,類信號不理睬,,,即屏蔽了該類信號,;,,,(2)function=0,時,,,缺省值,,,進程在收到,sig,信號后應(yīng)終止自已,;,,,(1)function,為非,0,,非,1,類整數(shù)時,,function,的值即作為信號處理程序的指針,.,3.lockf(

6、),系統(tǒng)調(diào)用,,用作鎖定文件的某些段或者整個文件,.,,系統(tǒng)調(diào)用格式,:lockf(files,function,size),,參數(shù)定義,:,,int lockf(files,function,size),,int files,function;,,long size;,,其中,:files,是文件描述符,;function,是鎖定和解鎖,;1,表鎖定,,0,表解鎖,.size,是鎖定或解鎖的字節(jié)數(shù),,,為,0,,表示從文件的當(dāng)前位置到文件尾,.,5,、參考程序(例,1,),#include,,#include,,#include,,void waiting (),stop();,,int w

7、ait_mark;,,main(),,{,,int p1,p2,stdout;,,signal(SIGINT,stop); /*,接收到,^c,信號,,,轉(zhuǎn),stop*/,,while((p1=fork())==-1); /*,創(chuàng)建子進程,P1*/,,if(p1>0),,{,,while((p2=fork())==-1); /*,創(chuàng)建子進程,p2*/,,if(p2>0),,{,,wait_mark=1;,,sleep(5); /*,接收到,^c,信號,,,轉(zhuǎn),stop*/,,waiting();,kill(p1,16); /*,向,p1,發(fā)軟中斷信號,16*/,,kill(p

8、2,17); /*,向,p2,發(fā)軟中斷信號,17*/,,wait(0); /*,同步*,/,,wait(0);,,printf("parent process is killed!\n");,,exit(0);,,},,,else,,{,,wait_mark=1;,,signal(17,stop); /*,接收到軟中斷信號,17,,轉(zhuǎn),stop*/,,waiting();,,lockf(stdout,1,0);,,printf("child process 2 is killed by parent!\n");,,lockf(stdout,0,0);,,exit(0);,

9、,},,},else,,{,,wait_mark=1;,,signal(16,stop); /*,接收到軟中斷信號,16,,轉(zhuǎn),stop*/,,waiting();,,lockf(stdout,1,0);,,printf("child process 1 is killed by parent!\n");,,lockf(stdout,0,0);,,exit(0);,,},,},,void waiting(),,{ while (wait_mark!=0); },,void stop(),,{ wait_mark=0; },另一個信號機構(gòu)方法的例子:(例,2,),#include

10、,,#include,,main(),,{int status;,,pid_t pid;,,void func();,,signal(SIGUSR1,func);,,If(pid=fork()),,{ printf("parent:will send signal.\n");,,kill(pid,SIGUSR1);,,wait(,,printf(“status=%d: parent finished.\n“,status);},,else,,{sleep(10);,,printf("child :signal is received.\n");,,exit(0);},,},,void func(),,{printf(“it is signal processing function.\n");},,,,,問:此例屏幕上顯示的結(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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!