版權所有 © 2014 tutorialspoint
#include <unistd.h> #include <linux/reboot.h>
int reboot(int magic, int magic2, int flag, void *arg);
在glibc下,一些相關的常量獲得了符號名稱RB_*,庫呼叫是圍繞3引數系統呼叫的1引數包裝器。
#include <unistd.h> #include <sys/reboot.h>
int reboot(int flag);
除非magic等於LINUX_REBOOT_MAGIC1(即0xfee1dead)並且magic2等於LINUX_REBOOT_MAGIC2(即672274793),否則此係統呼叫將失敗(返回EINVAL)。但是,從2.1.17開始,LINUX_REBOOT_MAGIC2A(即85072278)也被允許作為magic2的值,從2.1.97開始,LINUX_REBOOT_MAGIC2B(即369367448)也被允許,從2.5.71開始,LINUX_REBOOT_MAGIC2C(即537993216)也被允許。(這些常量的十六進位制值是有意義的。)flag引數可以具有以下值:
上述操作的精確效果取決於體系結構。對於i386體系結構,附加引數目前沒有任何作用(2.1.122),但是重啟型別可以透過核心命令列引數('reboot=...')確定為熱重啟或冷重啟,以及硬重啟或透過BIOS重啟。
sync (2)
ctrlaltdel (8)
halt (8)
reboot (8)
廣告