Wasmer, eine Reihe von Tools für WebAssembly-Anwendungen

Nach zwei Jahren Entwicklung Die Veröffentlichung der ersten Version wurde angekündigt bedeutendes Projekt Wasmer, der eine Laufzeit zum Ausführen von WebAssembly-Modulen entwickelt.

Waschanlagen umfassen die Erstellung universeller Anwendungen das kann ausgeführt werden auf verschiedenen Betriebssystemen, sowie die Organisation der isolierten Ausführung von unzuverlässigem Code. Die Einbeziehung der Erstellung von Serveranwendungen wird unterstützt. Beispielsweise wurde die Freigabe eines auf WebAssembly kompilierten Nginx-Servers demonstriert.

Über Wasmer

Portabilität wird durch Kompilieren des Anwendungscodes in Middleware erreicht Low-Level-WebAssembly, die auf jedem Betriebssystem ausgeführt oder in Programme in anderen Programmiersprachen integriert werden kann.

Die Programme Es handelt sich um kompakte Container, in denen der WebAssembly-Pseudocode ausgeführt wird. Diese Container sind nicht an das Betriebssystem gebunden und können Anwendungen enthalten, die ursprünglich in einer beliebigen Programmiersprache geschrieben wurden.

Das Toolkit Emscripten kann zum Kompilieren in WebAssembly verwendet werdenNeben der Übersetzung von WebAssembly in den Maschinencode der aktuellen Plattform sind mehrere Frameworks verbunden, z. B. LLVM und der Cranelift-Codegenerator.

Auf der anderen Seite werden die Zugriffskontrolle und die Interaktion mit dem System über die WASI-API (WebAssembly System Interface) bereitgestellt, die Programmierschnittstellen für die Arbeit mit Dateien, Sockets und anderen vom Betriebssystem bereitgestellten Funktionen bereitstellt.

Außerdem Anwendungen sind in einer Sandbox-Umgebung vom Host-System isoliert und Sie haben nur Zugriff auf die deklarierten Funktionen (Sicherheitsmechanismus basierend auf Verwaltungsfunktionen; für Aktionen mit jeder der Ressourcen (Dateien, Verzeichnisse, Sockets, Systemaufrufe usw.) muss die Anwendung die entsprechenden Berechtigungen erhalten).

Die Programme werden in Form von regulären WebAssembly-Modulen verteilt, die über den WAPM-Paketmanager verwaltet werden können.

Wasmer auch ist als Bibliothek verfügbar, die mit verschiedenen Sprachen verwendet werden kann Programmierung. Das Einbetten von WebAssembly-Code in die Programme Rust, C / C ++, C #, D, Python, JavaScript, Go, PHP, Ruby, Elixir und Java wird unterstützt.

Da der Funktionen von Wasmer Version 1.0 Folgendes fällt auf:

  • Hohe Leistung laufender Anwendungen, nahe an der Ausführung nativer Assemblys und hohe Kompilierungsgeschwindigkeit.
  • Erweiterbare Architektur mit der Möglichkeit, verschiedene Kompilierungs-Backends (Singlepass, Cranelift, LLVM) und Engines (mithilfe von JIT oder Generieren von Maschinencode) zu verbinden.
    Native Object Engine, mit der Maschinencode für ein bestimmtes System für ein WebAssembly-Modul generiert werden kann ("wasmer-native Kompilierung" zum Generieren vorkompilierter .so-, .dylib- und .dll-Objektdateien).
  • Vorkompilierter Code erfordert nur eine minimale Ausführungszeit, aber alle Sandbox-Isolationsfunktionen bleiben erhalten.
  • Headless-Modus zur Bereitstellung vorkompilierter Programme mit integriertem Wasmer.
    Kompilierungsübergreifende Unterstützung, um beispielsweise Maschinencode für die Aarch64-Architektur auf einem x86_64-System zu generieren.
  • Eine einfache API zum Erstellen von Plugins und Plugins, ohne dass Sie fortgeschrittene WebAssembly-Konzepte erlernen müssen.
  • Unterstützung für WASM-C-API.
  • Tools zum Debuggen und zur Fehlerbehandlung.

Schließlich Wenn Sie mehr über Wasmer erfahren möchten, Sie sollten wissen, dass eDer Projektcode ist in Rust geschrieben, es hat la MIT-Lizenz und Sie können die Details auf der offiziellen Website unter überprüfen folgenden Link

Installieren Sie die Wasmer-Laufzeit

Auf der anderen Seite müssen Sie für diejenigen, die daran interessiert sind, den WebAssembly-Container ausführen zu können, nur die Wasmer-Laufzeit auf Ihrem System installieren, die ohne externe Abhängigkeiten auskommt.

Es ist wichtig, das zu erwähnen Wasmer kann auf jeder Plattform betrieben werden Für MacOS, Linux und Windows ist die einzige Voraussetzung, dass die Laufzeit auf Ihrem System installiert ist.

Führen Sie dazu einfach den folgenden Befehl in einem Terminal aus:

locken https://get.wasmer.io -sSfL | Sch

Danach müssen sie die erforderliche Datei ausführen:

wasmer test.wasm

Wenn Sie mehr über die Funktionsweise von Wasmer wissen oder den Quellcode kennen möchten, können Sie dies alles konsultieren im folgenden Link.


Hinterlasse einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert mit *

*

*

  1. Verantwortlich für die Daten: AB Internet Networks 2008 SL
  2. Zweck der Daten: Kontrolle von SPAM, Kommentarverwaltung.
  3. Legitimation: Ihre Zustimmung
  4. Übermittlung der Daten: Die Daten werden nur durch gesetzliche Verpflichtung an Dritte weitergegeben.
  5. Datenspeicherung: Von Occentus Networks (EU) gehostete Datenbank
  6. Rechte: Sie können Ihre Informationen jederzeit einschränken, wiederherstellen und löschen.