यह ब्लॉग पोस्ट M4 Mac mini पर Linux बूट करने की लेखक की यात्रा का विवरण देता है, Asahi Linux टीम को धन्यवाद देता है और दान को प्रोत्साहित करता है। नवंबर 2024 में, लेखक ने एक M4 Mac mini खरीदा, उम्मीद करते हुए कि यह पहले के Apple Silicon मॉडल के समान होगा। हालांकि, M4 पहली पीढ़ी है जो SPT M (सिक्योर पेज टेबल मॉनिटर) को अनिवार्य करती है, जो XNU कर्नेल कमजोरियों के खिलाफ सुरक्षा प्रदान करती है, जिसके लिए m1n1 हाइपरवाइजर में बड़े बदलावों की आवश्यकता होती है।
चुनौतियों के बावजूद, लेखक ने सख्त बूट सुरक्षा को अक्षम करके और macOS रिकवरी के माध्यम से m1n1 स्थापित करके Linux बूट करने का प्रयास किया। प्रारंभिक क्रैश को अक्षम/लॉक GXF कार्यक्षमता और RVBAR (रीसेट वेक्टर बेस एड्रेस रजिस्टर) में ट्रैक किया गया, जिसमें पहले से ही सही मान था, इसलिए लेखन को छोड़ दिया गया। लंबे विराम के बाद, 2025 के अंत में Chaos Communication Congress में प्रेरणा वापस आई।
लेखक ने एक न्यूनतम डिवाइस ट्री बनाया और earlycon पैरामीटर के साथ Linux कर्नेल लोड किया, लेकिन "Vectoring to next stage" के बाद कोई आउटपुट नहीं देखा। 'a' प्रिंट करने वाली ब्रूट-फोर्स असेंबली रूटीन का उपयोग करके, उन्होंने बूट कोड को MMU इनिशियलाइज़ेशन तक बाइसेक्ट किया। समस्या यह थी कि एक बार MMU सक्षम होने के बाद, मेमोरी एक्सेस वर्चुअल एड्रेस पर जाती है, लेकिन Linux m1n1 की तरह UART के MMIO स्पेस को मैप नहीं करता है, इसलिए UART दुर्गम हो गया।
स्रोत: Hacker News · HeadlinesBriefing द्वारा सारांशित