NickJohnson wrote:Okay, okay, I'll stop giving you a hard time.
I can see the potential advantage in making a standalone application use client-side web technologies, just because they are standardized and many people know how to use them. It just seems like an odd choice, since many of the complexities in stuff like HTML rendering are due to the fact that a small amount of information has to describe a complex screen layout, when there is no such restriction for normal GUI applications. Still, with the choice being between some new GUI framework and something web-based, the latter does seem sort of attractive.
This is, of course, not much of an argument for trying to write a kernel in JS.
I agree with you. Ok, writting a kernel in JS is not a good idea, but I wanna do it

.
Tosi wrote:I think the idea is interesting but could better be implemented as a shell which integrates the system and the internet tightly. i.e., you open a directory and it opens as a tab in the browser. when you open an application, it can open as a tab in the browser. If it is a command line application it can be run from a terminal in its own tab. However all this could be built on top of a regular kernel written in C or whatever low level language, for example, have the browser/shell run as an X window manager or as a replacement for the Windows shell.
As for actually writing the kernel using "web technology", you have the same problems as writing a kernel in Java (which has been done with some success). Unless you write a javascript compiler that creates native machine code or assembly and add extensions for accessing low-level aspects of the system, you will have to write a microkernel that handles the low-level stuff and interprets the javascript (which should be compiled to bytecode). There will be a performance hit here, but you could still make it work possibly. HTML/CSS seems useless for writing the actual kernel, since it is just meant for formatting information. You could use XML for configuration files and this does work pretty good, but you will have to either write an XML parser or port an existing one.
If you just want to define the user-interface using HTML/CSS/Javascript, you are better off writing a window manager or widget kit as mentioned in the wiki.
In fact, I was creating a OS based on Linux which has the GUI in web technologies. But I thought: what about writting the medium and low level elements in web tech.? It would be stupid and difficult, but I would be different.
So, I have two options: writting a javascript compiler that creates native machine code (for me, the most difficult option, but the better) or writting a microkernel that interprets javascript.
You suggest XML for configuration files... What about JSON?
I just wanted to define the user-interface in web tech., but now I wanna do something different. A 99% web OS.
bluemoon wrote:Are you guys talking about Chromium OS?
Chromium OS is not a web OS, it has almost code in native tech.
Combuster wrote:WebOS is just a stupid buzzword IMNSHO.
After all, any of the free internet kiosks you'll find at college would qualify as a webos pretty much regardless of the definition you give to the term. And we probably all agree we rather browse the internet on our home computer where our bookmarks do get preserved.

Yes, but our home computer could run a webOS that could run offline and online too.
If I was very, very crazy, and I wanted to implement this idea, what step would have to be the first? Creating the Javascript compiler [apart from the planification of the project].
Thanks!
EDIT: what about using Rhino Javascript Compiler to translate Javascript to Java and then compiling Java to native code with GCJ? By the way, v8 compiles Javascript?