Jump to content

Recommended Posts

Posted (edited)

A very pure idea existed reguarding computation and how to buld an OS that really works, and I've heard about it though a mixture of various sources including information from the premotional materal for Chromebooks and a talk about the idea from the person who coined the turm object oriented.

 

Instead of trying to describe high level properties about this and have a lot of what would be reasonable doubt about it's realisticness, I'm going to show how simple implementation of it could be achieved. I'm a programmer and could implement almost none of this myself, However I don't consider that it would be too complicated for the right group of people.

 

Create a new OS that is currently empty and does nothing, to be coded in assembly.

 

Implement a bar at the top of the screen that can be typed to with a line of browser tab like elements below it, starting the first session with no tabs open. This dosn't need to involve object models, activeX control or the such, this is hard coded just for this task and won't be required elsewhere.

 

Typing a URL into the tab goes to that URL online to fetch the content to be executed in the respective tab. The content is in a portable assembly code, this means that it is one above assembly level code and much of it should translate directly to assembly.

 

As well as portable assembly the content can also include link elements that specify other URLs. The document is read sequentially untill a link is reached, then the link URL is read to the end before returning to the parent content just after the link.

 

So for example a content creator could start there content with a link to an HTML implementation, then continue in HTML. When executed the content would start execution at the top, some patern of execution would occur depending on the code which would read further down the content, beyond the end of the execution part to the HTML content in order to render it to the screen each frame and the such.

 

The portable assembly would be run sandboxed, this mostly means that jump instructions would have to be checked before being executed, content from one tab cannot interfere with content from another. Checksums would also be run to prevent redownloading of content and content be deleted locally if not used for a while. For example for two pages that start with link elements to Opera's implementation of WC3 HTML that were loaded in the same day, the link would not need to be re-downloaded when execution reached it in the 2nd page.

 

To communicate with each other pages can send messeges to a url, in the case of two running locally it would be localhost, they can they include further routing information like a label for the pages they with to send to or a full local address for where they want to be sure only the one page they wanted to send to receives the message, similarly pages can check that messages came from a particular source before continuing to decide if they should be actioned. Therefore a page can be both a server and a client.

 

Other features could be the ability to hide and show tabs, save and open lists of tabs and a full screen button. The reason for hiding tabs is that several pages could be open to run in the background, supply services to other pages and the such, if the user has thease open then they may not want to see thease all the time.

 

The OS would not need such complications as text rendering, fonts, privacy settings, object model, drivers (at least in the conventional sense), system configuation, request permission to, desktop etc...

 

The portable assembly needs to be very low level in order to be able to work. However some exception could be made, for example where communicating with peripheral hardware connected to the PC, to supply a slightly higher level of access, for example to provide a list of all connected hardware and each ones interface etc...

 

As I see it the positives are enormous:

 

For everyone:

 

No more installations.

Easy to know whats running.

Less devision between coders and ordinary PC users while at the same time being straightforward to use for everyone.

Lots of possibilities with cloud computing.

A hyper-link could be provided to on-live and it would just work straight away.

 

For coders:

 

Competing branches of HTML.

No more complicated configuration of libraries.

Any coding enviroment to be used by anyone as soon as it is created.

Easily devide any program that contains communicating parts, for example routines, functions or objects, between any number of computers.

Refer to anyones low or high level code from anywhere in you'r programs.

Easy for your programs to communicate with each other.

Edited by alan2here

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.