google_chrome

Document Sample
google_chrome Powered By Docstoc
					Google Chrome
From Wikipedia, the free encyclopedia


                                                          Google Chrome




                          Main page of the English Wikipedia in Chrome 0.2 running on Windows Vista


        Developed by         Google


        Initial release      September 2, 2008


        Stable release       none (n/a) [+/−]


       Preview release       0.2.149.29 (September 5,2008) [+/−]


             OS              Microsoft Windows (XP and Vista)


             Size            475KB + run-time download (update)


         Available in        43 languages


     Development status      Beta
            Type             Web browser


           License           BSD license (source code and Chromium executable),
                             Google Chrome Terms of Service (Google Chrome executable)


           Website           http://www.google.com/chrome


Google Chrome is a web browser built with open source code and developed
by Google.[1][2] The name is derived from the graphical user interface frame, or "chrome",
of web browsers.[3] Chromium is the name of the open source project behind Google
Chrome, released under the BSD license.[4]

A beta version for Microsoft Windows was released on 2 September 2008 in 43
languages.

   




History
Announcement

The release announcement was originally scheduled for 3 September 2008, and a comic
by Scott McCloud was to be sent to journalists and bloggers explaining the features of
and motivations for the new browser.[5] Copies intended for Europe were shipped early
and Germanblogger Philipp Lenssen of Google Blogoscoped[6] made a scanned copy of
the 38-page comic available on his website after receiving it on 1
September 2008.[7]Google subsequently made the comic available on Google Books and
their site[8] and mentioned it on its official blog along with an explanation for the early
release.[9]

Beta release

A beta version for Microsoft Windows was released on 2 September 2008 in 43
languages. Mac OS X and Linux versions are under development.[10][11][12]

On 3 September, a Slashdot news item[13] drew attention to a passage in the terms of
service for the initial beta release, which seemed to grant to Google a license to all
content transferred via the Chrome browser.[14] The passage in question was inherited
from the general Google terms of service.[15] The Register summarized the passage as
"Your copyright goes up in smoke."[16] On the same day, Google responded to this
criticism by stating that the language used was borrowed from other products, and
removed the passage in question from the Terms of Service.[17] Google noted that this
change would "apply retroactively to all users who have downloaded Google
Chrome."[18]

The first release of Google Chrome passed the Acid1 and Acid2 tests. While it has not
yet passed the Acid3 test, Google Chrome scores 78/100—higher than bothInternet
Explorer 7 (14/100) and Firefox 3 (71/100), but lower than Opera's 84/100.[19] When
compared to equivalent "preview" or beta builds, Chrome scores lower than Firefox
(85/100), Opera (91/100), and Safari (100/100), but still higher than Internet Explorer
(21/100).[19]

Design
Primary design goals were improvements in security, speed, and stability compared to
existing browsers. There also were extensive changes in the user interface.[8]Chrome was
assembled from 26 different code libraries from Google and others from third parties
such as Netscape.[20]

Security

Chrome periodically downloads updates of two blacklists (one for phishing and one
for malware), and warns users when they attempt to visit a harmful site. This service also
is made available for use by others via a free public API called "Google Safe Browsing
API". In the process of maintaining these blacklists, Google also notifies the owners of
listed sites who may not be aware of the presence of the harmful software.[8]

Chrome will typically allocate each tab to fit into its own process to "prevent malware
from installing itself" or "using what happens in one tab to affect what happens in
another", however the actual process allocation model is more complex.[21] Following
the principle of least privilege, each process is stripped of its rights and can compute, but
can not write files or read from sensitive areas (e.g. documents, desktop)—this is similar
to "Protected Mode" that is used by Internet Explorer 7 onWindows Vista. The Sandbox
Team is said to have "taken this existing process boundary and made it into a jail";[22] for
example, malicious software running in one tab is unable to sniff credit card numbers,
interact with the mouse, or tell "Windows to run an executable on start-up" and it will be
terminated when the tab is closed. This 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.[23]

Typically, Plugins such as Adobe Flash Player are not standardized and as such, cannot
be sandboxed as tabs can be. These often need to run at, or above, the security level of
the browser itself. To reduce exposure to attack, plugins are run in separate processes that
communicate with the renderer, itself operating at "very low privileges" in dedicated per-
tab processes. Plugins will need to be modified to operate within this software
architecture while following the principle of least privilege.[8]Chrome supports
the Netscape Plugin Application Programming Interface (NPAPI),[24][25] but does not
support the embedding of ActiveX controls.[25] Also, Chrome does not have an extension
system such as Mozilla's XPInstall architecture.[26] Java applets support is available in
Chrome as part of the pending Java 6 update 10, which currently is in Release Candidate
testing.[27]

A private browsing feature called Incognito mode is provided as well. It prevents the
browser from storing any history information or cookies from the websites visited. This is
similar to the private browsing feature available in Apple's Safari and the latest beta
version of Internet Explorer 8.[28]

Speed

The JavaScript virtual machine was considered a sufficiently important project to be split
off (as was Adobe/Mozilla's Tamarin) and handled by a separate team inDenmark.
Existing implementations were designed "for small programs, where the performance and
interactivity of the system weren't that important", but web applications such
as Gmail "are using the web browser to the fullest when it comes to DOM manipulations
and Javascript". The resulting V8 JavaScript engine has features such as hidden class
transitions, dynamic code generation, and precise garbage collection.[8] Tests by Google
show that V8 is about twice as fast asFirefox 3 and the Safari 4 beta.[29]

Several websites have performed benchmark tests using the SunSpider JavaScript
Benchmark[1]tool as well as Google's own set of computationally intense benchmarks,
which includes ray tracing and constraint solving.[30] They unanimously report that
Chrome performs much faster than all competitors, including Safari, Firefox 3, Internet
Explorer 7, and Internet Explorer 8.[31][32][33][34] While Opera has not been compared to
Chrome yet, in previous tests, it has been shown to perform a bit more slowly than
Firefox 3, which in turn, is slower than Chrome.[35][36] Another blog post by Mozilla
developer, Brendan Eich, comparing the Javascript engines in Firefox 3.1 and Chrome
using the SunSpider test results, states that some tests are faster in one engine and some
are faster in the other.[37] John Resig, Mozilla's JavaScript evangelist, further commented
on the performance of different browsers on Google's own suite, finding Chrome
"decimating" other browsers, but he questions whether Google's suite is representative of
real programs. He states that Firefox performs poorly onrecursion intensive benchmarks,
such as those of Google, because the Mozilla team has not implemented recursion-tracing
yet.[38]

Stability

The Gears team was 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 similar to the one
developed by Opera in 1994, or that recently was implemented by Internet Explorer 8. A
separate process is allocated to each tab or plugin. This prevents tasks from interfering
with each other, which is good for security and stability; an attacker successfully gaining
access to one application does not gain access to all, and failure in one application results
in a Sad Tab screen of death, similar to the well-known Sad Mac. 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.

Chrome features a process management utility called the Task Manager which allows the
user to "see what sites are using the most memory, downloading the mostbytes and
abusing [their] CPU" (as well as the plugins which run in separate processes) and
terminate them.[8]

User interface




When Chrome is maximized, the title bar becomes hidden and instead, the tab bar is displayed at
the top. Also, when the mouse is moved over a link, the URI of the link is displayed in a status
                  bar at the bottom left. Otherwise, the status bar is invisible.




          When Chrome is not maximized, the title bar is shown on top of the tab bar.

The main user interface includes back, forward, refresh, bookmark, go, and cancel
options. The options are similar to Safari, while the location of the settings is similar to
versions of Internet Explorer starting with seven. The design of the minimize, maximize,
and close window buttons are based on Windows Vista.

When the window is not maximized, the tab bar appears directly under the title bar.
When maximized, the title bar disappears, and instead, the tab bar is shown at the very
top of the window. Unlike other browsers such as Internet Explorer or Firefox which also
have a full-screen mode that hides the operating system's interface completely, Chrome
can only be maximized like a standard Windows application. Therefore, the Windows
task bar, system tray, and start menu link still take space at all times unless they have
been configured to hide at all times.

Chrome includes Gears, which adds developer features that may, or may not,
become web standards, typically relating to the building of web applications (including
offline support).[8]

Chrome replaces the browser home page which is displayed when a new tab is created
with a New Tab Page. This shows[39]thumbnails of the nine most visited web sites along
with the sites most often searched, recent bookmarks, and recently closed tabs.[8]

The Omnibox is the URL box at the top of each tab, similar to the one in Opera. It
includes autocomplete functionality, but only will autocomplete URLs that were
manually entered (rather than all links), search suggestions, top pages (previously
visited), popular pages (unvisited), and text search over history. Search engines also can
be captured by the browser when used via the native user interface by pressing Tab.[8]

Popup windows "are scoped to the tab they came from" and will not appear outside the
tab unless the user explicitly drags them out.[8] Popup windows do not run in their own
process.

Chrome uses the WebKit rendering engine to display web pages, on advice from
the Android team.[8] Like most browsers, Chrome was extensively tested internally before
release with unit testing, "automated user interface testing of scripted user actions"
and fuzz testing, as well as WebKit's layout tests (99% of which Chrome is claimed to
have passed). New browser builds are automatically tested against tens of thousands of
commonly accessed websites inside of the Google index within 20-30 minutes.[8]

Tabs are the primary component of Chrome's user interface and as such, have been
moved to the top of the window rather than below the controls. This subtle change
contrasts with many existing tabbed browsers which are based on windows and
contain tabs. Tabs (including their state) can be transferred seamlessly between window
containers by dragging. Each tab has its own set of controls, including the Omnibox.[8]

Chrome allows users to make local desktop shortcuts that open web applications in the
browser. The browser, when opened in this way, contains none of the regular interface
except for the title bar, so as not to "interrupt anything the user is trying to do." This
allows web applications to run alongside local software (similar to Mozilla
Prism and Fluid).[8]

By default, the status bar is hidden whenever it is not being used. However, it appears at
the bottom left corner whenever a page is loading and when a hyperlink is hovered over.

Reception
The Daily Telegraph's Matthew Moore summarizes the verdict of early reviewers:
"Google Chrome is attractive, fast and has some impressive new features, but may not—
yet—be a threat to its Microsoft rival."[40]

Microsoft reportedly "played down the threat from Chrome" and "predicted that most
people will embrace Internet Explorer 8."[41] Opera Software said that "Chrome will
strengthen the Web as the biggest application platform in the world."[41] Mozilla said that
Chrome's introduction into the web browser market comes as "no real surprise", that
"Chrome is not aimed at competing with Firefox", — and furthermore, should not
affect Google's financing of Firefox.[42][43]

Chrome’s design bridges the gap between desktop and so-called “cloud computing.” At the touch
of a button, Chrome lets you make a desktop, Start menu, orQuick Launch shortcut to any Web
page or Web application, blurring the line between what’s online and what’s inside your PC. For
example, I created a desktop shortcut for Google Maps. When you create a shortcut for a Web
application, Chrome strips away all of the toolbars and tabs from the window, leaving you with
something that feels much more like a desktop application than like a Web application or page.

—PC World[44]

Privacy

Users quickly began raising privacy concerns about data collection in Chrome. The
omnibar's auto-suggest features send data back to Google about the keystrokes inputted.
A Google representative said that about 2% of the data would be stored along with the IP
address of the computer that sent the data. Google also stated users can opt-out by turning
off the auto-suggest feature or switching to Incognito.[45]

Security flaws

A security expert has criticized what serves as the automatic file download feature that
comes enabled by default in Google Chrome. They argued that it could be used easily by
an attacker to trick a user into opening a malicious executable file.[46]

A denial-of-service vulnerability was found that allowed a malicious web page to crash
the whole web browser.[47][48] Google Chrome developers confirmed the flaw, and it was
fixed in the 0.2.149.29 release.[49]