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