Linux wurde auf der Spielekonsole Atari Jaguar gestartet


1

Entwickler cakehonolulu hat Linux auf die Spielkonsole Atari Jaguar portiert im Jahr 1993. Es gelang, den Linux-Kernel 7.2.0-rc1+ und eine minimale Benutzeroberfläche auf der Basis von BusyBox zu laden, und zwar nicht nur im Emulator, sondern auch auf echter Hardware über Cartridge.

Die Aufgabe war aufgrund der Architektur des Jaguar nicht trivial. Die Konsole hat nur 2 MB RAM, bis zu 6 MB ROM auf der Cartridge und einen Hauptprozessor Motorola 68000 ohne MMU. Für solch eine Hardware eignet sich das übliche Verfahren zum Booten von Linux nicht, deshalb verwendete der Entwickler den NOMMU-Modus für m68k/uClinux und ein flaches Speicherabbild..

Um den Kernel innerhalb der Einschränkungen der Konsole unterzubringen, wurde er zwischen RAM und Cartridge aufgeteilt: Unveränderliche Sektionen wie .text und .rodata werden direkt aus ROM gemäß dem XIP-Schema ausgeführt, während veränderbare .data und .bss im RAM platziert werden. Für die frühe Ausgabe von Nachrichten wurde der DSP-Chip Jerry verwendet, der serielle Linien TXD/RXD und Timer hat. Später fügte der Entwickler einen einfachen Konsolentreiber für den Chip Tom hinzu, damit die Ausgabe auch auf der echten Konsole funktionierte. Diese Einzelheiten sind im Abschnitt über die Anforderungen an Linux für das Booten auf dem Jaguar beschrieben..

Die Benutzerumgebung musste stark reduziert werden. Aufgrund des Fehlens eines MMU wurden keine ELF-Dateien verwendet, sondern FLAT-Binärdateien; BusyBox wird direkt als Shell gestartet, ohne die Standardinstallation von Applet-Links, da dies zu einem Speichermangel führte. Zudem war eine Konfiguration von uClibc über Buildroot erforderlich, einschließlich einer einfacheren Speicherzuweisungsstrategie malloc-simple; weitere Details dazu sind im Abschnitt angegeben Benutzerraum.

Der praktische Nutzen eines solchen Ports ist nahezu nicht vorhanden: Der Atari Jaguar wird nicht zu einem benutzerfreundlichen Linux-Computer. Das Experiment zeigt jedoch gut, wie weit die Unterstützung für alte Hardware in Linux gedehnt werden kann und wie langlebig die m68k-Architektur bleibt. Der Quellcode des modifizierten Kerns wurde im Repository veröffentlicht cakehonolulu/linux_jag.

Quelle: linux.org.ru

Купить надежный хостинг для сайтов с защитой от DDoS, VPS VDS серверы 🔥 Купить надежный хостинг для сайтов с защитой от DDoS, VPS VDS серверы | ProHoster