Linuxカーネルに関する技術情報を集めていくプロジェクトです。現在、Linuxカーネル2.6解読室の第2章までを公開中。
Linuxシステムは、rebootシステムコールによりシステムを停止させることができる(sys_reboot関数)。システム停止時もしくはリブート処理時には、各種デバイスドライバの終了処理ルーチンが呼び出される(notifier_call_chain関数)。終了処理の必要なデバイスは、デバイスドライバの初期化時に register_reboot_notifier関数を利用してドライバ終了処理ルーチンを登録しておく。
sys_reboot() switch (コマンド) case システム停止: ドライバ終了処理(notifier_call_chain関数) システム停止(machine_halt関数) case システム電源断: ドライバ終了処理(notifier_call_chain関数) システム停止(machine_power_off関数) case システム再起動: ドライバ終了処理(notifier_call_chain関数) システム再起動(machine_restart関数)
システム再起動要求では、再起動時に実行するコマンドを指定することも可能。
また、CTL+ALT+DELのキー押鍵によってもreboot(再起動)と同様の動作を行う仕組み(ctrl_alt_del関数)も提供している。
(NIS)HirokazuTakahashi
2000年06月11日 (日) 22時29分57秒 JST1
[PageInfo]
LastUpdate: 2008-08-27 14:45:23, ModifiedBy: hiromichi-m
[Permissions]
view:all, edit:login users, delete/config:members