Die Rolle von ARM-basierten SBC-Geräten im Vergleich zu X86-basierten Geräten und Markttrends im Jahr 2023
Laut GPT4 wird der weltweite Markt für ARM-basierte Prozessoren im Jahr 2021 auf rund $17,7 Milliarden geschätzt, wobei IoT-Geräte einen erheblichen Teil des Marktes ausmachen.
Intel und andere x86-basierte Geräte dominieren den Markt nach wie vor, die entsprechende Marktgröße war (natürlich) im Jahr 2021 viel größer.
Erinnern Sie sich daran, dass es ursprünglich so war, Mainframes (wie das IBM System/360) einen großen Teil des Marktes ausmachten. Gegenwärtig übertrifft der x86-Markt den Mainframe-Markt um ein Vielfaches - aber es gab eine Zeit, da war es genau umgekehrt!
x86 hat sich durch eine einzigartige Kombination aus der Wahl dieser speziellen Architektur durch IBM für den IBM PC und der Marktdominanz, die Microsoft DOS (MS-DOS) und später Microsoft Windows aufbauen konnten, durchgesetzt.
In der Vergangenheit wurde Windows auf andere CPUs portiert. Microsoft hat immer wieder versucht, Versionen anzubieten, die auch auf der ARM-Architektur laufen würden - die aber (in der Vergangenheit) die alten x86-Anwendungen nicht unterstützten. Es überrascht nicht, dass die Kunden bestimmte Dinge von Windows erwarten - wie etwa die Möglichkeit, Microsoft Word auf den entsprechenden Computern auszuführen.
Heute befinden wir uns im Zeitalter des Single Board Computing. Der beliebteste SBC auf dem Planeten ist der Raspberry Pi, auf dem Microsoft Windows nicht (wirklich) läuft, zumindest nicht die x86-kompatible Version.
Auch hier hat Microsoft einen Versuch unternommen und eine Windows-Version mit dem Namen Microsoft Windows IoT entwickelt.
Es gibt Einplatinencomputer, auf denen Microsoft Windows läuft, da sie x86-basiert sind (z. B. der LattePanda), aber das ist nicht so wichtig. Deshalb ist der Raspberry Pi, der ARM-basiert ist, der beliebteste SBC!
Lassen Sie uns einige Gründe dafür untersuchen
Vorteile/Nachteile von ARM vs. x86
Historisch gesehen wurde x86 von Intel aggressiv vorangetrieben - das Geschäftsmodell des Unternehmens basiert (oder sollte man sagen: basierte?) auf Technologieführerschaft.
Im Gegenzug könnte Intel verlangen Prämiengestaltungzumindest bei den High-End-Produkten des Unternehmens.
x86-Vorteile
- hohe Leistung (auch wenn diese zu bröckeln beginnt)
- volle Kompatibilität mit Microsoft Windows
AMD, der Zweitplatzierte (der seinen großen Durchbruch als Second-Source für x86-basierte Produkte hatte, weil das Militär eine zweite Quelle brauchte, wenn ich mich recht erinnere!) wurde als die kostenbewusstere Wahl positioniert.
Schließlich war die Leistung der x86-Plattform deutlich höher als für viele Anwendungen erforderlich.
Spezialisierte Hardware übernahm Verarbeitungsfunktionen, deren Ausführung auf dem Prozessor ineffizient war.
Wenn wir zum Beispiel den Coral AI-Hardwarebeschleuniger (den wir zufällig vertreiben) in Betracht ziehen, läuft er schneller, energieeffizienter und hat eine niedrigere Gesamtstückzahl in Zusammenarbeit mit einem Raspberry Pi im Vergleich zu einem x86-basierten Hochleistungssystem, das in der Lage wäre, das gleiche neuronale Netzwerk-Vision-Modell auf seiner CPU laufen zu lassen.
ARM ist ein viel zersplittertes Ökosystem, wobei ARM als Lizenzgeber der Architektur eine gewisse Interoperabilität garantiert.
ARM stellt keine Chips (für den Massenmarkt) her. Stattdessen lizenziert ARM seine Entwürfe an Unternehmen wie Broadcom (das z. B. den SoC des Raspberry Pi entwickelt hat) oder Rockchip - der z. B. in RockPi oder Tinkerboard SBCs verwendet wird.
Mehr Lizenznehmer bedeuten mehr Wettbewerb (im Gegensatz zu Intel, das den Markt im Grunde nur als "Geisel" hält, wenn es die führende Leistung und den Markennamen haben will).
Nebenbei bemerkt sind viele dieser Chip-Hersteller nicht wirklich bekannte Namen - jedenfalls nicht so etabliert wie Intel. Ich meine, welchen Endverbraucher interessiert es wirklich, ob er einen Broadcom-Chip oder einen Chip der Konkurrenz in seinem Router hat? Das war damals ein wirklich cleverer Marketingzug von Intel (Intel inside) - aber ich schweife ab.
ARM bietet, kurz gesagt, die folgenden Vorteile:
- niedrigere Kosten Komponenten
- sehr effiziente Energienutzung
- kann gekühlt werden passiv in vielen Anwendungen (kein Lüfter erforderlich) - geräuschlose Ausführungen möglich!
- Unternehmen können andere IPs in ihren SoCs mischen und anpassen (z. B. verwendet Rockchip Mali-GPUs - ebenfalls von ARM, und Broadcom verwendet die VideoCore-GPU, die intern entwickelt wurde), wie sie es für richtig halten - meines Wissens gibt es keine x86-Lizenzen, die das erlauben, so dass man im Grunde das Angebot von Intel, ARM usw. erhält. - Im Grunde gibt es keine Lizenz für die IP, man muss die Chips selbst kaufen.
- Dadurch können diese Unternehmen ihre Hardware gezielt für bestimmte Anwendungen einsetzen (und eine bessere Leistung zu niedrigeren Kosten erzielen!).
So gibt es auf SBCs häufig spezielle Videocodecs, die als Hardwareschaltung ausgeführt sind und die Dekodierung der gängigsten Videocodecs ermöglichen (um diese YouTube-Katzenvideos abzuspielen).
ARM ist inzwischen so weit fortgeschritten, dass einige der darauf basierenden Designs in Produkte mit höherer Geschwindigkeit eingebaut werden als ihre Intel/x86-Pendants. Apple zum Beispiel hat dies mit der M2-Architektur bewiesen. Sie passt sehr gut in das Geschäftskonzept von Apple, das auf eine enge Integration von Software und der zugrunde liegenden Hardware ausgerichtet ist.
Das ist übrigens auch der Grund, warum Apple es geschafft hat, auf ARM umzusteigen - sie kontrollieren das Betriebssystem, die Hardware und das SoC-Design - sie haben sichergestellt, dass ihre alten Anwendungen auch auf der neuen Hardware mit akzeptablen Geschwindigkeiten ausgeführt werden können!
Microsoft ist dazu nicht in der Lage, da sie ein anderes Geschäftskonzept haben. Sie sind bei der Herstellung von PCs von vielen Unternehmen abhängig, z. B. ASUS. Sie lassen diese PC-Hersteller untereinander konkurrieren und treiben so das Marktvolumen voran, während sie mit ihrer Software die Interoperabilität auf dieser PC-Plattform sicherstellen. Um auf ARM umzusteigen, müssten sie eine Vielzahl dieser Hersteller zusammenbringen UND sie müssten eine Interoperabilitätsschicht aufbauen, um Legacy-Software-Unterstützung zu bieten. Da sie nicht wissen, auf welcher CPU sie letztendlich laufen werden, können sie dem Markt kein konsistentes Versprechen geben, dass die alte Software mit akzeptablen Geschwindigkeiten laufen wird. (OK, das ist stark vereinfacht, aber sie müssten die Hersteller für eine neue Strategie der Umstellung auf ARM usw. gewinnen).
Zielmarkt der SBCs im Vergleich zu Desktop-PCs/Servern
Einplatinencomputer werden häufig in industriellen Anwendungen (als so genannte eingebettete Hardware-Geräte) oder von Enthusiasten/Tüftlern und auch im Bildungswesen eingesetzt.
Microsoft Windows-basierte Computer (und damit auch die x86-Plattform, die eng mit diesem Betriebssystem verbunden ist!) werden in Büroumgebungen eingesetzt und wurden auch als Heimcomputer verwendet. Menschen sind Gewohnheitstiere, sie gewöhnen sich an ein Betriebssystem. Ich würde zum Beispiel nicht in Erwägung ziehen, Linux als mein Haupt-Desktop-System zu verwenden (außerdem gibt es dort einfach zu viel Auswahl!), da ich Windows verwende und mich auf einige Anwendungen verlasse, die ich kenne und seit Jahren verwende (z. B. die Adobe-Suite).
Auf meinem Smartphone habe ich jedoch ein Android-basiertes System. Das Smartphone war ein kompletter Neustart der Ökosysteme, und die ARM-CPU konnte ihren großen Vorteil ausspielen, sehr energieeffizient zu sein. Anfangs waren die Leute mit der geringeren Leistung eines Mobiltelefons einverstanden. Heutzutage sind einige dieser Smartphones leistungsfähiger als die Desktop-Computer, die die Menschen haben. Der Vorteil der Windows-Software spielte keine Rolle, da diese Smartphones ohnehin völlig neue Anwendungen benötigten. Ich meine, niemand hat z. B. einen GPS-fähigen Computer im Sinn gehabt. Oder mit Multitouch-Oberflächen - die Windows-PCs verwendeten ein klassisches Maus-Klick-und-Punkt-System und waren meist stationär.
Verstehen Sie, worauf ich hinaus will?
Die Windows-PC/x86-Architektur hat eine gewisse Nische (wenn auch eine sehr große), in der sie in den Köpfen der Kunden existiert. Dies ist für Desktop-Anwendungen (der andere große Konkurrent ist Apple, zum Beispiel mit MacBooks und zunehmend mit Chromebooks). Es wird bei der Büroarbeit eingesetzt, zum Beispiel um Bestellungen für Raspberry Pis von uns zu bearbeiten.
Auch bei High-End-Servern ist er nach wie vor von Bedeutung, obwohl ARM-basierte Designs auch dort Einzug gehalten haben - wegen der Leistungseffizienz und der Kosten, ARM eignet sich letztlich auch besser für das Rechenzentrum.
In anderen Bereichen spielen andere Faktoren eine Rolle.
Eingebettete Designs, wie z. B. Geldautomaten, wurden in der Vergangenheit auch mit Windows erstellt - vielleicht haben Sie schon einmal die Bluescreens auf Geldautomaten oder Digital Signage-Installationen in der Stadt gesehen.
Es besteht keine Notwendigkeit, Windows auf diesen Geräten zu verwenden. Linux ist oft die bessere und einfacher zu verwaltende Wahl und zudem auch noch kostengünstiger. Für Linux-Installationen fallen keine Lizenzgebühren an. Linux ist als das sicherere Betriebssystem bekannt. Schließlich ist man mit Linux nicht so sehr auf die x86-Plattform festgelegt wie mit Windows.
Auf diesen speziellen Geräten spielen Ihre Desktop-Anwendungen wie Word, Excel usw. überhaupt keine Rolle. Sie werden häufig mit spezialisierten Anwendungen zur Anzeige von Videos, zur Interaktion mit dem Kunden oder zur Anzeige des Stockwerks, in dem man sich befindet (in einem Aufzug), eingesetzt.
(Nebenbei bemerkt: Um anzuzeigen, in welchem Stockwerk man sich im Aufzug befindet, ist selbst Linux übertrieben. Ein einfacher Mikrocontroller reicht völlig aus! Achten Sie in diesem Bereich auf noch einfachere Geräte, auf denen kein richtiges, vollwertiges Betriebssystem mehr läuft)
Bei eingebetteten Geräten - und das ist ein großer Bereich, in dem SBCs verkauft werden - spielen die Kosten eine Rolle. Sehr viel. Die Energieeffizienz spielt eine Rolle. x86-Designs müssen besser gekühlt werden (aufgrund der schlechteren Energieeffizienz), was oft bedeutet, dass man z. B. ein Lüfterdesign hinzufügen muss ...
Die Software-Frameworks für die Erstellung von Anwendungen haben sich stark verändert. Viele Anwendungen können heute problemlos für x86 oder ARM erstellt werden, beispielsweise mit dem Qt-Framework oder mit Webtechnologien.
Eine neue Generation von Ingenieuren ist mit der Entwicklung von node.js und JavaScript aufgewachsen und kümmert sich nicht allzu sehr um die zugrunde liegende Hardware-Architektur.
Kosten: Windows-Bündelung
Kosten: ARM vs. x86, Marktfragmentierung, Wettbewerb, unterschiedliches Lizenzierungsmodell
RISC V