Linuxの再起動のマジックナンバーの目的は何ですか?


12

Linus Torvalds氏のためのWikipediaのページ、それが記載されています。

Linuxカーネルのリブートシステムコールは、生年月日(16進数で記述)をマジック値として受け入れます。

Linux reboot()関数のドキュメントには、2つのマジックナンバーが必要でmagicありmagic2、再起動することが示されています。

Googleの検索により、マジックナンバーに関する多くの情報が明らかになりますが、マジックナンバーの具体的な目的や、機能するためにこれらの値を関数に渡す必要がある理由は明確ではありません。

私はこれを解決しようと本当に苦労しています。魔法の値は、そのために単に渡されるように思えます。

どんな情報でも大歓迎です...

回答:


6

マジックナンバーは、システムコール番号のビットを反転させるメモリエラーが原因でリブートシステムコールの番号が発生するため、メモリエラーが発生してマジックナンバーの引数が変更されない限り、マシンはリブートしません。

提供する証拠はありませんが、前の説明は真実ではないにしてももっともらしいと思います。


それは理にかなっているようです、私は今、よりよく理解しています、ありがとう。
ジャンボリーナ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.