linux重启的神奇数字的目的是什么?

在Linus Torvalds的*页面上,它声明:

Linux内核的重启系统调用接受它们的出生日期(用十六进制表示)作为魔术值’.

Linux重启功能的文档显示它需要两个魔术数字,’magic’和’magic2’也重启.

这些神奇数字的目的是什么?没有它们,为什么功能无法运行?

谢谢

解决方法:

快速谷歌你的问题得出答案;

http://www.eeggs.com/items/44291.html

为了防止reboot()系统调用正在进行
无意中调用,你必须在前两个参数中传递一对魔术值.第一个魔术值是0xfee1dead.第二个神奇的价值
是其中之一:

$grep LINUX_REBOOT_MAGIC include/linux/*.h
include/linux/reboot.h:#define LINUX_REBOOT_MAGIC1 0xfee1dead
include/linux/reboot.h:#define LINUX_REBOOT_MAGIC2 672274793
include/linux/reboot.h:#define LINUX_REBOOT_MAGIC2A 85072278
include/linux/reboot.h:#define LINUX_REBOOT_MAGIC2B 369367448
include/linux/reboot.h:#define LINUX_REBOOT_MAGIC2C 537993216

这些是对Linus重要的日期;暗示
你可以使用perl将它们转换成日期:

$perl -e 'print localtime(672274793). "\n";'

Sun Apr 21 18:59:53 1991

这是Linus第一次开始编写Linux的日期.其他日期的重要性留给读者练习;-)

上一篇:centos – 我需要在“rebo​​ot”之前停止mysql或apache等进程吗?


下一篇:Linux基本防护措施