Abo
  • Services:
Anzeige
Eine Demoanwendung von Wasm: ein Spiel, das mit der Unity-Engine umgesetzt wurde
Eine Demoanwendung von Wasm: ein Spiel, das mit der Unity-Engine umgesetzt wurde (Bild: Luke Wagner)

Webassembly: Browserhersteller wollen einheitlichen Bytecode fürs Web

Eine Demoanwendung von Wasm: ein Spiel, das mit der Unity-Engine umgesetzt wurde
Eine Demoanwendung von Wasm: ein Spiel, das mit der Unity-Engine umgesetzt wurde (Bild: Luke Wagner)

Noch ist es nicht viel mehr als ein Plan, doch wegen der breiten Unterstützung könnte Webassembly schon bald Javascript in Teilen ablösen. Die Entwicklung des Bytecodes wird von Google, Mozilla, Microsoft und anderen vorangetrieben.

Anzeige

Javascript sollte für Menschen eigentlich leicht zu lesen sein, oft ist der vom Browser ausgeführte Code aber derart komplex, dass das nicht mehr möglich ist. Das führt wiederum zu enormen Problemen für die Browserhersteller. Gelöst werden könnten diese Schwierigkeiten durch Webassembly (Wasm): ein portables, auf geringe Größe und kurze Ladezeiten optimiertes Binärformat samt Ausführungsmodell - ein Bytecode für das Web also.

Beteiligt sind an dem Projekt derzeit die Entwickler aller großen Browserengines, was damit branchenübergreifend von Mozilla, Google, Mircosoft und Apple getragen wird. Geplant ist es, Wasm als einheitliches Ziel von kompilierten Programmen im Web zu etablieren. Dazu ist ein LLVM-Backend geplant, mit dem zum Beispiel Code in C oder C++ nach Wasm übersetzt werden kann.

Ein Bytecode für alle

Das Konzept, Bytecode im Browser zu verwenden, ist etwa mit .Net oder Java bereits umgesetzt worden. Dafür waren aber Plugins für die Browser nötig, eine gute Integration war darüber jedoch nur schwer möglich. Denn anders als bei Javascript, mit dem etwa HTML auf einer Seite manipuliert werden kann, sind die Plugins vom Rest des Browsers mehr oder weniger stark abgeschlossene Einheiten. Besonders wichtig im Vergleich zu Javascript ist vor allem das deutlich reduzierte Downloadvolumen.

Wasm ist deshalb auch eher als Ersatz für Asm.js oder Googles Portable Native Client geschaffen worden. Letzteres konnte sich bisher nicht übergreifend durchsetzen und Asm.js weist immer noch einige der Probleme von Javascript auf, auch wenn es eine klar definierte Untermenge ist.

So lässt sich das neue Binärformat in ersten Tests bis zu 20-mal schneller parsen als vergleichbares Asm.js. Dieser Geschwindigkeitsvorteil ist letztlich auch der Hauptgrund für Wasm. Bytecode ist viel näher an einer Maschinensprache und oft sehr klar definiert.

Der Bau von Compilern und Laufzeitumgebungen wird damit vereinfacht, schließlich gibt es auch kein undefiniertes Verhalten wie in manchen höheren Programmiersprachen üblich. Außerdem wird durch den Einsatz von Bytecode die Nutzung von SIMD-Instruktionen erleichtert, was wiederum die Ausführung beschleunigt.

Projekt steht erst am Anfang

Noch ist Wasm nicht viel mehr als ein Plan, dieser scheint aber sehr ausgereift. So soll es ein zu dem Binärformat isomorphes Textformat geben. Diese könnte dann etwa sehr gut zum Debuggen geeignet und ähnlich zu Assembly-Code für Hardwarearchitekturen zu benutzen sein.

Bis die Browser Wasm direkt ausführen können, soll eine Übergangslösung geschaffen werden. Dazu soll ein Polyfill genutzt werden, das Wasm zu Javascript überführt. Die bestehenden Engines sollten damit dann keine Probleme haben.

Das Design von Wasm wird auf Github erläutert, weitere Details sind in FAQ gesammelt. Der Javascript-Erfinder Brendan Eich bietet in seinem Blog außerdem einen Überblick zu wichtigen Fragen rund um Wasm sowie einen Ausblick, wohin sich seiner Meinung nach das neue Format entwickeln könnte.

Koordiniert wird die Arbeit an Wasm in einer Community-Arbeitsgruppe beim W3C, der erste Entwurf einer vorläufigen Spezifikation steht aber noch aus.


eye home zur Startseite
FreiGeistler 16. Mär 2016

Hab ich was verpasst? Wenn der Ersteller kommentiert kommen die Kommentare auch bei mir...

spiderbit 18. Dez 2015

Wenn die Frage Polizeistaat und Diktatur "geniesen" oder im Keller einschliessen ist...

spiderbit 18. Dez 2015

Bin ich grad durch den Wind oder du, finde das Zitat nicht in meinem letzten kommentar...

CoDEmanX 18. Dez 2015

XML und Performance, ja ne ist klar.

CoDEmanX 18. Dez 2015

Um zu WebAssembly zu kompilieren wird genau eine zusätzliche Option für das Buildsystem...



Anzeige

Stellenmarkt
  1. MBtech Group GmbH & Co. KGaA, Sindelfingen
  2. über Ratbacher GmbH, Raum Frankfurt
  3. über Ratbacher GmbH, Raum Olpe
  4. CERATIZIT Deutschland GmbH, Empfingen


Anzeige
Hardware-Angebote
  1. und 15€ Cashback erhalten

Folgen Sie uns
       


  1. Apple

    Aktivierungssperre des iPads lässt sich umgehen

  2. Amazon

    Downloader-App aus dem Fire-TV-Store entfernt

  3. Autonomes Fahren

    Apple zeigt Interesse an selbstfahrenden Autos

  4. Sicherheit

    Geheimdienst warnt vor Cyberattacke auf russische Banken

  5. Super Mario Bros. (1985)

    Fahrt ab auf den Bruder!

  6. Canon EOS 5D Mark IV im Test

    Grundsolides Arbeitstier mit einer Portion Extravaganz

  7. PSX 2016

    Sony hat The Last of Us 2 angekündigt

  8. Raspberry Pi

    Schutz gegen Übernahme durch Hacker und Botnetze verbessert

  9. UHD-Blu-ray

    PowerDVD spielt 4K-Discs

  10. Raumfahrt

    Europa bleibt im All



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Named Data Networking: NDN soll das Internet revolutionieren
Named Data Networking
NDN soll das Internet revolutionieren
  1. Geheime Überwachung Der Kanarienvogel von Riseup singt nicht mehr
  2. Bundesförderung Bundesländer lassen beim Breitbandausbau Milliarden liegen
  3. Internet Protocol Der Adresskollaps von IPv4 kann verzögert werden

Quake (1996): Urknall für Mouselook, Mods und moderne 3D-Grafik
Quake (1996)
Urknall für Mouselook, Mods und moderne 3D-Grafik
  1. Künstliche Intelligenz Doom geht in Deckung

Final Fantasy 15 im Test: Weltenrettung mit der Boyband des Wahnsinns
Final Fantasy 15 im Test
Weltenrettung mit der Boyband des Wahnsinns
  1. Square Enix Koop-Modus von Final Fantasy 15 folgt kostenpflichtig

  1. Re: Ganz schön großes Teil

    Neuro-Chef | 19:22

  2. langweilig

    Willi13 | 19:21

  3. Re: Permanenter Unlock?

    ChMu | 19:21

  4. Re: Error (429)

    ad (Golem.de) | 19:20

  5. Re: Bulls....

    ChMu | 19:20


  1. 12:54

  2. 11:56

  3. 10:54

  4. 10:07

  5. 08:59

  6. 08:00

  7. 00:03

  8. 15:33


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel