Kapitel 3. WebAssembly-Module

Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com

Ein Platz für alles und alles an seinem Platz.

Sprichwort aus dem siebzehnten Jahrhundert

Ein Betriebssystem führt ein Programm aus, das normalerweise in einer kompilierten Form vorliegt.1 Jedes Betriebssystem hat sein eigenes Format, das festlegt, wo es beginnt, welche Daten benötigt werden und wie die Anweisungen für die verschiedenen angekündigten Funktionen lauten. Bei WebAssembly ist das nicht anders. In diesem Kapitel werden wir uns ansehen, wie das Verhalten verpackt ist und wie ein Host weiß, was er damit tun soll.

Es ist möglich, dass Softwareentwickler/innen ihr ganzes Berufsleben damit verbringen, zu ignorieren, wie Programme durch diesen Prozess geladen und ausgeführt werden. Ihre Welt beginnt und endet bei int main(int argc, char **argv) oder static void main(String []args) oder sogar if __name__ == "__main__":. Das sind die bekannten Einstiegspunkte für Programme in C, Java und Python, und hier übernehmen Programmierer/innen die Verantwortung für den Kontrollfluss. Bevor Programme jedoch gestartet werden und nachdem sie beendet wurden, muss das Betriebssystem oder die Programmlaufzeit die Struktur der ausführbaren Datei aufbauen und abbauen. Der Ladeprozess muss wissen, wo die Anweisungen beginnen, wie die Datenelemente initialisiert werden, welche anderen Module oder Bibliotheken geladen werden müssen ...

Get WebAssembly: Der endgültige Leitfaden now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.