หมายเลขวิเศษในการรีบูท Linux คืออะไร?


12

ในหน้า Wikipedia สำหรับ Linus Torvaldsมีการระบุไว้:

การเรียกระบบรีบูตของเคอร์เนล Linux ยอมรับวันเดือนปีเกิดของพวกเขา (เขียนเป็นเลขฐานสิบหก) เป็นค่าเวทมนต์

เอกสารสำหรับreboot()ฟังก์ชั่นลีนุกซ์แสดงให้เห็นว่ามันต้องการหมายเลขเวทย์มนตร์สองเลขmagicและmagic2จะรี

การค้นหาของ Google เปิดเผยข้อมูลมากมายเกี่ยวกับตัวเลขเวทย์มนตร์ แต่ไม่เฉพาะเจาะจงว่ามันคืออะไรและทำไมฟังก์ชั่นจึงต้องส่งค่าเหล่านี้เพื่อใช้งาน

ฉันมีช่วงเวลาที่ยากลำบากในการพยายามทำสิ่งนี้ สำหรับฉันแล้วดูเหมือนว่าค่าเวทย์มนตร์จะถูกส่งผ่านเพื่อประโยชน์ของมัน

ข้อมูลใด ๆ ที่ชื่นชม ...

คำตอบ:


6

หมายเลขอาถรรพ์คือข้อผิดพลาดของหน่วยความจำที่พลิกบิตในหมายเลขการโทรของระบบซึ่งส่งผลให้หมายเลขการโทรของระบบรีบูตจะไม่รีบูตเครื่องจนกว่าข้อผิดพลาดของหน่วยความจำจะเกิดขึ้นเพื่อเปลี่ยนอาร์กิวเมนต์เป็นหมายเลขเวทย์มนตร์

แม้ว่าฉันจะไม่มีหลักฐานที่จะให้ฉันคิดว่าคำอธิบายก่อนหน้านี้เป็นไปได้ถ้าไม่เป็นความจริง


ดูเหมือนจะเข้าใจแล้วฉันเข้าใจดีขึ้นแล้วขอบคุณ
jambolina
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.