①:了解linux软中断(Signal)的工作原理 ②:在Linux上使用C语言编写一个包含信号处理机制的程序,该程序中可以安装自己的信号处理程序;再此基础上发送一个对应的信号,验证自己安装的信号处理程序
2022-12-05 11:02:59 316KB 操作系统 linux软中断
1
内含代码,代码可执行 1) 编制实现软中断通信的程序 使用系统调用fork()创建两个子进程,再用系统调用signal()让父进程捕捉键盘上发出的中断信号(即按delete键),当父进程接收到这两个软中断的某一个后,父进程用系统调用kill()向两个子进程分别发出整数值为16和17软中断信号,子进程获得对应软中断信号,然后分别输出下列信息后终止: Child process 1 is killed by parent !! Child process 2 is killed by parent !! 父进程调用wait()函数等待两个子进程终止后,输入以下信息,结束进程执行: Parent process is killed!! 多运行几次编写的程序,简略分析出现不同结果的原因。 2) 编制实现进程的管道通信的程序 使用系统调用pipe()建立一条管道线,两个子进程分别向管道写一句话: Child process 1 is sending a message! Child process 2 is sending a message! 而父进程则从管道中读出来自于两个子进程的信息,显示在屏幕上。 要求:父进程先接收子进程P1发来的消息,然后再接收子进程P2发来的消息。
2019-12-21 20:49:31 194KB linux 软中断通信 管道通信 实验报告
1