reboot 子例程

用途

重新启动系统。

标准 C 库 (libc.a)

语法

include <sys/reboot.h>

void reboot ( HowTo,Argument)
int HowTo;
void * Argument;

描述

reboot 子例程重新启动或重新初始程序装入 (IPL) 系统。 启动是自动的,并在正常的非维护方式下启动 /unix

注: 当在调用 32 位内核接口的 64 位应用程序中传递无效指针时,例程可能会执行 coredump 而不是返回 Efault。

为了成功运行此子例程,调用进程必须具有 root 用户权限。

注意: reboot 子例程的用户不可移植。 reboot 子例程仅供 haltrebootshutdown 命令使用。

参数

表 1. 参数
描述
HowTo 指定下列其中一个值:
RB_SOFTIPL
软 IPL。
RB_HALT
停止操作员; 将电源关闭。
RB_POWIPL
停止操作员; 将电源关闭。 请等待指定的时间长度,然后开启电源。
argument 指定在关闭电源和打开电源之间要等待的时间量 (以秒计)。 并非所有模型都支持此选项。 有关更多详细信息,请查阅您的硬件技术参考。

返回值

成功完成时, reboot 子例程不会返回值。 如果 reboot 子程序失败,将返回 -1 值,并设置 errno 全局变量来指示错误。

错误代码

如果下列任何一项为 true ,那么 reboot 子例程将失败:

表 2。 错误代码
描述
EPERM 调用过程不具有 root 用户权限。
EINVAL HowTo 值无效。
EFAULT 参数 不是有效的地址。