Raspberry Pi: Der mit dem 64-Bit-Kernel tanzt

Die Raspberry Pi Foundation sorgt dafür, dass auf der Version 3 ihres Minirechners ein 32-Bit-Linux startet - und das, obwohl der neue Raspberry Pi eine reinrassige 64-Bit-CPU hat. Echte Linux-Kern-Techniker lässt die angezogene Handbremse nicht ruhen.

Artikel von Eva-Katharina Kunst/Linux Magazin und Jürgen Quade veröffentlicht am
Die CPU des Raspberry Pi 3 unterstützt Aarch64.
Die CPU des Raspberry Pi 3 unterstützt Aarch64. (Bild: Martin Wolf/Golem.de)

Als die Raspberry Pi Foundation Ende Februar 2016 das Model 3 ihres so erfolgreichen Minicomputers vorstellte, war die Freude groß. Das neue Modell ist mit einer schnellen 64-Bit-ARMv8-CPU ausgestattet. Der Schwenk von 32-Bit- auf die 64-Bit-Betriebssysteme und -Anwendungen schien eingeleitet. Doch weit gefehlt: Zur großen Überraschung der meisten Raspberry-Pi-Fans und -Entwickler reizt die neue 64-Bit-Hardware ihre Möglichkeiten mit dem Raspbian-Betriebssystem überhaupt nicht aus und arbeitet nur mit 32 Bit.

  • 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.
Mit dem Standard Raspbian verleugnet der Mini-Rechner seine moderne Architektur und tarnt sich als 32-Bit-SoC.


Die Zurückhaltung geht so weit, dass ein Raspberry Pi 3 im vorgesehenen 32-Bit-Modus vorgibt, eine ARMv7-Architektur zu haben, obwohl auf ihm ein ARMv8 sitzt: Egal ob in den Bootmeldungen oder in der Ausgabe des Befehls cat /proc/cpuinfo - Kernel und Betriebssystem geben sich als Teil der BCM2709-Familie aus, tatsächlich sind sie auch Teil der BCM2710-Familie.

Die 64-Bit-CPU

Denn auf dem Raspberry Pi 3 sitzt als System-on-Chip ein Broadcom BCM2837. Es handelt sich um die Weiterentwicklung des BCM2836 (BCM2709) des Raspberry Pi 2, bei dem die ARMv7-CPU durch eine Quadcore-ARMv8-CPU vom Typ Cortex A 53 ersetzt wurde. Die CPU kann sowohl im 32-Bit- (AArch32) als auch im 64-Bit-Modus (AArch64) arbeiten, wobei der Raspi 3 als Standard die 32-Bit-Variante wählt.

Die CPU verwendet einen modernisierten Befehlssatz, sie hat 31 64-Bit-Register statt der bisherigen 15 mit 32 Bit. Register 31 (Program Counter) liefert grundsätzlich Null beim Lesen. In der 64-Bit-Variante passieren Gleitkomma-Operationen grundsätzlich mit 128 Bit (Datentyp long double). Des Weiteren unterstützt die CPU standardmäßig ARMs Multimedia- und Signalverarbeitungs-Erweiterung Neon, eine 128-Bit-SMID-Architektur. Zudem verarbeitet der Prozessor diverse Kryptoalgorithmen AES, SHA-1, SHA-256 direkt im Chip.

Mit etwas Abstand wird die technologische Verzagtheit der Raspberry Pi Foundation dennoch nachvollziehbar. So ist der Raspberry Pi 3 nur mit 1 GByte RAM bestückt - zu wenig, um vom erweiterten Adressbereich der ARMv8-Architektur zu profitieren. Zudem ist ein spürbarer Leistungsgewinn in der Praxis durch 64-Bit-Instruktionen nicht zu erwarten. Immerhin ist die neue CPU selbst im 32-Bit-Modus der ARMv7-Architektur des alten Raspberry Pi deutlich überlegen, da das mit der neuen Architektur einhergehende Fertigungsverfahren höhere Taktfrequenzen ermöglicht.

Der gravierende Vorteil des 32-Bit-Betriebs ergibt sich aus dem Umstand, dass die Besitzer der Platinen ihr vorhandenes Raspbian-Userland unverändert weiter verwenden dürfen.

Technik muss begeistern, deshalb wird gebastelt

Auch wenn die 64 Bit beim Rapsberry Pi 3 bestenfalls marginale Geschwindigkeitsvorteile bringen, kann es den Technik-begeisterten Linux-Nutzer nicht auf Dauer zufriedenstellen, bei den Hardwaremeldungen einen Wolf im Schafspelz zu erhalten und eine 64-Bit-CPU mit einem 32-Bit-System zu langweilen. Daher haben sich direkt nach Veröffentlichung des Raspberry Pi 3 Entwickler daran gemacht, den 64-Bit-Betrieb zu ermöglichen. Der Artikel beschreibt, wie das geht.

Dazu müssen an der Firmware, am Kernel und am Userland Hand angelegt werden. Die Firmware muss den Controller des Raspberry Pi 3 direkt beim Booten in den 64-Bit-Modus schalten. Immerhin sieht die Board-eigene Firmware das bereits vor. Dazu ist in der Datei config.txt auf der Bootpartition die Variable arm-control auf den Wert 0x200 zu setzen, wie später noch gezeigt wird. Inzwischen soll eine neue Firmware sogar in der Lage sein, auch ohne Veränderung einen 64-Bit-Kernel zu laden.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
Willkommen im U-Boot und Geräte-Baum 
  1. 1
  2. 2
  3. 3
  4. 4
  5.  


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
Nach Cyberangriff
Südwestfalen IT bittet Kommunen um Geld

Viele deutsche Kommunen leiden noch immer unter den Folgen des Cyberangriffs auf die Südwestfalen IT. Nun will der Dienstleister auch noch Geld sehen.

Nach Cyberangriff: Südwestfalen IT bittet Kommunen um Geld
Artikel
  1. Projekt Dauerpower: Forscher entwickeln Wechselrichter mit 720 kW Dauerleistung
    Projekt Dauerpower
    Forscher entwickeln Wechselrichter mit 720 kW Dauerleistung

    Elektroautos können ihre hohe Motorleistung oft nur kurzfristig abrufen. Das soll sich durch neue Verfahren bei der Halbleiterproduktion ändern.

  2. Daten abgeflossen: Cyberangriff trifft Entwicklungsprogramm der UN
    Daten abgeflossen
    Cyberangriff trifft Entwicklungsprogramm der UN

    Der Ransomwaregruppe 8Base ist es gelungen, Auftragsinformationen und Mitarbeiterdaten von IT-Systemen des Entwicklungsprogramms der Vereinten Nationen abzugreifen.

  3. US-Airforce: KI-Dogfights gegen menschliche Piloten getestet
    US-Airforce
    KI-Dogfights gegen menschliche Piloten getestet

    Die US-Luftwaffe har erfolgreich einen Nahkampf zwischen dem X-62A-Testflugzeug mit KI-Steuerung und einem bemannten F-16-Kampfflugzeug durchgeführt.

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 • Spring Sale bei Gamesplanet • Neuer MediaMarkt-Flyer • MindStar: AMD Ryzen 7 7800X3D 339€ • Bose Soundbar günstig wie nie • Samsung Galaxy S23 -37% • MSI OLED Curved 34" UWQHD 175Hz -500€ • Alternate: Deep Cool CH560 Digital Tower-Gehäuse 99,90€ • PS5-Spiele -75% [Werbung]
    •  /