Willkommen im U-Boot und Geräte-Baum

Der hier vorgeschlagene Weg zur Nutzung eines 64-Bit-Systems besteht in der Verwendung der leistungsfähigen Bootsoftware Das U-Boot, die die Standardfirmware anstelle eines Linux-Kernels lädt. Nötig ist die 64-Bit-Version von U-Boot, die das neue Bootkommando booti kennt. Booti hilft, einen 64-Bit-ARM-Kernel zu laden, der einen spezifischen Header hat. Die Details dazu gibt es in der Kerneldokumentation. Mit diesem Header und noch anderen, von Linux festgelegten Randbedingungen muss der Bootloader entsprechend umgehen können.

Wegen der überbordenden Vielfalt: Tree of Live

Der Kernel selbst muss natürlich ebenfalls für die 64-Bit-ARMv8-Architektur übersetzt sein. Dieser wiederum benötigt einen passenden sogenannten Device Tree, also eine Datei, die die Hardwaredetails beschreibt. In viel größerem Maße als die x86-Welt ist die verfügbare ARM-Hardware unübersichtlicher und verwendet für die Peripherie-Komponenten unterschiedliche Speicher-Adressen. Während in den Anfangstagen von ARM-Linux die Entwickler für jede unterstützte Hardware einen eigenen Kernel mit den jeweils passenden Adressen programmieren und übersetzen mussten, lesen heutige Kernel beim Booten den im Hauptspeicher bereitliegenden Device Tree live ein. Treiber bringen bei ihrer Aktivierung die Speicher-Adressen über den Kernel in Erfahrung. Die Device-Tree-Unterstützung ist mittlerweile ausgereift und für ARM-Architekturen obligatorisch.

Fehlt nur noch das Root-Dateisystem samt Userland. Hier bietet Debian ein ARM64-System an, das sich beispielsweise per Debootstrap installieren lässt. Aber damit Nutzer des Raspberry Pi 3 jetzt nicht mühsam versuchen müssen, alle Teile dieses Puzzles selbst zu generieren und zusammenzustellen, lassen sich die ersten ARM64-Schritte besser mit einem vorkonfektionierten und getesteten 64-Bit-System aus dem Internet machen. Wie jenes aus dem Raspberry-Pi-Forum, das hier Verwendung findet.

Das heruntergeladene Image kann unter Linux wie gewohnt per dd auf eine Mikro-SD-Karte geschrieben werden. Wenn die SD-Karte im Raspberry Pi steckt und das System startet, erscheint auf einem angeschlossenen Monitor bereits nach wenigen Sekunden der Login. In dem vorliegenden Image ist das Passwort für den Root-Benutzer raspberry.

Tatsächlich: 64 Bit breit

Es gibt diverse Möglichkeiten, um festzustellen, dass hier ein 64-Bit-Linux läuft: dmesg beispielsweise gibt entsprechende Bootmeldungen aus. Gleich in den ersten vier Zeilen verrät Linux die Architektur. Der Befehl cat /proc/cpuinfo liefert, dass es sich um den ARMv8-Befehlssatz handelt, und uname -a zeigt an, dass der Kernel 64 Bit nutzt.

  • Die Variante für Ungeduldige: Einfach neuen Kernel kopieren und fertig.
  • Mit dem Standard Raspbian verleugnet der Mini-Rechner seine moderne Architektur und tarnt sich als 32-Bit-SoC.
  • Anders als offiziell vorgesehen, lässt sich der Raspberry Pi 3 auch als 64-Bit-System nutzen.
Anders als offiziell vorgesehen, lässt sich der Raspberry Pi 3 auch als 64-Bit-System nutzen.

Wer ganz sichergehen will, kann das auch mit einem kleinen C-Programm überprüfen. Hierfür steht auf dem Test-Minisystem als Editor vim bereit. Das kleine Programm gibt nach dem Start die Bitbreite von Zeigervariablen aus. Nur auf einem 64-Bit-System sind diese auch 64 Bit breit.

#include <stdio.h>

int main( int argc, char **argv, char **envp )
{
    printf("Es handelt sich um eine %d-Bit-Architektur\n",
        sizeof(int *)*8);
    return 0;
}

Das 64-Bit-Linux für den Raspberry Pi ist zwar abgespeckt, ansonsten aber voll funktionsfähig. Auch die Konfiguration ist rudimentär, das Netzwerk beispielsweise nicht per Default aktiviert. Das System lässt sich - falls es mit dem Netzwerk verbunden und das Netzwerk aktiviert ist - updaten und beliebig erweitern. Debian hält hierfür bekanntlich einen reichen Schatz an Paketen bereit.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
 Raspberry Pi: Der mit dem 64-Bit-Kernel tanztQuellen finden und selber einen Kernel bauen 
  1.  
  2. 1
  3. 2
  4. 3
  5. 4
  6.  


tom321 28. Dez 2016

Guten Abend, das Ergebnis von : export CROSS_COMPILE=aarch64-linux-gnu- export ARCH...

sg-1 20. Dez 2016

dem direkt verlinkten image? Beim Klick darauf wird direkt de download gestartet. dabei...

The Troll 23. Nov 2016

Man kann auch einfach SUSE Linux Enterprise for Pi3 nehmen https://www.suse.com...

FreiGeistler 23. Nov 2016

Erinnert mich an die Probleme mit Android. Könnte Android (theoretisch) auch Device Tree...



Aktuell auf der Startseite von Golem.de
Whistleblower
Ehemaliger US-Konteradmiral äußert sich zu Außerirdischen

Wieder hat sich in den USA ein ehemals hochrangiger Militär und Beamter über Kontakte mit Aliens geäußert.

Whistleblower: Ehemaliger US-Konteradmiral äußert sich zu Außerirdischen
Artikel
  1. Schadstoffnorm 7: Neue Grenzwerte für Abrieb gelten auch für E-Autos
    Schadstoffnorm 7
    Neue Grenzwerte für Abrieb gelten auch für E-Autos

    Die neue Euronorm 7 legt nicht nur Grenzwerte für Bremsen- und Reifenabrieb fest, sondern auch Mindestanforderungen für Akkus.

  2. Ramjet: General Electric testet Hyperschalltriebwerk
    Ramjet
    General Electric testet Hyperschalltriebwerk

    Das Triebwerk soll Flüge mit Mach 5 ermöglichen.

  3. Elektroautos: Mercedes und Stellantis übernehmen komplette Umweltprämie
    Elektroautos
    Mercedes und Stellantis übernehmen komplette Umweltprämie

    Nach dem abrupten Aus der staatlichen Förderung springen erste Hersteller von Elektroautos ein.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    • Daily Deals • Last-Minute-Angebote bei Amazon • Avatar & The Crew Motorfest bis -50% • Xbox Series X 399€ • Cherry MX Board 3.0 S 49,95€ • Crucial MX500 2 TB 110,90€ • AVM FRITZ!Box 7590 AX + FRITZ!DECT 500 219€ [Werbung]
    •  /