Демонстрирано лансирање на Linux околина со GNOME на уреди со Apple M1 чип

Иницијативата за имплементирање на поддршка за Linux за чипот Apple M1, промовирана од проектите Asahi Linux и Corellium, достигна точка каде што е можно да се стартува работната површина на GNOME во околина на Linux што работи на систем со чипот Apple M1. Излезот на екранот е организиран со помош на бафер за рамка, а поддршката за OpenGL е обезбедена со помош на растеризерот на софтверот LLVMPipe. Следниот чекор ќе биде да му овозможите на копроцесорот на екранот да емитува резолуција до 4K, двигателите за кои се веќе изработени обратно.

Проектот Asahi постигна почетна поддршка за компонентите на M1 SoC кои не се GPU во главниот кернел на Linux. Во демонстрираната околина на Linux, покрај можностите на стандардното јадро, користени се неколку дополнителни закрпи поврзани со PCIe, pinctrl драјверот за внатрешната магистрала и двигателот на дисплејот. Овие додатоци овозможија да се обезбеди излез на екранот и да се постигне USB и Ethernet функционалност. Графичкото забрзување сè уште не се користи.

Интересно е тоа што за обратен инженеринг на M1 SoC, проектот Asahi, наместо да се обидува да ги расклопи двигателите на macOS, имплементираше хипервизор кој работи на ниво помеѓу macOS и чипот M1 и транспарентно ги пресретнува и ги евидентира сите операции на чипот. Една од карактеристиките на SoC M1 што го отежнува имплементирањето на поддршката за чипот во оперативните системи од трети страни е додавањето на копроцесор на контролерот на екранот (DCP). Половина од функционалноста на двигателот на екранот macOS се пренесува на страната на наведениот копроцесор, кој ги повикува готовите функции на копроцесорот преку посебен RPC интерфејс.

Ентузијастите веќе анализираа доволно повици до овој RPC интерфејс за да го користат копроцесорот за излез на екранот, како и да го контролираат курсорот на хардверот и да вршат операции за композитирање и скалирање. Проблемот е што интерфејсот RPC зависи од фирмверот и се менува со секоја верзија на macOS, па така Asahi Linux планира да поддржува само одредени верзии на фирмверот. Пред сè, ќе се обезбеди поддршка за фирмверот испорачан со macOS 12 „Monterey“. Не е можно да се преземе потребната верзија на фирмверот, бидејќи фирмверот се инсталира од iBoot на сцената пред да се пренесе контролата на оперативниот систем и со верификација со помош на дигитален потпис.

Демонстрирано лансирање на Linux околина со GNOME на уреди со Apple M1 чип
Демонстрирано лансирање на Linux околина со GNOME на уреди со Apple M1 чип


Извор: opennet.ru

Додадете коментар