REBOOT(2) — UNIX Programmer’s Manual
名称
reboot − システムをリブートするまたはプロセッサを停止する
形式
#include <sys/reboot.h>
reboot(howto)
int howto;
解説
reboot は、システムをリブートします。 これは、回復不可能なシステム障害が発生した場合に自動的に呼び出されます。 howto は、ブートストラッププログラムへ渡されるオプションマスクです。 このシステムコールインタフェースは、 RB_HALT あるいは、RB_AUTOBOOT、RB_PWOFF、RB_IOPASKNAME のいづれかを リブートプログラムへ渡すことができます。 他のフラグは、手動ブートストラップの際に使用されます。 これらのオプションのいずれ(例えば、RB_AUTOBOOT)も与えられない場合には、 プロセッサに固有の方法で選択されたディスクのユニット 0 の ルートファイルシステムにあるファイル“vmunix”からシステムが リブートされます。また、I/O プロセッサを使っているシステムでは “rtx” または “iopboot” も使用されます。 リブートが完了すると、通常ディスクの一貫性チェックが自動的に行われます。
howto のビットは、次のとおりです。
RB_HALT
プロセッサが停止されるだけで、 リブートは行われません。 RB_HALT を 使用する場合には注意を 要します。
RB_ASKNAME
このビットは、ブートストラッププログラム自体によって解釈され、 ブートストラッププログラムに、どのファイルをブートするのかを 問い合わせるようにさせます。 システムは、 通常、問い合わせなしで、 ファイル“xx(0,0)vmunix”からブートされます。
RB_SINGLE
通常、 リブート手順には、 自動的なディスクの一貫性チェックと、 それに続くマルチユーザオペレーションも含まれます。 RB_SINGLE は、一貫性チェックを抑制し、コンソールでシングルユーザシェルを 用いてシステムを単にリブートします。 RB_SINGLE は、新たにブートされるシステムにある init (8) プログラムによって解釈されます。 このスイッチは、システムコールインタフェースでは使用することはできません。
RB_PWOFF
システムを全て停止し、電源を切ります。
RB_IOPASKNAME
どの iop ブートのプログラムを使うかを指定します。 通常は "xx(0,0,0)iopboot" か "xxx(0,0,0)rtx" がそのままブートされます。
スーパーユーザだけが、 マシンを reboot することができます。
リターン値
成功した場合、 このコールはリターンしません。 失敗した場合には、 −1 が返され、 エラーがグローバル変数 errno 内に返されます。
エラー
[EPERM] 呼び出しユーザがスーパーユーザではない。
関連事項
crash(8), halt(8), init(8), reboot(8)
NEWS-OSRelease 3.3