Jumat, 03 September 2010

Google Chrome

Google Chrome is a web browser developed by Google that uses the WebKit layout engine and application framework. It was first released as a beta version for Microsoft Windows on 2 September 2008, and the public stable release was on 11 December 2008. The name is derived from the graphical user interface frame, or "chrome", of web browsers. As of August 2010, Chrome was the third most widely used browser, with 7.54% of worldwide usage share of web browsers, according to Net Applications.[3]
In September 2008, Google released a large portion of Chrome's source code, including its V8 JavaScript engine, as an open source project entitled Chromium.[4][5] This move enabled third-party developers to study the underlying source code and help port the browser to Mac OS X and Linux. A Google spokesperson also expressed hope that other browsers would adopt V8 to improve web application performance.[6] The Google-authored portion of Chromium is released under the permissive BSD license,[7] which allows portions to be incorporated into both open source and closed-source software programs.[8] Other portions of the source code are subject to a variety of open-source licenses.[9] Chromium implements the same feature set as Chrome, but lacks built in automatic updates and Google branding, and most notably has a blue-colored logo in place of the multicolored Google logo.[10]



History

For six years, Google's Chief Executive Eric Schmidt was against the idea of building an independent web browser. He stated that "At the time, Google was a small company," and he didn't want to go through "bruising browser wars". However, after co-founders Sergey Brin and Larry Page hired several Firefox developers and built a demonstration of Chrome, Mr. Schmidt admitted that "It was so good that it essentially forced me to change my mind."[11]

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.[12] Copies intended for Europe were shipped early and German blogger Philipp Lenssen of Google Blogoscoped[13] made a scanned copy of the 38-page comic available on his website after receiving it on 1 September 2008.[14] Google subsequently made the comic available on Google Books[15] and mentioned it on their official blog along with an explanation for the early release.[16]

Public release


An alpha version of Chromium for Linux, explaining the difference between Chrome and Chromium
The browser was first publicly released for Microsoft Windows (XP and later only) on 2 September 2008 in 43 languages, officially a beta version.[17] Chrome quickly gained about 1% market share despite being only available for Microsoft Windows.[16][18][19][20] After the initial surge, usage share dropped until it hit a low of 0.69% in October 2008. It then started rising again and by December 2008, Chrome again passed the 1% threshold.[21]
In early January 2009, CNET reported that Google planned to release versions of Chrome for Mac OS X and Linux in the first half of the year.[22] The first official Chrome Mac OS X and Linux developer previews[23] were announced on 4 June 2009 with a blog post[24] saying they were missing many features and were intended for early feedback rather than general use.
In December 2009, Google released beta versions of Chrome for Mac OS X and Linux.[25][26] Google Chrome 5.0, announced on 25 May 2010, was the first stable release to support all three platforms.[27]
Chrome was one of the twelve browsers offered to European Economic Area users of Microsoft Windows in 2010.[28]

Development

Chrome was assembled from 25 different code libraries from Google and third parties such as Mozilla's Netscape Portable Runtime, Network Security Services, NPAPI, as well as SQLite and a number of other open-source projects.[29] 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 in Denmark coordinated by Lars Bak at Aarhus. According to Google, 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", and therefore would significantly benefit from a JavaScript engine that could work faster.
Chrome uses the WebKit rendering engine to display web pages, on advice from the Android team.[15] 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.[15]
Chrome includes Gears, which adds features for web developers typically relating to the building of web applications (including offline support).[15] However, Google is phasing out Gears in favor of HTML5.[30]

Release history

Color Meaning
Red Old release
Green Current stable release
Light blue Current beta release
Purple Current dev release

Features

Google Chrome aims to improve security, speed, and stability. There are extensive differences from its peers in Chrome's minimalistic user interface,[15] which is atypical of modern web browsers.[40] For example, Chrome does not render RSS feeds.[41] Chrome's strength is its application performance and JavaScript processing speed, both of which were independently verified by multiple websites to be the swiftest among the major browsers of its time.[42][43] Many of Chrome's unique features had been previously announced by other browser developers, but Google was the first to implement and publicly release them.[44] For example, its most prominent graphical user interface (GUI) innovation, the merging of the address bar and search bar (the Omnibox) was first announced by Mozilla in May 2008 as a planned feature for Firefox.[45]

Standards


The results of the Acid3 test on Google Chrome 4.0
The first release of Google Chrome passed both the Acid1 and Acid2 tests. Beginning with version 4.0, Chrome passed all aspects of the Acid3 test.[46]

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 is also made available for use by others via a free public API called "Google Safe Browsing API". Google notifies the owners of listed sites who may not be aware of the presence of the harmful software.[15]
Chrome will typically allocate each tab to fit into its own process to "prevent malware from installing itself" and prevent what happens in one tab from affecting what happens in another, however, the actual process-allocation model is more complex.[47] Following the principle of least privilege, each process is stripped of its rights and can compute, but cannot write files or read from sensitive areas (e.g. documents, desktop)—this is similar to the "Protected Mode" used by Internet Explorer on Windows Vista and Windows 7. The Sandbox Team is said to have "taken this existing process boundary and made it into a jail";[48] for example, malicious software running in one tab is supposed to be unable to sniff credit card numbers entered in another tab, interact with mouse inputs, or tell Windows to "run an executable on start-up" and it will be terminated when the tab is closed.[15] 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.[49]
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.[15] Chrome supports the Netscape Plugin Application Programming Interface (NPAPI),[50] but does not support the embedding of ActiveX controls.[50] On 30 March 2010 Google announced that the latest development version of Chrome will include Adobe Flash as an integral part of the browser, eliminating the need to download and install it separately. Flash will be kept up to date as part of Chrome's own updates.[51] Java applet support is available in Chrome with Java 6 update 12 and above[52]. Support for Java under Mac OS X was provided by a Java Update released on May 18, 2010.[53]
A private browsing feature called Incognito mode is provided that prevents the browser from storing any history information or cookies from the websites visited.[54] Chrome warns on the new tab page that "this feature does not make your actions on the internet invisible", however, and the browser advises the user to be wary of:
Incognito mode is similar to the private browsing feature available in Apple's Safari, Mozilla Firefox 3.5, Opera 10.5, and Internet Explorer 8.

Speed

The JavaScript virtual machine used by Chrome, the V8 JavaScript engine, has features such as dynamic code generation, hidden class transitions, and precise garbage collection.[15] Tests by Google in September 2008 showed that V8 was about twice as fast as Firefox 3.0 and the WebKit nightlies.[citation needed]
Several websites performed benchmark tests using the SunSpider JavaScript Benchmark tool as well as Google's own set of computationally intense benchmarks, which include ray tracing and constraint solving.[55] They unanimously reported that Chrome performed much faster than all competitors against which it had been tested, including Safari (for Windows), Firefox 3.0, Internet Explorer 7, Opera, and Internet Explorer 8.[56][57][58][59][60][61]
On September 3, 2008, Mozilla responded by stating that their own TraceMonkey JavaScript engine (then in beta), was faster than Chrome's V8 engine in some tests.[62][63][64] 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 questioned whether Google's suite was representative of real programs. He stated that Firefox 3.0 performed poorly on recursion intensive benchmarks, such as those of Google, because the Mozilla team had not implemented recursion-tracing yet.[65]
Two weeks after Chrome's launch, the WebKit team announced a new JavaScript engine, SquirrelFish Extreme,[66] citing a 36% speed improvement over Chrome's V8 engine.[67][68][69]
Chrome uses DNS prefetching to speed up website lookups, as do Firefox[70] and Safari[71]. This feature is available in Internet Explorer as an extension, and in Opera as a UserScript.

Stability

The Gears team implemented a multi-process architecture in Chrome,[72] similar to Loosely Coupled Internet Explorer (LCIE) implemented by Internet Explorer 8.[73] By default, a separate process is allocated to each site instance and plugin, a procedure referred to as process isolation.[74] This prevents tasks from interfering with each other, increasing security and stability. An attacker successfully gaining access to one application cannot gain access to others,[75] and failure in one instance results in a Sad Tab screen of death, similar to the well-known Sad Mac, except only a single tab crashes instead of the whole application. This strategy exacts a fixed per-process cost up front, but results in less memory bloat overall as fragmentation is confined to each instance and no longer requires further memory allocations.[76]. Safari[77] and Firefox[78] are also adopting this architecture in upcoming versions, meaning that most common browsers will use a multi-process architecture in the near future.
Chrome includes a process management utility called Task Manager which allows the user to see what sites and plugins are using the most memory, downloading the most bytes and over-utilizing the CPU" and provides the ability to terminate them.[15]

User interface


Google Chrome's user interface on Mac OS X
By default, the main user interface includes back, forward, refresh, bookmark, go, and cancel buttons. The home button can be configured through options to take the user to the New Tab Page or a custom home page.
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.[15]
The Omnibox is the URL box at the top of each tab, which combines the functionality of both the Address bar and search box. If a user enters the URL of a site previously searched from, Chrome allows pressing Tab to search the site again directly from the Omnibox. When a user starts typing in the Omnibox, Chrome provides suggestions for previously visited sites (based on the URL or in-page text), popular websites (not necessarily visited before - powered by Google Suggest), and popular searches. Although Google Suggest can be turned off, suggestions based on previously visited sites can not be turned off. Chrome will also autocomplete the URLs of sites visited often.[15] If a user types several keywords into the Omnibox and press enter, Chrome will conduct the search using the default search engine.
When Google Chrome is not maximized, the tab bar appears directly under the title bar. When maximized, the tabs become flush with the top of the titlebar. Like other browsers, it has a full-screen mode that hides the operating system's interface as well as the browser chrome.
One of Chrome's differentiating features is the New Tab Page, which can replace the browser home page and is displayed when a new tab is created. Originally, this showed thumbnails of the nine most visited web sites, along with frequent searches, recent bookmarks, and recently closed tabs; similar to Internet Explorer and Firefox with Google Toolbar 6, or Opera's Speed Dial.[15] In Google Chrome 2.0, the New Tab Page was updated to allow users to hide thumbnails they didn't want to appear.[79]
Starting in version 3.0, the New Tab Page was revamped to display thumbnails of the 8 most visited web sites. The thumbnails could be rearranged, pinned, and removed. Alternatively, a list of text links could be displayed instead of thumbnails. It also features a "Recently closed" bar that shows recently closed tabs and a "tips" section that displays hints and tricks for using the browser.[80]
Chrome includes a bookmark manager that can be accessed from a menu. Adding the command-line option: --bookmark-menu adds a bookmarks button to the right of the Omnibox that can be used in place of the bookmarks bar.[81] However, this functionality is currently unavailable on the Linux and Mac platforms.[82]
Popup windows "are scoped to the tab they came from" and will not appear outside the tab unless the user explicitly drags them out.[15]
Google Chrome's options window has three tabs: Basic, Personal Stuff, and Under the Hood. The Basic tab includes options for the home page, search engine, and default browser. The Personal Stuff tab lets users configure saved passwords, form autofill, browsing data, and themes. The Under the Hood tab allows changing network, privacy, download, and security settings.
Chrome does not have a status bar, but displays loading activity and hover-over information via a status bubble that pops up at the bottom left of the relevant page.
For web developers, Chrome features an element inspector similar to the one in Firebug.[70]
As part of Google's April Fools' Day jokes, a special build of Chrome was released on 1 April 2009 with the additional feature of being able to render pages in anaglyph 3D.[83]

0 komentar:

Posting Komentar

Share

Twitter Delicious Facebook Digg Stumbleupon Favorites