Slashdot Mirror


Boot Linux In Your Browser

An anonymous reader writes "Fabrice Bellard, the initiator of the QEMU emulator, wrote a PC emulator in JavaScript. You can now boot Linux in your browser, provided it is recent enough (Firefox 4 and Google Chrome 11 are reported to work)."

13 of 393 comments (clear)

  1. But... by Anonymous Coward · · Score: 4, Funny

    ...does it run BSD?

  2. Re:The burning question. by jra · · Score: 4, Interesting

    Like Everest, because it was there.

    There was a GIF out several years back, which I haven't been able to find any time recently (and would love a pointer to) of some guy who had something like *19* hardware emulators running on one monitor simultaneously, in 4 or 5 separate stacks.

    TRS-80, C-64, T/S-1000; everything you've ever seen an emulator for, he had running on Linux all at the same time; some hosting others.

  3. Fun guy by Anonymous Coward · · Score: 5, Interesting

    Fabrice also wrote his own version of emacs in his own realtime C compiler, and he also at one time held the record for calculating pi.

  4. Re:The burning question. by yincrash · · Score: 4, Informative
    from his tech notes

    I did it for fun, just because newer Javascript Engines are fast enough to do complicated things. Real use could be: Benchmarking of Javascript engines (how much time takes your Javascript engine to boot Linux ?). For this particular application, efficient handling of 32 bit signed and unsigned integers and of typed arrays is important. Client side processing using an x86 library, for example for cryptographic purposes. For such application, the x86 emulator can be modified to provide an API to load x86 dynamic libraries and to provide a js-ctypes like API to call the C/C++ functions from javascript. A more advanced version would allow to use old DOS PC software such as games.

  5. This is the year ........ by rust627 · · Score: 5, Funny

    .......... of Linux on the browser on the desktop.

    --
    da da da dum indeed.
  6. Re:The burning question. by gandhi_2 · · Score: 4, Funny

    So you can boot linux in your browser, then launch a browser, and boot linux in that browser....

    Yo dawg, if you had a beowulf cluster, you could run kturtle all the way down.

  7. Re:Yo dawg, by Zontar+The+Mindless · · Score: 5, Funny

    Yo dawg, JavaScript and the JVM have less to do with each other than an Orthodox rabbi and a porkchop.

    --
    Il n'y a pas de Planet B.
  8. Uh oh... by Spykk · · Score: 4, Funny

    Well, I'm off to tie up a few loose ends. It's only a matter of time before he gets X running in there. After that someone will try running firefox. Shortly after that someone will direct that copy of firefox to the link posted in the summary and then the universe will end.

  9. Mod Fabrice Bellard up! by simoncpu+was+here · · Score: 5, Insightful

    +1 Brilliant

  10. Vital Stats by modus_operandi · · Score: 5, Informative

    Let's see what this baby has under the hood:

    ~ # cat /proc/cpuinfo
    processor : 0
    vendor_id : GenuineIntel
    cpu family : 5
    model : 4
    model name : Pentium MMX
    stepping : 3
    cache size : 0 KB
    fdiv_bug : no
    hlt_bug : no
    f00f_bug : yes
    coma_bug : no
    fpu : no
    fpu_exception : no
    cpuid level : 1
    wp : yes
    flags :
    bogomips : 20.21
    clflush size : 32

    ~ # cat /proc/meminfo
    MemTotal: 30448 kB
    MemFree: 26960 kB
    Buffers: 2048 kB
    Cached: 456 kB
    SwapCached: 0 kB
    Active: 2636 kB
    Inactive: 64 kB
    SwapTotal: 0 kB
    SwapFree: 0 kB
    Dirty: 8 kB
    Writeback: 0 kB
    AnonPages: 212 kB
    Mapped: 324 kB
    Slab: 700 kB
    SReclaimable: 96 kB
    SUnreclaim: 604 kB
    PageTables: 36 kB
    NFS_Unstable: 0 kB
    Bounce: 0 kB
    CommitLimit: 15224 kB
    Committed_AS: 456 kB
    VmallocTotal: 1007592 kB
    VmallocUsed: 0 kB
    VmallocChunk: 1007592 kB
    HugePages_Total: 0
    HugePages_Free: 0
    HugePages_Rsvd: 0
    Hugepagesize: 4096 kB

    ~ # top
    Mem: 3472K used, 26976K free, 0K shrd, 2048K buff, 472K cached
    CPU: 0.5% usr 0.3% sys 0.0% nic 87.2% idle 0.0% io 6.2% irq 5.5% sirq
    Load average: 0.08 0.04 0.01 1/12 78
    PID PPID USER STAT VSZ %MEM CPU %CPU COMMAND
    78 75 root R 1136 3.7 0 12.7 top
    75 1 root S 1156 3.8 0 0.0 sh
    1 0 root S 1136 3.7 0 0.0 /bin/sh /sbin/init
    3 1 root SW< 0 0.0 0 0.0 [events/0]
    4 1 root SW< 0 0.0 0 0.0 [khelper]
    2 1 root SWN 0 0.0 0 0.0 [ksoftirqd/0]
    5 1 root SW< 0 0.0 0 0.0 [kthread]
    16 5 root SW< 0 0.0 0 0.0 [kblockd/0]
    34 5 root SW< 0 0.0 0 0.0 [kswapd0]
    35 5 root SW< 0 0.0

    --
    Well's all that ends.
  11. Re:The burning question. by Jaruzel · · Score: 4, Interesting

    Looking at the page code - it looks like he's written a generic x86 emulator in JS, and although booting Linux is undoubtably cool, has anyone tried to patch it to boot MS-DOS (or PC-DOS if you want to avoid any legality issues) ?

    Just thinking about all those classic DOS apps that will never see the light of day otherwise.

    -Jar

    --
    Together, We Can Make Slashdot Better. I Do NOT Mod ACs. - Check Me Out
  12. Booting Linux by jez9999 · · Score: 4, Funny

    Didn't work for me. It got to a text thing with a flashing cursor but stopped there. I don't see my Ubuntu desktop or browser icon.

  13. Re:Nice by GPLHost-Thomas · · Score: 4, Insightful

    How can someone be so damned silly enough to think there's no use for it... Man, a FULL x86 EMULATOR written in Javascript! Possibilities are endless. The point isn't just to run Linux, but anything that is written in C, and that you want to run in your browser. ANYTHING. Running Linux is just a proof of concept.

    Bellard wrote FF-Mpeg, Qemu, and now this. I have no words to express my admiration for his talent.