Linuxi käivitamine mängukonsoolil Atari Jaguar


1

Arendaja cakehonolulu portis Linuxi mängukonsoolile Atari Jaguar aastal 1993. Konsoolis õnnestus käivitada Linuxi kernel 7.2.0-rc1+ ja minimaalne kasutajakeskkond BusyBoxi baasil, mis tähendab, et tegemist ei ole mitte ainult emulaatoriga, vaid ka reaalse riistvara käivitamisega läbi kasseti.

Ülesanne ei olnud triviaalne Jaguar'i arhitektuuri tõttu. Konsoolil on ainult 2 MB RAM-i, kuni 6 MB ROM-i kassettidel ja peamine protsessor Motorola 68000 ilma MMU-ta. Sellise riistvara jaoks ei sobi tavaline Linuxi käivitamise skeem, seetõttu kasutas arendaja NOMMU-režiimi m68k/uClinux jaoks ja tasane mälu mudel.

Kuna kernel tuli kohandada konsooli piirangutega, jagati see mälu ja kassetti vahel: muutumatud seksioonid, nagu .text ja .rodata, töötavad otse ROM-ilt XIP skeemi kaudu, samas kui muudetavad .data ja .bss asetatakse RAM-i. Varajase teabe vajalikkuse jaoks kasutati DSP-kiipi Jerry, millel on järjestikku TXD/RXD ja ajastid, ning hiljem lisas arendaja lihtsa konsooli draiveri Tom kiibile, et väljund toimiks ka reaalses konsoolis. Need detailid on kirjeldatud osas mis on vajalik Linuxi laadimiseks Jaguar'i peal.

Kasutajakeskkond oli maksimaalselt kärbitud. MMU puudumise tõttu kasutatakse ELF-failide asemel FLAT-binaare; BusyBox käivitatakse otse shellina, ilma standardse applet-linkide komplekti paigaldamiseta, kuna see põhjustas mälu puudujäägi. Samuti oli vajalik uClibc seadistamine Buildrooti kaudu, sealhulgas lihtsam memory allocation strateegia malloc-simple; rohkem selle kohta on käsitletud osas Userspace.

Sellest portimisest on praktilist kasu peaaegu pole: Atari Jaguar ei muutu mugavaks Linuxi arvutiks. Siiski näitab eksperiment hästi, kui kaugele on võimalik toetada vana riistvara Linuxis ja kui elujõuline jääb m68k arhitektuur. Muudetud kerneli lähtekood on avaldatud hoidlas cakehonolulu/linux_jag.

Allikas: linux.org.ru

Osta usaldusväärne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster