Цореллиум најављује свој порт за Линук на М1 чипове

Корелијум је објавио верзију Линукса прилагођену за рад на новим Епл рачунарима опремљеним М1 чипом . Варијанта Линукс језгра компатибилна са Епл М1 чипом објављена је под ГПЛв2 лиценцом, а закрпе су послате за укључивање у главно језгро.

Корелијум има богато искуство у миграцији Линукса на Епл чипове који се користе у мобилним уређајима попут Ајфона. У почетној фази миграције, тестери су били охрабрени да сазнају да су многе компоненте Епл М1 засноване на технологијама које Епл већ користи у другим SoC-овима.

Али током процеса развоја драјвера, постало је јасно да ствари нису тако једноставне и да Apple M1 чип укључује многа нестандардна решења. Linux подршка за 64-битне ARM SoC-ове ослања се на уобичајене градивне блокове и интерфејсе фирмвера, али Apple M1 готово да не користи типична решења.

На пример, код конвенционалних ARM SoC-ова, активација CPU језгра се врши путем PSCI (Power State Coordination Interface) који обезбеђује фирмвер, а код Apple M1 то захтева манипулацију MMIO регистром.

У овој фази, програмери Корелијума су претекли пројекат Асахи Линукс , који је основао Ектор Мартин како би портовао Линукс на системе са Apple M1 чипом, што је до сада било ограничено на обрнути инжењеринг и експериментисање са бутлоудером. Међутим, кључни циљ Асахи Линукса није само покретање Линукса, већ и пружање пуне подршке за механизме управљања напајањем и коришћење могућности Apple M1 графичког процесора, који користи специфичан скуп инструкција.

Корелијумове закрпе су ограничене на пружање подршке за покретање система и специфичне функције М1 чипа везане за SMP режим, тајмере, прекиде, руковање стањем мировања и иницијализацију.

Представници компаније Asahi Linux поздравили су објављивање закрпа за Corellium и изразили спремност да пруже помоћ у рецензији како би се убрзало усвајање Linux језгра од стране широке јавности.

Поред тога, речено је да је Алисса Росензвеиг (из Цоллабора која развија управљачки програм Панфрост ГПУ Мали) објавила други извештај о обрнутом инжењерингу и развоју управљачких програма отвореног кода за Аппле М1 ГПУ.

У тренутној фази припремљен је почетни прототип контролера који може да црта троуглове помоћу ГПУ-а. За М1 ГПУ-ови, први вертексни и фрагментарни сензори су такође ручно кодирани. Управљачки програм језгра ИОКит користи се за интеракцију са ГПУ-ом.

Apple M1 такође користи сопствени Apple Interrupt Controller (AIC), који је углавном некомпатибилан са стандардним ARM GIC-овима , и другачији механизам за повезивање прекида са тајмером. Штавише, одвојени регистри који контролишу IPI (интерпроцесорске прекиде) користе се за управљање интеракцијом између више процесора.

За покретање система на Mac Mini M1 рачунару са Apple M1 чипом, припремљена је rootfs слика спремна за употребу , изграђена на основу Ubuntu верзије за Raspberry Pi.

Да бисте инсталирали, копирајте слику на УСБ диск, повежите диск са УСБ-Ц портом и покрените рачунар у 1TR режим (опоравак ОС-а) тако што ћете држати притиснуто дугме за напајање током покретања. Када се појави командна линија, покрените скрипту linuxsetup.sh, која ће инсталирати језгро и конфигурисати окружење.

Тада ће Linux почети да ради, док да бисте вратили macOS, морате покренути команду „bputil -n“ у 1TR режиму.

Реади буилд подржава УСБ, И2Ц и ДАРТ, препоручује се коришћење спољног УСБ адаптера за мрежу, док графичко хардверско убрзање и проширена периферна опрема још нису подржани. Подршка за Блуетоотх захтева писање новог управљачког програма због употребе нестандардног протокола заснованог на ПЦИе.

Извор: https://corellium.com


Додај као жељени извор на Гуглу