SGETMASK(2) | Linux Programmer's Manual | SGETMASK(2) |
名前¶
sgetmask, ssetmask - シグナルマスクの操作 (廃止予定)
書式¶
long sgetmask(void);
long ssetmask(long newmask);
注: これらのシステムコールには、glibc のラッパー関数はない。「注意」の節を参照。
説明¶
これらのシステムコールは廃止予定であり、 「使用しないこと」。 代わりに sigprocmask(2) を使用すること。
sgetmask() は、呼び出し元プロセスのシグナルマスクを返す。
ssetmask() は、呼び出し元プロセスのシグナルマスクを newmask で指定された値に設定し、変更前のシグナルマスクを返す。
これら二つのシステムコールが扱うシグナルマスクは、 単純なビットマスクである (この点が sigprocmask(2) で使用される sigset_t と異なる)。 これらのマスクを作成したり検査するには sigmask(3) を使用すること。
返り値¶
sgetmask() は常に成功し、シグナルマスクを返す。 ssetmask() は常に成功し、直前のシグナルマスクを返す。
エラー¶
これらのシステムコールは常に成功する。
バージョン¶
Linux 3.16 以降では、これらのシステムコールのサポートは任意となり、利用できるかはカーネルが CONFIG_SGETMASK_SYSCALL オプションを有効にしてコンパイルされているかに依存する。
準拠¶
これらのシステムコールは Linux 固有である。
注意¶
glibc はこれらの古いシステムコールに対するラッパー関数を提供していない。 あまりないと思うが、これらを呼び出したい場合には syscall(2) を使うこと。
これらのシステムコールは、 31 より大きいシグナル番号 (つまり、リアルタイムシグナル) を扱えない。
これらのシステムコールは x86-64 には存在しない。
SIGSTOP や SIGKILL をブロックすることはできない。
関連項目¶
この文書について¶
この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。
2020-08-13 | Linux |