Corellium переніс Linux на Apple Silicon, дозволяючи завантажувати Ubuntu на новому Mac Mini з чіпом Apple M1.
З часів Apple випустила свої нові Mac з новими високопродуктивними чіпами ARM компанії сторонні розробники програмного забезпечення наполегливо працювали над тим, щоб альтернативні операційні системи працювали на новому обладнанні. На початку минулого місяця кілька розробників завантажено Windows 10 і Fedora Linux на M1 Mac за допомогою віртуалізації, але найбільший прорив у розробці альтернативних ОС для M1 Mac стався завдяки команді Corellium, фірми, яка спеціалізується на віртуалізації пристроїв ARM. Команді вдалося перенести Linux і зробити його «повністю придатним для використання» на M1 Mac Mini.
У дописі в блозі, Corellium розповідає, як вони перенесли Linux на нові Mac. Компанія використала свій досвід розробки проекту Sandcastle, який увімкнено завантаження Android на старих iPhone сприйнятливий до експлойту checkm8 — для написання драйверів Linux для нових процесорів Apple SoC. На щастя, Apple офіційно дозволяє завантажувати користувальницькі ядра на Apple Silicon Mac, тому немає необхідності використовувати експлойт для завантаження непідписаного ядро. Не вдаючись у дрібниці —
Повідомлення в блозі Corellium чудово справляється з цим — інтерфейси мікропрограми та процес завантаження Apple Silicon дуже відрізняються від інших 64-розрядних ARM SoC. Трохи попрацювавши, команді Corellium вдалося додати підтримку достатньої кількості апаратних інтерфейсів для завантаження Ubuntu Linux на M1 Mac Міні.Патчі, необхідні для завантаження Linux на M1 Mac, задокументовані тут, тоді як можна знайти вихідний код попереднього завантажувача, необхідного для запуску ядер процесора тут. Зміни були висунуті вгору за течією, хоча для об’єднання коду знадобиться ще багато роботи. На щастя, інші члени спільноти Linux працюють над підтримкою Linux на M1 Mac. Найбільш помітно, команда позаду краудфінансований проект Asahi Linux — який має на меті перенести Arch Linux на Apple Silicon Mac — є працює над зворотним проектуванням архітектури GPU щоб увімкнути апаратне прискорення. Щоб завантажувати Linux безпосередньо на комп’ютерах M1 Mac, ведеться робота над використанням PongoOS як завантажувач.
Якщо вам цікаво випробувати Linux на власному M1 Mac Mini, Corellium поділився інструкціями щодо завантаження Ubuntu. Ви можете знайти повні інструкції тут, але підсумовуючи, вам потрібно буде завантажити їхній живий образ (який дещо змінено з збірки ARM64 Ubuntu для Raspberry Pi), скопіюйте зображення на зовнішній USB-накопичувач (ємність якого має бути не менше 16 ГБ), підключіть USB-накопичувач до порту USB-C Mac Mini, завантажте ОС відновлення, інсталюйте спеціальне ядро (Corellium надав сценарій налаштування), а потім увійдіть, використовуючи стандартне облікові дані.
Як бачите, процес інсталяції не дуже зручний, тому новачкам не рекомендується возитися з Linux на своєму Mac Mini. Крім того, у M1 немає прискорення графічного процесора або підтримки ядер машинного навчання, тому не розраховуйте грати в ігри чи виконувати завдання ML. Тим не менш, це захоплююча новина для всіх, хто цікавиться апаратним забезпеченням ПК і Linux. Продуктивність і час автономної роботи, пропоновані Apple Silicon MacBook, не мають собі рівних, тому ці машини будуть ідеальними для програмування в дорозі. Навіть Лінус Торвальдс погоджується.