代码之家  ›  专栏  ›  技术社区  ›  Kristina

使用C++调用不适当地重新启动Mac OS X?

  •  0
  • Kristina  · 技术社区  · 15 年前

    如何使用重新启动Mac OS X C++ ( 不反对C )不调用任何子进程?不管是不是 不优美的 .

    system("reboot"); //Is not acceptable as it relies on invoking a process
    
    2 回复  |  直到 15 年前
        1
  •  3
  •   Mike Seymour    15 年前

    我想不出你为什么不想创建一个新的流程,但是如果你真的不想,那么 execve("reboot",0,0) 将运行 reboot ,替换当前进程。你需要包括 <unistd.h> .

    我假设这在Mac OS上可用;它应该在所有POSIX平台上都可用。

    更新

    似乎Mac OS有一个 reboot 系统调用。 reboot(RB_AUTOBOOT); 可以做你想做的。或者它可能会弄脏你的硬盘。在尝试这样的操作系统时要非常小心。

        2
  •  0
  •   Mau    15 年前

    JMP 0xFFFF0

    -)