• BPnet
  • ビジネス
  • IT
  • テクノロジー
  • 医療
  • 建設・不動産
  • TRENDY
  • WOMAN
  • ショッピング
  • 転職
  • ナショジオ
  • 日経電子版
  • PR

  • PR

  • PR

  • PR

  • PR

Linuxキーワード

シグナル

Signal

麻生 二郎=日経Linux 2007/02/12 日経Linux
図1 シグナル・ハンドラの動作。ある処理を割り込ませたい場合,カーネルがシグナルを発生させます。シグナルが発生すると実行中のプロセスが中断され,特定の処理が実行されます。
図1 シグナル・ハンドラの動作。ある処理を割り込ませたい場合,カーネルがシグナルを発生させます。シグナルが発生すると実行中のプロセスが中断され,特定の処理が実行されます。
[画像のクリックで拡大表示]

 シグナルは,プロセス間で連絡を取り合うための仕組みです。実行中のプロセスの処理をいったん止めて,別のプロセスを処理したい場合などに用いられます。シグナルは,Linuxカーネルに実装されています。

 シグナルは,キーボードからの割り込み「SIGINT」や浮動小数点例外「SIGFPE」,プロセスの終了「SIGTERM」など,30種類以上が用意されています。ちなみにこれらのシグナルは,プログラム(プロセス)自身の動作によって発生する「同期シグナル」,外的な要因で発生する「非同期シグナル」の2種類に分けられています。

 シグナルの具体的な動作は,次のようになります。あるプロセスの実行中に処理を割り込ませたい場合,カーネルがシグナルを発生させます。シグナルが発生すると実行中のプロセスが中断され,特定の処理が実行されます(図1)。

 この特定の処理を「シグナル・ハンドラ」と呼びます。シグナルは突然発生するものですから,発生するシグナルごとに実行したい処理を,あらかじめシグナル・ハンドラとして登録しておきます。

あなたにお薦め

連載新着

連載目次を見る

今のおすすめ記事

  • 【Apple Pay最新事情】

    NFC開放から占うApple Payの未来

     WWDC17におけるApple Payの最大の話題は、新機能「個人間(P2P)送金」の提供だった。一方でiOSエコノミーの開発者らの間では、iOS 11で初めて「NFC(Near Field Communication)」機能の開放が行われて大きな話題になっている。

ITpro SPECIALPR

What’s New!

経営

アプリケーション/DB/ミドルウエア

設計/開発

サーバー/ストレージ

ネットワーク/通信サービス

セキュリティ

もっと見る