Linux 重启中幻数的目的是什么?

jam*_*ina 12 linux reboot

Linus Torvalds维基百科页面上,它指出:

Linux 内核的reboot系统调用接受它们的出生日期(以十六进制表示)作为魔法值。

Linuxreboot()函数的文档显示它需要两个幻数,magic然后magic2重新启动。

谷歌搜索揭示了大量关于幻数的信息,但没有具体说明它们的目的是什么,以及为什么函数需要传递这些值才能运行。

我真的很难解决这个问题。在我看来,魔法值只是为了它而传递的。

任何信息表示赞赏...

Dan*_* D. 7

幻数是这样的,如果内存错误会翻转系统调用号中的位,从而导致重新启动系统调用的编号,则不会重新启动机器,除非内存错误也碰巧更改了幻数的参数。

虽然我没有证据可以提供,但我认为之前的解释是有道理的,如果不是真的。