laowuz 发表于 2006-12-5 22:14:03

请教一个有关进程通信的问题

编制实现软中断通信的程序
使用系统调用fork()创建两子进程,再用系统调用signal()让父进程捕捉键盘上发出的中断信号(即按 ctrl+c键)。当父进程收到这个软中断后,父进程用kill()向两个子进程分别发送整数值为16和17的软中断信号,子进程获得对应中断信号后分别输出下列信息后终止:
Child process 1 is killed by parent !!
Child process 2 is killed by parent !!
父进程调用wai()等待两个子进程终止后,输出以下信息,结束执行:
Parent process is killed!!

我的具体方法是:用fork创建两个子进程后,总是先执行这两个新进程,所以用sleep让他们先进入睡眠状态。按ctrl+c后父进程发出两个kill,执行完自身后久结束了,而处于睡眠状态的两个子进程没有得到唤醒。
不知道有没有表述清楚,希望高人指点一下,不胜感激。
页: [1]
查看完整版本: 请教一个有关进程通信的问题