Linux-Kernel auf Nintendo 64 portiert
Zusammenfassung
Am ersten Weihnachtstag 2020 kündigte Lauri Kasanen, der zuvor an Mesa und am Linux-Grafikstack mitgearbeitet hatte, eine neue Portierung des Linux-Kernels auf die Nintendo 64 an. Es war nicht der erste Linux-Versuch auf der Konsole, aber der erste mit dem Ziel, in den offiziellen Kernel aufgenommen zu werden. Als Zweck nannte Kasanen das Portieren von Emulatoren und Spielen, vor allem aber: weil es möglich ist.
Warum das eine Herausforderung ist
Die Nintendo 64 kam 1996 auf den Markt. Ihr Prozessor ist ein NEC VR4300 mit 93,75 MHz auf MIPS-Basis, der Arbeitsspeicher umfasst 4 MB, mit der Speichererweiterung 8 MB. Ein moderner Linux-Kernel muss dafür stark verkleinert werden, und es gibt keine Festplatte, keine Tastatur und kein Netzwerk im üblichen Sinn.
Kasanen schrieb deshalb neben der Plattformunterstützung auch Treiber für Grafik, Ton und das Laufwerk der Spielmodule. Linux läuft dort nicht als bequemes Alltagssystem, sondern als Grundlage für eigene Programme, die auf vertraute Schnittstellen zurückgreifen können.
Warum solche Projekte Mehrwert haben
Portierungen auf exotische Hardware wirken wie Spielerei, zeigen aber, wie anpassungsfähig der Kernel ist. Sie decken Annahmen im Code auf, etwa über Mindestspeicher, und halten Wissen über ältere Architekturen lebendig. Außerdem sind sie für viele Entwickler ein Einstieg in die Kernelarbeit. Die Unterstützung für die Nintendo 64 wurde 2021 mit Linux 5.12 in den offiziellen Kernel aufgenommen.
Ideen
- Ein moderner Kernel lässt sich auf Hardware mit wenigen Megabyte Arbeitsspeicher verkleinern.
- Eigene Treiber für Grafik, Ton und Spielmodule machen eine Konsole zur Linux-Plattform.
- Eine Aufnahme in den offiziellen Kernel sorgt dafür, dass ein Port gepflegt wird.
Einsichten
- Spaßprojekte decken versteckte Annahmen in großen Codebasen auf.
- Ein Port in den offiziellen Kernel ist mehr Arbeit als ein einmaliger Hack, lebt dafür aber länger.
Fakten
- Die Nintendo 64 nutzt einen NEC VR4300 mit 93,75 MHz.
- Die Konsole hat 4 MB Arbeitsspeicher, mit Speichererweiterung 8 MB.
- Die Portierung wurde am 25. Dezember 2020 angekündigt.
Referenzen
Bemerkungen
- Im selben Zeitraum veröffentlichte Sony einen offiziellen Linux-Treiber für den DualSense-Controller der PlayStation 5.
Empfehlungen
- Nutze Projekte auf alter oder exotischer Hardware als Einstieg, um Kernel und Treiber zu verstehen.
- Halte bei eigenen Kernelanpassungen von Anfang an die Regeln für eine spätere Aufnahme in den Hauptzweig ein.
Links zur Originalquelle und zum Webarchiv öffnen einen neuen Tab.