Google Chrome: Underlying technology review
Google says its design philosophy with Chrome was to “start from scratch, and design something based on the needs of today’s web applications.” (You’ll find this and other soundbites in Google’s Chrome comic book.)
In truth, though, it hasn’t quite “started from scratch.” The company admits that it’s “adopted good ideas from others”, the most obvious example being the open source WebKit rendering engine which is embedded into Chrome.
Still, there’s no sense in reinventing the wheel, and WebKit is an excellent foundation for a browser. It sails through the brutal Acid3 standards test, which neither IE nor Firefox can claim. And it’s known for its speed and memory-efficiency, which is more than can be said for its rivals.
Additionally, WebKit is also used by Apple’s Safari browser, so web developers have already had several years to make sure their sites render correctly under WebKit. All told, it’s a smart, pragmatic choice.
The appliance of science
Unfortunately, for now there’s no Java plug-in, but we’re sure Sun will step up soon. And Microsoft will presumably follow with a Chrome-compatible implementation of ActiveX just as soon as hell freezes over.
A strong multi-tasker
The big architectural innovation in Chrome is launching tabs as independent processes, rather than as threads within an overarching parent process, as other browsers do. The advantages are obvious: in Chrome it’s impossible for a buggy web application to affect the stability of other tabs, and it’s effortless for the browser to distribute tasks between multiple CPU cores. Google admits that this approach uses “a bit more memory up-front”, since each tab has to have its own copy of various resources. But in practice we’ve found Chrome actually takes up less memory in everyday use than Firefox or IE.
What’s more, thanks to the provision of a process management console, you can monitor how much memory, CPU time and network bandwidth each tab is using. So if a runaway process tries, in Google’s own words, to “download the entire internet,” you can easily identify it and kill it. And since this completely ends the process and releases all its resources, Chrome shouldn’t suffer from the gradual memory creep that plagues Firefox.
A final concern is security: the majority of today’s malware infections and internet scams are web-based, so the browser is the ideal venue for front-line defences. Chrome is written from the ground up with strict sandboxing, so web pages can’t access any files or data on your system without your explicit permission. It looks possible that this could break some legitimate web applications, though we’ve yet to see this happen. But even if it does, the small changes required to work within Chrome’s strict security model should improve security for users of all browsers.