programmierer-nachrichten.de:
News für Programmierer

programmierer-nachrichten.de

direkt aus dem Technologiezentrum Bottrop
Startseite Podcast RSS Archiv Impressum

Ada & RISC-V


Ada ist eine relativ alte Programmiersprache, die angeblich keine Rolle mehr spielt, aber doch immer wieder in Erscheinung tritt. Das macht Ada speziell, da viele andere alte Programmiersprachen tatsächlich nicht mehr beworben werden. Im Falle von Ada gibt es aber tatsächlich noch Innovation, über die es sich lohnt zu berichten.

Fabien Chouteau berichtet darüber, dass er Software mit Ada auf einem RISC-V Microcontroller zum laufen gebracht hat.

Nun, was ist so besonders daran, dass Ada Programme auch für RISC-V basierte Prozessoren geschrieben werden können? Ja, das mag unscheinbar klingen. Manche Menschen würden denken: "wayne?", aber ganz so einfach ist das nicht. RISC-V ist eine offene Prozessorarchitektur, die jeder nutzen kann, um eine CPU zu bauen. Ok, und nun?

Das alleine klingt ebenso unspannend, aber das ist es nicht. Du und ich nutzen heute vermutlich eine CPU von AMD oder Intel auf dem PC (ich habe tatsächlich mal eine Cyrix CPU verwendet, aber das interessiert niemanden mehr). Diese CP-Einheiten sind unsicher. Diesen Satz habe ich extra kurz gestaltet, damit du darüber stolperst. Du wirst dich fragen, was an einer CPU unsicher sein kann und ich nehme es dir nicht übel, dass du diese Frage stellst. In Intel CP-Einheiten aber auch in AMD CP-Einheiten gibt es Software-Lösungen, die es erlauben deinen PC entfernt zu steuern. Diese Erweiterungen wurden entworfen, um im Firmenumfeld eine Möglichkeit der einfachen Administration zu schaffen. Das alleine ist nicht verwerflich, aber die Tatsache, dass diese Software unsicher ist. Bei Intel wurde es schon nachgewiesen und wenn du eine Core Ix CPU hast, so bist du sehr wahrscheinlich betroffen davon, dass dein System aus der Ferne zu steuern ist, ohne, dass du es erlaubt hast. Und wenn ich "Software" schreibe, dann meine ich Firmware, die du so einfach nicht austauschen kannst, da es Software innerhalb deiner CPU ist. Auch AMD hat solche Erweiterungen, jedoch wurde da noch nicht nachgewiesen, dass diese Erweiterungen Fehler enthalten.

RISC-V wird bei vielen Programmierern als Offenbarung gesehen, da es offen und eben "libre" ist, aber ganz so einfach ist das auch hier nicht. Die gleiche Meinung gibt es nämlich auch für ARM und ich sehe das dort gar nicht so rosig wie viele andere. Bei vielen Programmierern wird die ARM CPU als Allheilmittel angesehen, aber diese Meinung kann ich schon alleine aus praktischer Erfahrung nicht teilen.

Ich war vor einigen Jahren sehr daran interessiert Intel als auch AMD mit ARM zu ersetzen. Das ist praktisch auch heute nicht möglich. ARM CP-Einheiten oder von mir aus ARM SOCs sind leistungstechnisch so gut wie allen AMD und Intel Prozessoren unterlegen. Bei ARM schreibt fast jeder, dass ARM viel weniger Strom als Intel oder AMD benötigt. Ja, das ist auch so, aber wieso? Weil ARM Prozessoren weniger leisten :). Ja, es ist wirklich so einfach, wie ich es schreibe. Ich vergleiche noch heute moderne ARM CPUs mit meinem Classic AMD Athlon K7 Slot Single-Core 700MHz. Wieso? Weil ARM CPUs extrem langsam sind. Wenn ein Hersteller 10-Core ARM bewirbt, heißt das nur, dass 4 Kerne normal schnell und alle anderen Kerne sack lahm sind, um Strom zu sparen :). Wenn man das mit dem Markt der Desktop-CPUs vergleicht, ist die Intention eine ganz andere. Im Desktop-Bereich will man höchst mögliche Leistung; bei ARM höchstmögliche Stromersparnis.

Aber wieso mecker ich über ARM? Weil ARM sack lahm ist und weil es bei ARM kein BIOS oder UEFI gibt. Nicht, dass ich beides unbedingt geil finde, aber wenn wenn weder BIOS noch UEFI vorhanden sind, ist die Situation um so schlimmer, da nun die Initialisierung der Hardware abhängig vom Hersteller ist. Das ist quasi der Supergau. Da kann die Hardware noch so geil sein; in dieser Situation ist man der Arsch.

Und deswegen bin ich mit RISC-V ganz vorsichtig. Ich weiß zwar, dass Coreboot mit RISC-V funktioniert, aber ganz so trivial ist das eben nicht. Es wird immer noch sehr spezielle Hardware unterstützt. Im Grunde ist das bei BIOS und UEFI auch so, nur, dass dort die Unterstützung umfangreicher ist und es nicht direkt auffällt, dass trotz BIOS oder UEFI für jede Hardware Anpassungen notwendig sind. Das ist nicht ganz wahr, aber auch nicht ganz falsch.

Ich bin auf jeden Fall der Erste, der ein RISC-V System kauft, was auch bezahlbar ist. Es gab bisher nur Projekte, die extrem teuer waren. Aber ich mache mir auch nichts vor. Intel und AMD werden trotzdem die schnelleren Chips haben. Ich bin aber bereit eine CPU zu nutzen, die langsamer ist, aber dafür sicher. Die Performance darf aber nicht zu langsam sein. Ich bin nicht bereit viel Geld auszugeben, um die Performance meines alten AMD Athlon K7 Classic Slot Single Core mit 700MHz zu haben. Das sehe ich nicht ein. Das wäre für mich ein Schritt in die falsche Richtung. Wenn aber ein RISC-V Prozessor bei 30% mehr Stromverbrauch 30% weniger Leistung bringt, wäre das für mich kein Beinbruch.

Dass Ada aber nun auch RISC-V Architekturen unterstützt und dass darüber geschrieben wird, ist eine sehr gute Sache. Das zeigt, dass Ada noch lange nicht tot ist. Weiter so!


Startseite Podcast RSS Archiv Impressum