
Google Chrome is a lot more than a next generation browser; it's a prototype Cloud Operating Environment.Rather than blathering on to the blogosphere about the superficial features of Google's new Chrome browser I've spent the best part of my day studying the available material and [re]writing a comprehensive Wikipedia article on the subject which I intend for anyone to be free to reuse under a Creative Commons Attribution 3.0 license (at least this version anyway) rather than Wikipedia's usual strong copyleft GNU Free Documentation License (GFDL). This unusual freedom is extended in order to foster learning and critical analysis, particularly in terms of security
My prognosis is that this is without doubt big news for cloud computing, and as a CISSP watching with disdain at the poor state of web browser security big news for the security community too. Here's why:
Surfing the Internet today is like unprotected sex with strangers; Chrome is the condom of the cloud.The traditional model of a monolithic browser is fundamentally and fatally flawed (particularly with the addition of tabs). Current generation browsers lump together a myriad trusted and untrusted software (yes, many web sites these days are more software than content) running in the same memory address space. Even with the best of intentions this is intolerable as performance problems in one area can cause problems (and even data loss) in others. It's the web equivalent of the bad old days where one rogue process would take down the whole system. Add nefarious characters to the mix and it's like living in a bad neighbourhood with no locks.
Current generation browsers are like jails without cells.Chrome introduces a revolutionary new software architecture, based on components from other open source software, including WebKit and Mozilla, and is aimed at improving stability, speed and security, with a simple and efficient user interface.
The first intelligent thing Chrome does is split each task into a separate process ('sandbox'), thus delegating to the operating system which has been very good at process isolation since we introduced things like pre-emptive multitasking and memory protection. This exacts a fixed per-process resource cost but avoids memory fragmentation issues that plague long-running browsers. Every web site gets its own tab complete with its own process and WebKit rendering engine, which (following the principle of least privilege) runs with very low privileges. If anything goes wrong the process is quietly killed and you get a sad mac style sad tab icon rather than an error reporting dialog for the entire browser.
Chrome enforces a simple computer security model whereby there are two levels of multilevel security (user and sandbox) and the sandbox can only respond to communication requests initiated by the user. Plugins like Flash which often need to run at or above the security level of the browser itself are also sandboxed in their own relatively privileged processes. This simple, elegant combination of compartments and multilevel security is a huge improvement over the status quo, and it promises to further improve as plugins are replaced by standards (eg HTML 5 which promises to displace some plugins by introducing browser-native video) and/or modified to work with restricted permissions. There are also (publicly accessible) blacklists for warning users about phishing and malware and an "Incognito" private browsing mode.
Tabs deplace windows as first class citizens and can migrate between them like an archipelago of islands.The user interface follows the simplification trend, and much of the frame or "browser chrome" (hence the name) can be hidden altogether so as to seamlessly blend web applications (eg Gmail) with the underlying operating system. Popups are confined to their source tab unless explicitly dragged to freedom, the "Omnibox" simplifies (and remembers) browsing habits and searches and the "New Tab Page" replaces the home page with an Opera style speed dial interface along with automatically integrated search boxes (eg Google, Wikipedia). Gears remains as a breeding ground for web standards and the new V8 JavaScript engine promises to improve performance of increasingly demanding web applications with some clever new features (most notably dynamic compilation to native code).
Just add Linux and cloud storage and you've got a full blown Cloud Operating System ("CloudOS")What is perhaps most intersting though (at least from a cloud computing point of view) is the full-frontal assault on traditional operating system functions like process management (with a task manager that allows users to "see what sites are using the most memory, downloading the most bytes and abusing (their) CPU"). Chrome is effectively a Cloud Operating Environment for any (supported) operating system in the same way that early releases of Windows were GUIs for DOS. All we need to do now is load it on to a (free) operating system like Linux and wire it up to cloud storage (ala Mozilla Weave) for preferences (eg bookmarks, history) and user files (eg uploads, downloads) and we have a full blown Cloud Operating System!
Update: Republished at Sys-Con's Cloud Computing News Desk.
Update 2: Fixed URLs.
Chrome URLs:
- Official site (http://www.google.com/chrome)
- Open Source code (http://code.google.com/chromium/)
- V8 JavaScript engine (http://code.google.com/p/v8)


2 comments:
Chrome will mean different things depending on who/what you are. The one thing it does mean to everyone though is that the Internet is the operating system, and the clouds are moving closer to earh.
You are Apple;
This means that if it were not enough of a conflict of interest (Iphone VS Google's Android) to have Google CEO Eric Schmidt sit on your board - It is now. Look for Schmidt to resign sometime in the next six months.
If you are Microsoft;
This means that if you ever considered making Internet Explorer open source in the past, now is the time... You can not afford to wait, not even another minute. Expect Microsoft to make Vaporware like noise over the next few months about cloud widgets to give IE closer ties to cloud based initiatives.
If you are Yahoo;
you need to buy Mozilla.
If you are Firefox;
Keep your friends close, and your enemies closer...yes continue with your Google revenue deal, but learn how to monetize your Browser outside of a paid search deal. Leverage your large user base to form "spin-off" type "power of the crowd" businesses. Note to Firefox, hey you guys ARE a social network...you just haven't figured that out yet.
If you are Sun;
Realize that Java is even less relevant every day. First we kicked you out of client side computing because you were a resource hog. Realize that Java will now continue to be less and less relevant on the Server. What a waste of a good company... McNealy must have got hit in the head with one to many hockey pucks.
If you are a social network;
"social networks" would follow along with users in the browser. Truth be told, we thought it would be Facebook, or even more likely Firefox that would lead in this initiative. So if you are a social network, you need to know now Chrome is the first step in a series of moves that will make it unnecessary for your peeeps to ever visit your site (directly) again.
If you are an application developer;
Life used to be simple, eh? You knew that you should be developing applications for Windows, because that is where the 100's of millions of users were. Fast forward, and now you need to choose what platforms to support, and when. Of course it makes sense to develop for Windows still, but Apple now has a mass of millions of Mac OSx users, and if it a browser based app, write once for Safari, and it should work without much adaptation on the Iphone. There are over a billion cell phones in use world wide, however every phone requires writing to separately (yes even all those different flavors of Java are different phone to phone. Suddenly with Android coming, and a matching desktop browser you need to be here.
Lastly if you are a consumer;
There is always a bottleneck somewhere ... Think back 5-10 years ago, before what we now refer to broadband... Dial up was painffulllllyy slow, and when you tried to browse, the bottleneck was in your "last mile" connectivity. Once you got broadband, the lag time in reaching a site was likely in your PC (not enough ram, slow processor, etc). Before either of those issues though it was the software that was not "smart" enough to keep up with the ever faster CPU's being created.
Look for Chrome to optimize all these new "cloud" based application initiatives like Google Gears, etc. This is just another nail in the coffin for desktop based computing. In 10 years, likely 90%+ of your applications will reside somewhere outside of your home or workplace - but certainly not on your desktop.
www.twitter.com/A_F
i'm willing to try it out just to see if it works more efficiently than FireFox... if it's faster than Firefox and isn't IE, then i'll use it
Post a Comment