qrios

IT ist kurios!

JavaScript bootet Linux

6 Kommentare

Es gab ja schon einige Versuche, Betriebssystemoberflächen in JavaScript nachzubilden, aber eine komplett virtuelle Maschine gab es meines Wissens bisher noch nicht. Fabrice Bellard hat inzwischen eine Implementierung online gestellt. Ruft man die Beispielseite auf startet direkt ein Linux mit dem Kernel 2.6.20 mit einer Command Line. Neben einer Shell und etlichen Unix-Tools ist selbst emacs vorhanden.

Allerdings hat das Gastsystem keinen Zugriff auf das Netzwerk. Was aber laut Forumsdiskussion kein weiteres Problem sein dürfte, da aktuelle Browser über Sockets alle notwendigen Resourcen bieten. Selbst ein einfacher XServer dürfte sich mit Hilfe von Canvas umsetzen lassen.


Written by qrios

May 17th, 2011 at 10:29 am

Posted in code,gadgets

6 Responses to 'JavaScript bootet Linux'

Subscribe to comments with RSS or TrackBack to 'JavaScript bootet Linux'.

  1. Hm, fürs Netz müsste ja eine NE2000 oder so emuliert werden. Kann mir nicht vorstellen, wie sie das machen wollten.

    Thomas Carstens

    17 May 11 at 2:04 pm

  2. Das ist echt der Hammer! Wenn das Netz noch funktioniert, dann hat man selbst in der abgeschottesten Firmenumgebung eine vollwertige Shell und kann mit Hilfe von dsniff und Konsorten schöne Dinge hinter der Firewall machen. Noch ein wenig ssh- und fuse-foo zusammen mit einem Script-Interface in das Gastsystem hinein und schon gibt es webbaierte Bots en gros. Das verspricht noch sehr spannend zu werden.

    ff

    17 May 11 at 2:19 pm

  3. @Thomas: da ja schon ein serieller Chip emuliert wird ist eine komplette Netzwerkkarte kein problem.

    @ff: Solcherlei Überlegung hab ich mir lieber verkniffen, weil sonst die Mädchen wieder schreien “Böses, böses JavaScript!!11einself”.

    qrios

    17 May 11 at 2:26 pm

  4. Pöser, pöser Pursche! Zu Poden mit ihm!

    ;-)

    ff

    17 May 11 at 2:40 pm

  5. @ff: Allerdings kann das Gastsystem nicht auf die reine tcp-Ebene runter, da diese ja nicht in der JavaScript-vm vorhanden ist. Du hast lediglich Zugriff auf die bekannten Protokolle. Man bräuchte also in der Seite noch einen Broker (z.B. Java oder Flash), der die gekapselten Pakete (http oder WebSockets) auspackt und weiterleitet.

    qrios

    17 May 11 at 2:49 pm

  6. Update: unter https://github.com/tlrobinson/node-jslinux gibt es bereits das node.js-Modul um Linux in der Console zu starten. Bei mir funktioniert es nur mit bin/jslinux – der dargestellte Weg im README hängt.

    qrios

    20 May 11 at 3:23 pm

Leave a Reply