Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site
Search in forums












SourceForge.net Logo
Home » Community » Coffee corner » Running Linux in a browser
Running Linux in a browser [message #32434] Tue, 17 May 2011 18:22 Go to next message
dolik.rce is currently offline  dolik.rce
Messages: 1789
Registered: August 2008
Location: Czech Republic
Ultimate Contributor

We all know that todays javascript engines are very powerful... but what I've found today just made me stare at the screen, not believing my eyes Smile

Fabrice Bellard has written an x86 emulator in javascript, capable of booting and running a linux kernel: http://bellard.org/jslinux/. So if you want to run U++ CLI applications in web browser, all you need is to compile it for Pentium MMX processor, put it in an initrd image and put it together with two JS files on your web Smile At least in theory, I haven't tried it (yet) Very Happy

This really made my day, I just had to share this...

Best regards,
Honza
Re: Running Linux in a browser [message #32438 is a reply to message #32434] Tue, 17 May 2011 20:32 Go to previous messageGo to next message
chickenk is currently offline  chickenk
Messages: 169
Registered: May 2007
Location: Grenoble, France
Experienced Member
Wow. This guy is a killer, seriously. ffmpeg, Qemu, TinyCC, and now an emulator in JS...

Thanks for sharing Honza!

Lionel
Re: Running Linux in a browser [message #32449 is a reply to message #32434] Wed, 18 May 2011 12:23 Go to previous messageGo to next message
gprentice is currently offline  gprentice
Messages: 260
Registered: November 2005
Location: New Zealand
Experienced Member
It would be good if someone could write a javascript engine that doesn't have security vulnerabilities.

Re: Running Linux in a browser [message #32864 is a reply to message #32434] Wed, 15 June 2011 17:17 Go to previous message
harmac is currently offline  harmac
Messages: 16
Registered: January 2011
Promising Member
Haha, I'd guess it certainly has to be slow as fu**. Considering how incredibly slowly a fully emulated PC runs Minix on my computer, which I've recently tested for the first time using Bochs on my admittedly not too powerful Atom system, I doubt that it would be enjoyable to run it on any weaker platform in a browser. That an emulator implementation is possible in JavaScript is not very surprising, given the functional core of the language, which some may even regard as superior to C++ (although there also seem to be at least as many ugly features in the language as are in C++; I can really suggest anyone interested in JavaScript or computer history or the state of web programming to watch Douglas Crockford's video lectures, some of which, especially the first one and the last ones, include truly mind-provoking views and insights).

Anyway, JavaScript implementations still differ at least as much as do other language implementations (you have probably already heard about compiler incompatibilities in the C/C++ world). jslinux for instance didn't work for me the first time I tried it with the then current Opera (although it seemed to work now some weeks later, maybe it is being improved). It was also not freely licensed, although the website now suggests that that might be planned in the future.

IMHO, the cleaner way to make the browser become the next application platform would be to replace JavaScript with something better instead of using it as the basis for proof-of-concept development in the now and inspire people to use it even more. Then again, the lower depths on which we built our systems are ugly as well. In an ideal world, people would do better.

Nonetheless, exciting technology that this guy has built. Here is an article that links to some of his projects: http://www.softwarequalityconnection.com/2011/03/fabrice-bel lard-portrait-of-a-superproductive-programmer/
Previous Topic: GIT
Next Topic: Microsoft for Phone
Goto Forum:
  


Current Time: Thu Mar 28 12:42:32 CET 2024

Total time taken to generate the page: 0.01775 seconds