Die heutige Welt ist amd64, armv7 und aarch64. Alles andere ist tot, Jim

Ursprünglicher Autor: Miod Vallat
  • Übersetzung
Wir bieten Ihnen eine Übersetzung eines Abschiedsbriefs von Miod Wallat, einem OpenBSD-Entwickler seit über 15 Jahren, der das Projekt vor einer Woche verlassen hat. Der Brief, der ursprünglich persönlich an einen bestimmten Jim adressiert war, erzählt die Geschichte, wohin gute Absichten manchmal führen und die Benutzer von Reddit und HackerNews auf Resonanz stießen . Bitte beachten Sie, dass die geäußerte Meinung subjektiv ist und der Autor selbst meint, dass " Sie das Recht haben, mit ihm nicht übereinzustimmen ".

Die heutige Welt ist amd64 ( mit anderen Worten x64 oder x86-64 ), armv7 und in naher Zukunft aarch64 ( 64-Bit ARMv8)) Alles andere ist tot, Jim. Niemand investiert genug Geld und geistige Arbeit in andere Architekturen. In Wirklichkeit ist sich nur ein kleiner Teil der Menschen der Existenz des restlichen Ökosystems (Mips, Power8, ...) bewusst, und dennoch kümmert sich niemand um sie.

Eine veraltete Plattform flott zu halten, macht Spaß, denn es erinnert an die 90er Jahre, als es eine große Auswahl an „eisernen“ Plattformen gab, mit ungefähr dem gleichen Preis- / Leistungsverhältnis. Am Ende haben billige PCs fast die gesamte Konkurrenz getötet, und der Smartphone-Markt hat ARM einen ungesunden Marktanteil in der Welt der eingebetteten Systeme eingebracht.

Dann, nach einiger Zeit, hört der Spaß auf, weil niemand den Code mit Blick auf Ihre Plattform schreibt, weil er als nicht leistungsfähig genug angesehen wird und moderne Compiler ihn nicht mehr unterstützen (oder sie generieren für ihn nicht funktionierenden Code, was tatsächlich der Fall ist) schlimmer). Verfügt Ihre Plattform über Hardware-Grenzen von mehreren hundert MB physischem Speicher? Sie können darauf weder einen Webbrowser noch ein Programm zum Anzeigen von PDF-Dateien starten. Läuft auf Ihrer Plattform noch eine Testsuite mit der neuesten Version von gcc ? Nein? Sorry Alter, aber hier ist der Nickel ( 5 Cent ), hol dir deinen besseren Computer schon ...

In der Tat ist die Aufrechterhaltung der Plattform in einem tragfähigen Zustand echte Teamarbeit. Es erfordert ernsthafte Verpflichtungen von Projekten, die "Bausteine" sind: nicht zu viel "fehlerhafte" Toolchain ( as / ld / gcc ), Unterstützung in Flaggschiff-Projekten ( Emacs, Python, X11, Mozilla, Libreoffice ... ) sowie Genauigkeit und aktuelle Dokumentation kostenlos erhältlich.

Keiner der oben genannten Punkte gilt für alle Plattformen außer amd64, armv7 und aarch64.

Aus diesem Grund ist der Wunsch, das „Leben“ einer anderen Plattform aufrechtzuerhalten, eigentlich ein Versuch, gegen die Flut zu schwimmen.

Schauen Sie sich alle Projekte aller freien Betriebssysteme an: Sie unterstützen wirklich nur amd64, armv7 und aarch64. So ist das!Manchmal geben sie vor, mehrere experimentelle Plattformen zu unterstützen. oder andere Plattformen, die seit Jahren nicht mehr getestet wurden und übergreifend kompiliert werden, nur weil sie nicht mehr selbst gehostet werden .

Natürlich können Sie immer noch ein paar verrückte Leute treffen, die bereit sind, eine unglaubliche Menge an Arbeit zu leisten, um den Niedergang ihrer geliebten Plattform zu verhindern und gekonnt den Eindruck zu erwecken, dass diese Plattformen immer noch „erstklassige Passagiere“ sind. Aber diese Leute sind dieselben wie vor zehn Jahren. Früher oder später werden sie müde und geben auf. Wie ich zum Beispiel.

Das Schlimmste an all dem ist, wenn man zurückblickt und feststellt, dass freie Software nach all den Jahren verloren hat. Unternehmen, die an der Erstellung unfreier Software beteiligt waren, verfügten über genügend Intelligenz und Einfallsreichtum, um die „Impulse“ der Entwickler freier Software aufzufangen, die auf eingebetteten Plattformen arbeiten wollten, und diese zu nutzen, um ihre eigenen Softwareentwicklungskosten zu minimieren und eine positive Reaktion der Presse.

So bauen wir heute Einwegsysteme, die nicht berücksichtigen, was uns in Zukunft erwartet - denn wenn es soweit ist, werden wir nur einen weiteren modischen SoC nehmen. Es muss nicht alles vorhanden sein, was eine Architektur ausmacht:
  • eine Vision der Zukunft, die es verschiedenen Hardwaregenerationen ermöglicht, dieselbe Hardware und Software zu verwenden;
  • Ein Design, mit dem heutige Software auf der Hardware von morgen ausgeführt werden kann, bis die Änderungen zu radikal sind.
  • Integrität bei der Auswahl von Bussen, Prozessoren, Adressraumzuordnungen ( Konsistenz bei der Auswahl von Bussen, Schlüsselchips, Adresskarten );
  • echte Firmware und nichts absolut Ekelhaftes wie EFI, das nicht einmal mit der alten Open Firmware (IEEE 1275) mithalten kann, die bereits über 20 Jahre alt ist;
  • zuverlässige Reifenzähler ( zuverlässig zählbare Busse ).

Nein, Sir, wir werden den aktuellen letzten SoC nehmen, einige zusätzliche Geräte anschließen, um ein Loch im Adressraum zu finden, den kastrierten U-Boot und den stabilen Linux-Kernel hineinstecken - abholen und unterschreiben, Ihre " Plattform " ist fertig. Und die Leute sind glücklich.

Ich habe 20 Jahre meines Lebens damit verbracht, die richtige Sicht auf freie Software, ihre Werte und ihre Ethik zu fördern. Ich habe für ihn gekämpft, ich war immer aktiv beteiligt, ich habe versucht, ein Beispiel für andere zu geben, und heute habe ich das Gefühl, dass all meine Bemühungen nur Zeitverschwendung waren und nichts von dem, was ich getan habe, von Nutzen war.

Es ist schwer, sich damit abzufinden, aber es ist besser, jetzt aufzugeben, als es weiter zu versuchen und sich nur noch mehr aufzuregen.

Jetzt auch beliebt: