Продемонстрирован запуск Linux-окружения с GNOME на устройствах с чипом Apple M1

23 августа 2021 года

Инициатива по реализации поддержки в Linux чипа Apple M1, продвигаемая проектами Asahi Linux и Corellium, достигла уровня, при котором стал возможен запуск рабочего стола GNOME в Linux-окружении, запущенном на системе с чипом Apple M1. Вывод на экран организован при помощи framebuffer, а поддержка OpenGL обеспечена при помощи программного растеризатора LLVMPipe. Следующим шагом станет задействование дисплейного сопроцессора для вывода с разрешением до 4K, обратный инжинириг драйверов для которого уже проведён.

Проект Asahi уже добился включения в основной состав ядра Linux начальной поддержки компонентов SoC M1, не связанных с GPU. В продемонстрированном Linux-окружении помимо возможностей штатного ядра использовано несколько дополнительных патчей, связанных с PCIe, драйвером pinctrl для внутренней шины и дисплейным драйвером. Указанных дополнения позволили обеспечить вывод на экран и добиться работы USB и Ethernet. Ускорение графики пока не используется.

Интересно, что для обратного инжинигинга SoC M1 проект Asahi вместо попыток дизассемблирования драйверов macOS реализовал гипервизор, выполняемый на уровне между macOS и чипом M1 и в прозрачном режиме перехватывающий и журналирующий все операции с чипом. Из особенностей SoC M1, затрудняющих реализацию поддержки чипа в сторонних ОС, упоминается добавление сопроцессора в дисплейный контроллер (DCP). На сторону указанного сопроцессора вынесена половина функциональности дисплейного драйвера macOS, который вызывает готовые функции сопроцессора через специальный RPC-интерфейс.

Энтузиасты уже разобрали достаточно вызовов данного RPC-интерфейса, для того чтобы задействовать сопроцессор для вывода на экран, а также для управления аппаратным курсором и выполнения операций композитинга и масштабирования. Проблема состоит в том, что RPC-интерфейс зависит от прошивки и меняется в каждой версии macOS, поэтому в Asahi Linux планируется реализовать поддержку только определённых версий прошивок. В первую очередь будет обеспечена поддержка прошивки, поставляемой в macOS 12 "Monterey". Загрузить нужный вариант прошивки не представляется возможным, так как прошивку устанавливает iBoot на стадии до передачи управления операционной системе и с верификацией по цифровой подписи.

Источники править


 
 
Creative Commons
Эта статья содержит материалы из статьи «Продемонстрирован запуск Linux-окружения с GNOME на устройствах с чипом Apple M1», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.