私は、OS-9(マイクロウェア)コードをLinuxに移植するプロジェクトに取り組んでいます。移植OS-9シグナルハンドラ
OS-9の信号処理機能を使用すると、独自の信号を作成したり、少なくとも実装方法(intercept()関数)を作成することができます。私はLinuxのシグナルについてはあまりよく知らないし、私が進むにつれて自分自身を教えようとしている。私はsigusr1とsigactionルートを持っているだけで、身近になれるようになっています。レガシーOS-9コードには、ユーザー定義の信号が10個あります。これをLinuxで実現するにはどうすればよいでしょうか?
OS-9シグナルハンドラは、大きなswitch文を持つ関数です。各シグナルは、そのプロセスコード内の他の場所で動作するグローバル変数に対応(設定)されます。
おかげで、 セス
また、 'sigqueue()'を使って、異なるセマンティクスを、 'SIGUSR1'のような一つのシグナルに、指定された整数を使って区別することができます。 – caf
ありがとう、それはうまくいくようです。しかし、プロセスグループの設定が間違っていないかぎり、-1(グループ全体にシグナルを送る)はkillと同じように動作しないようです。 – Seth