0
我正在开发一个将大量OS-9(微波)代码移植到linux的项目。移植OS-9信号处理程序
OS-9中的信号处理功能允许您创建自己的信号,或者至少它是如何实现的(intercept()函数)。我并不十分了解Linux信号,并且一直在努力教自己。我有一个sigusr1工作的sigaction路线,只是为了让自己熟悉。在传统的OS-9代码中,有10个用户定义的信号。什么是最好的方式来完成这个在Linux?
OS-9信号处理程序是一个带有大开关语句的函数。每个信号都对应(设置)一个全局变量,该变量在该进程代码中的其他位置执行。
感谢, 赛斯
您也可以使用'sigqueue()'将不同的语义复用到'SIGUSR1'这样的信号上,通过使用提供的整数来区分它们。 – caf 2011-12-27 12:04:17
谢谢,这似乎工作。但-1(表示整个群体的信号)看起来并不像kill这样工作,除非我有一些进程组设置错误。 – Seth 2011-12-28 17:29:30