このページを編集する際は、編集に関する方針に従ってください。

概要

  • linux2.6/include/asm-i386/signal.hにて定義
  • 引数で渡されたシグナルマスクの引数で渡されたシグナル番号に該当するビットをクリアする

引数

  • set--現在マスクしているシグナルを表す
    • シグナルマスクはプロセスごとに定義される
    • sigset_t/linux2.6を参照
  • _sig--シグナル番号
    シグナル名シグナル番号デフォルトの動作意味
    SIGHUP1終了ターミナル切断
    SIGINT2終了端末からの割り込み(通常Ctrl+Cキー)
    SIGQUIT3コアダンプ端末からのコアダンプ終了要求
    SIGILL4コアダンプ不正な命令例外
    SIGTRAP5コアダンプブレークポイント
    SIGABRT6コアダンプアボートシグナル
    SIGIOT6コアダンプアボートシグナル
    SIGBUS7コアダンプバスエラー
    SIGFPE8コアダンプ浮動小数点例外
    SIGKILL9終了強制終了
    SIGUSR110終了ユーザ定義1
    SIGSEGV11コアダンプ不正なメモリ参照
    SIGUSR212終了ユーザ定義2
    SIGPIPE13終了読み手のいないパイプへの書き込み
    SIGALRM14終了タイマー通知
    SIGTERM15終了プロセス終了要求
    SIGSTKFLT16終了コプロセッサのスタックエラー
    SIGCHLD17無視子プロセスの停止/終了通知
    SIGCONT18継続停止状態からの実行再開通知
    SIGSTOP19停止プロセスの実行停止
    SIGTSTP20停止端末からのプロセス実行停止要求(通常Ctrl+Zキー)
    SIGTTIN21停止バックグラウンドプロセスの端末読み込み
    SIGTTOU22停止バックグラウンドプロセスの端末出力
    SIGURG23無視ソケット緊急状態
    SIGXCPU24コアダンプCPU使用時間が制限を超えた
    SIGXFSZ25コアダンプファイルサイズの制限を超えた
    SIGVTALRM26終了仮想アラームクロック
    SIGPROF27終了プロファイルタイマクロック
    SIGWINCH28無視ウィンドウサイズ変更
    SIGIO29終了非同期I/O
    SIGPOLLSIGIO終了非同期I/O
    SIGPWR30終了電源異常
    SIGSYS31コアダンプ不正なシステムコール
    SIGUNUSED31コアダンプ不正なシステムコール
    SIGRTMIN〜SIGRTMAX32〜64終了リアルタイムシグナル

実装

static __inline__ void sigdelset(sigset_t *set, int _sig) {

	__asm__("btrl %1,%0" : "=m"(*set) : "Ir"(_sig - 1) : "cc");
  • %0--(出力)set
  • %1--(入力)_sig-1
  • btrl命令はビットストリングsetの(_sig-1)ビット位置の値をCFにストアし、その後、その(_sig-1)ビット位置をクリアする

}

呼出元


履歴

  • 作者:ひら
  • 日付:2005/12/6
  • 対象:2.6.10
    更新日更新者更新内容

コメント



トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2009-11-24 (火) 07:18:33 (2945d)