Работа с Apple Silicon - довольно сложная задача для разработчиков, в частности тех, кто пытается перенести Linux для работы на чипе M1. При этом Apple использует специально настроенный процесс для загрузки Mac, который отличается от версий, используемых в других 64-битных системах ARM.
Представляя разработчикам Apple Silicon, Apple оказала помощь разработчикам в переносе их, совместимых с Intel, приложений на M1. Для разработчиков, выполняющих более амбициозные задачи, таких как перенос Linux на Apple Silicon, задача оказалась во много раз сложнее.
В блоге проекта Asahi Linux, его команда обсуждает свои попытки настроить альтернативное загрузочное ядро в системах Apple Silicon. Хотя большая часть этой функции была реализована, отсутствие поддержки команды, которая позволяет установить ядро, отличное от Apple, привело к попытке задокументировать недокументированную систему.
Основное препятствие заключалось в том, что Apple Silicon загружается иначе, чем ПК, и работает "более похоже на встроенные платформы", такие как устройства Android или iOS. Существуют различия и используется "несколько специальных механизмов", хотя Apple, очевидно, сделала процесс загрузки "ближе" к Intel Mac.
Эти различия приводят к некоторым неожиданным действиям, например к тому, как Apple Silicon Mac обрабатывает загрузку с внешнего хранилища. Также было обнаружено, что загрузчик не может отображать графический пользовательский интерфейс и что "Средство выбора загрузки" является "полноэкранным приложением macOS, а не частью загрузчика".
Разработчики считают, что процесс загрузки "не основан на каком-либо существующем стандарте" и вместо этого использует "специальный механизм Apple, который медленно развивался с первых дней iOS".
DeviceTree было выбрано для использования в процессе загрузки, отчасти потому, что оно похоже на Apple Device Tree, которое использует Apple Silicon. И дерево устройств Apple, и открытый стандарт DeviceTree основаны на спецификации Open Firmware, которая использовалась для загрузки старых компьютеров Mac PowerPC.
Однако разница в двоичном формате, который не может быть легко преобразован автоматически без подробных сведений о том, что представляют собой данные, является препятствием для проекта. "Попытка объединить идеи Apple и Linux о том, как должны работать деревья устройств, была бы кошмаром", - утверждает команда проекта.
Иван Ковалев
VIAТехнологии развиваются с неимоверной скоростью, поэтому выбор между ноутбуком и стационарным ПК становится всё более
Недавний полный запрет YouTube на блокировщики рекламы сегодня является горячей темой для дискуссий. Но что, если вы
Сертификат должна иметь каждая организация, которая так или иначе обрабатывает платежные карты своих клиентов, даже