Housebaked!

What's New :

The Quickest Introduction to CSS!

May 9, 2008

If you're new to CSS this is the place to start! Real life examples with complete descriptions and step-by-step instructions. read more

Pre-Planning a Website

Apr 21, 2008

Every person new to Web Development should have a peek at this article. In depth advice on the pre-planning of your website in six simple steps. read more

The Linux Guide - Update!

Apr 10, 2008

TLG has been updated after we've received contribution to the project. Thanks Hazel! read more

Win Friends and Make Them Think Like You

Apr 06, 2008

How can we change the way the people around us think? I explain just how human nature works and how we can all be happier. read more

My Weblog

Mar 29, 2008

Here's my Weblog for the little things which don’t fit here and is a place where I’ll enjoy myself rather than being too serious. Visit my Blog

Distributed Systems (serving as WebOS)

Mar 6, 2008

The earliest ideas of a computer network intended to allow general communication between users of various computers. Initial concepts were to connect various time-sharing machines directly to each other, through telephone. This concept was put to use by the Advanced Research Projects Agency Network (ARPANET). By December 5, 1969 the ARPANET had an entire 4-node network connected.

Enough history. Networking was always seen as a "tool" to enhance communication and this is still true today. Today operating systems run on computers, these are connected to the internet and then talk with other computers, often running other operating systems.

Imagine this...

Distributed systems are truly interesting once you understand the whole concept. In short, distributed computing is a method of computer processing in which different parts of a program run simultaneously on two or more computers that are communicating with each other over a network. I have a thesis that goes something a little like this:

With the use of union directories and one standard distributed filesystem protocol for both local and external traffic (9P anyone?), we could create an enourmous distributed system.

Union directories, originally introduced by Plan 9, combine resources accross either different media or accross a network allowing one computer to transparently mount let's say... another computer's /dev directory to that of its own. The advantage is obvious, the /dev directory will have both local and remote resources available. So you could use computer X to access /dev/audio on computer Y without any additional coding.

It shifts the meaning of "WebOS"

The idea people have of a web based operating system today is having certain client and host computer nodes. In simple terms it means; plugging your computer to your wall socket with it having direct connection to the World Wide Web and running an interface hosted on a remote machine. This machine hosts all your documents and files like any normal personal computer would do. It's pretty nifty, except if you consider corporate giants who might pull the plug on you since such a service would most likely be delivered with timely subscriptions. If you fail to pay up, bye-bye My Documents!

From a distributing point of view, things are pretty much the same, except the client and host machines would both run a distributed operating system, such as Plan 9 and then your computer's directories would be synched to your service provider. This approach has far superceeding benefits, because you are still able to store your files locally and both local and remote processing resources can be used.

Conclusion

It's hard to think that these kinds of systems are decades-old and forgive me for pointing this out.

Plan 9 failed simply because it fell short of being a compelling enough improvement on Unix to displace its ancestor. Compared to Plan 9, Unix creaks and clanks and has obvious rust spots, but it gets the job done well enough to hold its position. There is a lesson here for ambitious system architects: the most dangerous enemy of a better solution is an existing codebase that is just good enough.

-- Eric S. Raymond

The big drawback currently is the limitation of the internet. Speeds are way too low to implement such systems for ordinary use, but perhaps in due time...