Google Chrome is a browser that combines a minimal design with sophisticated technology to make the web faster, safer, and easier. It has one box for everything: Type in the address bar and get suggestions for both search and web pages. Will give you thumbnails of your top sites; Access your favorite pages instantly with lightning speed from any new tab. Google Chrome is an open source web browser developed by Google. Its software architecture was engineered from scratch (using components from other open source software including WebKit and Mozilla Firefox) to cater for the changing needs of users and acknowledging that today most web sites aren’t web pages but web applications. Design goals include stability, speed, security and a clean, simple and efficient user interface.
• Sandboxing. Every tab in Chrome is sandboxed, so that a tab can display contents of a web page and accept user input, but it will not be able to read the user’s desktop or personal files.
Google say they have “taken the existing process boundary and made it into a jail”. There is an exception to this rule; browser plugins such as Adobe Flash Player do not run within the boundaries of the tab jail, and so users will still be vulnerable to cross-browser exploits based on plugins, until plugins have been updated to work with the new Chrome security. Google has also developed a new phishing blacklist, which will be built into Chrome, as well as made available via a separate public API.
• Privacy. Google announces a so-called incognito mode claiming that it “lets you browse the web in complete privacy because it doesn’t record any of your activity”. No features of this, and no implications of the default mode with respect to Google’s database are given.
• Speed. Speed improvements are a primary design goal.
• Multiprocessing. The Gears team were considering a multithreaded browser (noting that a problem with existing web browser implementations was that they are inherently single-threaded) and Chrome implemented this concept with a multiprocessing architecture. A separate process is allocated to each task (eg tabs, plugins), as is the case with modern operating systems. This prevents tasks from interfering with each other which is good for both security and stability; an attacker successfully gaining access to one application does not give them access to all and failure in one application results in a “Sad Tab” screen of death. This strategy exacts a fixed per-process cost up front but results in less memory bloat overall as fragmentation is confined to each process and no longer results in further memory allocations. To complement this, Chrome will also feature a process manager which will allow the user to see how much memory and CPU each tab is using, as well as kill unresponsive tabs.
• Rendering Engine. Chrome uses the WebKit rendering engine on advice from the Gears team because it is simple, memory efficient, useful on embedded devices and easy to learn for new developers.
• Tabs. While all of the major tabbed web browsers (e.g. Internet Explorer, Firefox) have been designed with the window as the primary container, Chrome will put tabs first (similar to Opera). The most immediate way this will show is in the user interface: tabs will be at the top of the window, instead of below the controls, as in the other major tabbed browsers. In Chrome, each tab will be an individual process, and each will have its own browser controls and address bar (dubbed omnibox), a design that adds stability to the browser. If one tab fails only one process dies; the browser can still be used as normal with the exception of the dead tab. Chrome will also implement a New Tab Page which shows the nine most visited pages in thumbnails, along with the most searched on sites, most recently bookmarked sites, and most recently closed tabs, upon opening a new tab, similar to Opera’s “Speed Dial” page.