Zum Inhalt springen

Google Chrome

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 1. November 2010 um 10:27 Uhr durch 188.23.134.34 (Diskussion) (+progspr, quelle siehe chromium source). Sie kann sich erheblich von der aktuellen Version unterscheiden.
Google Chrome

Logo Google Chrome
Screenshot von Google Chrome 4 unter Windows 7
Basisdaten

Hauptentwickler Google Inc.
Entwickler Google Inc.
Erscheinungsjahr 2. September 2008[1]
Aktuelle Version 7.0.517.41 (Windows, Mac & Linux)
(19. Oktober 2010)
Aktuelle Vorabversion 8.0.552.11 (Windows, Mac, & Linux Dev channel)
(22. Oktober 2010)
Betriebssystem Windows XP/Vista/7 sowie Mac OS X und Linux
Programmier­sprache C++ / Java
Kategorie Webbrowser
Lizenz BSD-Lizenz (Quelltext und Chromium-Executable),[2]
Google Chrome Terms of Service[3]
deutschsprachig ja
google.com/chrome

Google Chrome ist ein Webbrowser, der von Google Inc. entwickelt wird und seit dem 2. September 2008 verfügbar ist. Am 11. Dezember 2008 erschien die erste finale Version. Zentrales Konzept ist die Aufteilung des Browsers in optisch und auf Prozessebene getrennte Browser-Tabs.

Google Chrome baut auf der Rendering-Engine WebKit auf, die ihrerseits aus dem KDE-Projekt KHTML hervorging und auch in Apples Browser Safari zum Einsatz kommt.

Google Chrome soll ein integraler Bestandteil des Google Chrome OS werden, Googles auf Linux basierendem Betriebssystem für Netbooks und ähnlich leistungsschwache Rechner.

Allgemein

Zu Beginn gab es den Browser nur für Microsoft Windows XP (ab SP2), Vista und Windows 7. Seit Dezember 2009 waren Betaversionen für Linux und Mac OS X verfügbar, seit Version 5 (Mai 2010) gibt es auch stabile Versionen für diese Betriebssysteme.

Nach Angaben der Frankfurter Allgemeinen Zeitung[4] geht es bei der Einführung des Google-Browsers in erster Linie um einen weiteren wichtigen Schritt in Richtung Cloud Computing. Es sei weniger eine Konkurrenz zu Microsofts Internet Explorer als vielmehr zu Microsofts Strategie, ein Supernetz namens Live Mesh aufzubauen, also die systematische Auslagerung aller Programme vom PC, Notebook oder Mobiltelefon auf kostenlos nutzbare Online-Angebote.

Chromium

Der Quelltext von Google Chrome wird von Google unter dem Namen Chromium im Rahmen der BSD-Lizenz als quelloffenes Software-Projekt zur Verfügung gestellt.[5][6] Das Kopieren und Ändern der Binärversion von Chrome selbst verbieten die „Terms of Service“ jedoch ausdrücklich.

Chromium ist mit Google Chrome weitestgehend identisch, lediglich die Markenkennzeichen (Name und Logo) von Google Chrome wurden entfernt. Ferner nutzt Chromium nicht die Paketverwaltung GoogleUpdate für Aktualisierungen.[7]

Software

In Chrome wird, wie auch in Android, die von Apple vorangetriebene Rendering-Engine WebKit verwendet. Die JavaScript-Implementierung V8 ist als Freie Software veröffentlicht worden[8] und stammt vom dänischen V8-Team, unterstützt Mehrkernprozessoren und ein dynamisches Optimierungsverfahren, bei dem JavaScript-Objekte versteckt um geteilte Klassen erweitert werden.

Auch das Tabbed Browsing wurde von Grund auf neu entwickelt. Anders als in vergleichbaren Browsern, in denen alle Reiter Teile eines einzelnen laufenden Programmes sind, sollen die Reiter in Chrome in sich geschlossene Prozesse sein und als solche auch in einem eigenen Task-Manager kontrollierbar sein (aus Leistungsgründen teilen sich allerdings in der Standardkonfiguration kleine Gruppen von Reitern einen Prozess). Durch die Aufteilung in mehrere Prozesse soll vermieden werden, dass ein einziger Reiter, in dem ein rechenintensiver Prozess läuft, die Leistung des gesamten Browsers in Mitleidenschaft zieht. Außerdem werden die Prozesse der Reiter (Renderer-Prozesse) in einer Sandbox ausgeführt und haben damit nur sehr eingeschränkte Möglichkeiten, mit anderen Prozessen zu interagieren, Dateizugriffe sind nur über das Hauptprogramm (Browser-Prozess) möglich.[9] Dadurch wird das Gros an Schadcode, das von geöffneten Websites aus eine Sicherheitslücke im Browser ausnutzt, gehindert, einen Computer zu befallen. Pop-up-Fenster bleiben zunächst innerhalb des jeweiligen Reiters.

Die Benutzerschnittstelle lässt die Reiterfenster eigenständiger erscheinen, indem sie eigene Kontrollschaltflächen besitzen sowie eine eigene Adresszeile („Omnibox“). Diese macht unter anderem Vorschläge und erlaubt eine Volltextsuche über bisher besuchte Webseiten sowie über bisherige Suchanfragen auf zahlreichen Seiten, wie zum Beispiel Wikipedia. Auch ist die Möglichkeit vorgesehen, Reiter für Webanwendungen ohne allgemeine Benutzerschnittstellenelemente darzustellen. Des Weiteren wird eine automatisch generierte Startseite mit den häufigst besuchten Webseiten und Suchdiensten dargestellt; auch ein Surfmodus („Incognito“), der keine Spuren auf dem lokalen System hinterlässt, ist vorhanden.

Mittels der frei zugänglichen Google Safe Browsing API erhält Chrome Listen gefährlicher Internetseiten. Chrome unterstützt die Google-API Gears und ermöglicht insbesondere Gears-Anwendungen mit mehreren Threads.[10] Mittels der Laufzeitumgebung Gears kann Google Chrome serverbasierte Webanwendungen wie eine Desktop-Anwendung ausführen.

Architektur

Chrome besteht aus drei Teilen. Der Browser selbst ist für die Steuerung der Software zuständig, der Renderer ist im Browser implementiert und stellt einen Subprozess wie zum Beispiel einen Reiter dar. Innerhalb des Renderers befindet sich WebKit.[11] Chrome ist komponentenbasiert aufgebaut.[12] Die Interprozesskommunikation arbeitet nachrichtenorientiert und benutzt Channeling.[13]

Geschwindigkeit

Google gibt an, eine besondere Stärke des Browsers sei seine Geschwindigkeit. Zusätzlich wird Chrome eine effiziente Speicherverwaltung attestiert. Insbesondere V8, die virtuelle Laufzeitumgebung von JavaScript in Chrome, soll laut Google andere Implementierungen an Geschwindigkeit übertreffen. So läuft JavaScript in Chrome bei einem Test (Peacekeeper-Benchmark) etwa doppelt so schnell wie im Firefox 3.6 oder rund neunmal so schnell wie im Internet Explorer 8. Bei sehr rechenintensiven Tests werden diese Werte noch übertroffen. [14]

Stabilität

Die Entwickler streben durch die Multiprozessarchitektur ein stabiles Laufzeitverhalten an. Dabei wird jeder neue Renderer (also jeder neue Reiter oder jede neue Seite) und jedes Plugin in eigenen Prozessen gestartet. Falls es mit einem Reiter ein Problem gibt und der Prozess endet, so wird anstelle des Inhalts bei dem Reiter ein „Sad Tab“ angezeigt. Analog wird ein „Sad Plugin“ bei fehlerhaften Pluginprozessen angezeigt.[12]

Falls ein Reiter besonders viel Speicher, Prozessorleistung oder Netzwerkbandbreite verwendet, so kann der Benutzer dies mit dem Task-Manager erkennen und den Prozess des Reiters einzeln beenden.

Quellcode

Sowohl die aus WebKit übernommene Rendering-Engine WebCore als auch die neu entwickelte V8-Javascript-Engine und der Rest von Google Chrome sind in C++ entwickelt. Es existieren Buildanweisungen und -dateien sowie Snapshots von Chromium für Microsoft Windows, Mac OS X und Linux.[15]

Kritik

Das Bundesamt für Sicherheit in der Informationstechnik gab kurz nach Veröffentlichung des Browsers zu bedenken, dass in einigen Fällen Daten an Google gesendet werden.[16] Beim Tippen in der Adresszeile („Omnibox“), die zugleich Eingabefeld für Suchbegriffe und Webadressen ist, wird jedes Schriftzeichen unverschlüsselt an die vom Benutzer gewählte Suchmaschine (standardmäßig Google, es kann aber auf jede Suchmaschine umgestellt werden) übermittelt, um Vervollständigungsvorschläge zu ermöglichen.[17][18] Dieses Verhalten ist identisch mit der Suchbox von Internet Explorer und Firefox und lässt sich in den Einstellungen deaktivieren.

Google führt in seinen Datenschutzbestimmungen diverse Informationen auf, die von Chrome an Google gesendet werden. Bis zur Version 4.0 erhielt jede Installation eine eindeutige Identifikationsnummer, die bei der Installation, bei der ersten Verwendung und bei jeder automatischen Aktualisierungsprüfung mit weiteren grundlegenden Informationen zur Browser-Installation an Google gesendet wurde. Die Identifikationsnummer konnte manuell[19] entfernt oder über Software-Erweiterungen unterdrückt werden. Seit Version 4.1 verzichtet Google auf die ID.

Hat der Nutzer zugestimmt, werden bei Programmfehlern Daten an Google übermittelt. Darunter befinden sich „Daten über momentan geöffnete Dateien, Programme und Dienste sowie Datei-Inhalte“; in früheren Versionen ebenfalls die erwähnte Identifikationsnummer. Google begründet den Schritt mit einer dadurch vereinfachten Problembehebung.[20]

Versionen

Als erste Veröffentlichung wurde am 2. September 2008 eine Windows-Version mit der Versionsnummer 0.2 freigegeben. Die erste stabile Version (1.0) folgte am 11. Dezember 2008. Mit Version 4.0 kam die erste auch auf Linux und Mac OS X lauffähige Version als Beta-Version heraus. Mit Version 5.0 wurden diese in einer stabilen Version veröffentlicht. Die Entwicklerversionen tragen inzwischen die Nummer 8.0.


Legende: Alte Version Ältere Version; noch unterstützt Aktuelle Version Aktuelle Vorabversion Zukünftige Version
Versionsgeschichte von Google Chrome
Webkit-
Version
V8-Version Version Veröffentlichung Anmerkungen und wichtige Änderungen
522 0.3 Ältere Version; nicht mehr unterstützt: 0.2 2. September 2008 Erste Veröffentlichung als Beta-Version für Windows
Ältere Version; nicht mehr unterstützt: 0.3 29. Oktober 2008 Verbesserte Pluginstabilität
525 Ältere Version; nicht mehr unterstützt: 0.4 24. November 2008 Lesezeichenmanager mit Export und Import, Datenschutzabschnitt in den Optionen, Sicherheitsupdates.
528 Ältere Version; nicht mehr unterstützt: 1.0 11. Dezember 2008 Erste stabile Version.
530 0.4 Ältere Version; nicht mehr unterstützt: 2.0 24. Mai 2009 Vollbild, 35% schnelleres JavaScript beim SunSpider Benchmark Test, Unterstützung vom Mausrad
532 1.2 Ältere Version; nicht mehr unterstützt: 3.0 15. September 2009 Neue „Neuer Tab“-Seite, bis zu 25% schnelleres JavaScript, Unterstützung des HTML5-video-und-audio-Tags, Themes.
532.5 1.3 Ältere Version; nicht mehr unterstützt: 4.0 25. Januar 2010 Erweiterungen, native Unterstützung für Greasemonkey-Scripte, Lesezeichensynchronisierung, verbesserte Entwicklerwerkzeuge, verbesserte HTML5-Unterstützung[21]
Ältere Version; nicht mehr unterstützt: 4.1 17. März 2010 Integration des Google-Übersetzers und erweiterte Content-Einstellungen[22]
533 2.1 Ältere Version; nicht mehr unterstützt: 5.0 25. Mai 2010 Erste offizielle Version für Linux und Mac; bis zu 30% schnelleres JavaScript, Zoom-Einstellungen werden pro Seite gespeichert; verbesserte Unterstützung von HTML 5; Lesezeichenmanager als Tab, Synchronisierung von Browser-Einstellungen[23] integriertes Flash-Plugin
534 2.2 Ältere Version; nicht mehr unterstützt: 6.0 2. September 2010 Überarbeitetes Design der Omnibox (Adresszeile), bis zu 15% schnelleres JavaScript, Integration der Autofill-Funktion, Synchronisierung von Erweiterungen und Autofill, integrierter PDF-Betrachter[24], Unterstützung für das WebM-Format[25]
534 2.3 Aktuelle Version: 7.0 19. Oktober 2010 Verbesserte Unterstützung von HTML5, schnelleres JavaScript, Unterstützung des File-API, Behebung hunderter Bugs, erleichtertes Blockieren von Cookies
534 2.4 Vorabversion: 8.0 Dezember 2010 Hardwarebeschleunigung durch Grafikkarte, Instant-Suche, verbesserte HTML5-Unterstützung, "Disable outdated plug-ins" (Suche nach veralteten Plugins und Aktualisierungen)

Abspaltungen (Forks)

Da mit Chromium die Software-Basis des Browsers offen liegt, existieren darauf basierende Abspaltungen (Forks), die Programmteile deaktivieren oder weitere hinzufügen:

ChromePlus[26]
Ein closed-source Fork von Google Chrome, bei welchem Programmteile entfernt wurden und zusätzlich weitere Features eingebaut wurden, u. a. die Möglichkeit, inkompatible Webseiten mit der Trident Engine darzustellen. Es stehen Versionen für Debian/Ubuntu, Fedora/RedHat und Windows zum Download. Die Windows-Version ohne Installer "zip-Version" läuft als Portable Software in einem beliebigen Verzeichnis. Sie erzeugt weder Dateien außerhalb dieses Verzeichnisses noch eigene Registry-Einträge.
CrossOver Chromium[27]
Demonstrative[28] API-basierte Portierung von CodeWeavers auf Basis von CrossOver (siehe Wine), die Google Chrome unter Linux und Mac OS in der Windows-Version verfügbar macht. Crossover Chromium ist ausdrücklich als proof of concept und nicht als „Produktions“-Software gedacht, das heißt als Modellfall für die „Portierung“ von Windows-Software auf Linux und Mac mittels Wine.
SRWare Iron[29]
ein Google-Chrome-Fork von SRWare, bei welchem Programmteile entfernt wurden, die zur Informationsübermittelung an Google dienen. Iron war die erste derartige Portierung. Es erschien bereits kurze Zeit nach der Veröffentlichung von Chrome und wird auch als Portable Software für USB-Sticks angeboten.
Stainless[30]
Google-Chrome-Fork von Mesa Dynamics, LLC, für Mac OS X (ab 10.5).
Dragon[31]
ein Google-Chrome-Fork von Comodo, bei welchem Programmteile entfernt wurden, die zur Informationsübermittelung an Google dienen. In Dragon wurden einige Sicherheitsfunktionen hinzugefügt. Die angebotenen Versionen sind aktuell.
Commons: Google Chrome – Sammlung von Bildern, Videos und Audiodateien

Einzelnachweise

  1. googleblog.blogspot.com.
  2. Google Chromium Lizenz (Google Chrome-Executable). Google INC., abgerufen am 9. Januar 2009.
  3. Google Chrome – Nutzungsbedingungen (Google Chrome-Executable). Google INC., abgerufen am 9. Januar 2009.
  4. „Google Chrome: das trojanische Browser-Pferd“. Frankfurter Allgemeine Zeitung (FAZ), abgerufen am 9. Januar 2009.
  5. Projektseite von Chromium. Google INC., abgerufen am 9. Januar 2009.
  6. Quelltext von Google Chrome und Chromium. Google INC., abgerufen am 9. Januar 2009 (englisch).
  7. Google Chrome, Chromium, and Google. Google INC., abgerufen am 9. Januar 2009 (englisch).
  8. Sourcecode von V8. Google INC., abgerufen am 9. Januar 2009 (englisch).
  9. Chromium Blog: Multi-process Architecture. Google INC., abgerufen am 9. Januar 2009 (englisch).
  10. Beschreibung von Google Chrome als Comic Zeichnung. Google INC., abgerufen am 9. Januar 2009 (englisch).
  11. Google Entwicklerdokumentation. Google INC., abgerufen am 9. Januar 2009 (englisch).
  12. a b Google Entwicklerdokumentation zur Multiprozessor Architektur. Google INC., abgerufen am 9. Januar 2009 (englisch).
  13. Google Entwicklerdokumentation zur Communication Architektur. Google INC., abgerufen am 9. Januar 2009 (englisch).
  14. Internet-Browser im Test: Benchmarks mit Firefox 4 Beta 1 gegen Safari, Chrome, Opera und Internet Explorer. In: PCGames Hardware Online. Computec Media AG, 8. Juli 2010, abgerufen am 2. Oktober 2010.
  15. Chromium Developer Documentation. Google INC., abgerufen am 28. Mai 2009 (englisch).
  16. Google Chrome mit Kratzern. Berliner Zeitung, abgerufen am 9. Januar 2009 (deutsch).
  17. „Bequem, aber kritisch“. Süddeutsche Zeitung, abgerufen am 9. Januar 2009 (deutsch).
  18. Datenübertragungsnachweise an Google (BLOG). Synflood.at, abgerufen am 9. Januar 2009 (deutsch).
  19. Eindeutige Nummer des Browsers abschalten. Golem.de, abgerufen am 9. Januar 2009 (deutsch).
  20. Google Chrome Privacy Policy. Google INC, abgerufen am 9. Januar 2009 (englisch).
  21. Weitere Änderungen betreffen Web SQL Database, Web Storage, Application Cache und Web Sockets, Version für Mac und Linux als Beta-Version.
  22. Google Chrome 4.1 mit neuen Datenschutzeinstellungen und Übersetzung – Artikel beim GoogleWatchBlog, vom 2. März 2010
  23. Google stellt Google Chrome offiziell für Linux und Mac vor - Google Chrome 5.0 – Artikel beim GoogleWatchBlog, vom 25. Mai 2010
  24. Google integriert sicheren PDF-Viewer in Chrome – Artikel bei heise online, vom 29. Juni 2010
  25. Google Chrome 6 ist fertig – Artikel bei GoogleWatchBlog, vom 2. September 2010
  26. ChromePlus. Maple Studio, abgerufen am 25. September 2009 (englisch).
  27. Fragen und Antworten zu Google Chrome. codeweavers.com, abgerufen am 9. Januar 2009 (englisch).
  28. Kein Produktivstatus für Crossover Chromium. codeweavers.com, abgerufen am 28. Januar 2010 (englisch).
  29. Download SRWare Iron. SRWare, abgerufen am 22. Februar 2010 (deutsch).
  30. Stainless als weitere alternative zu Google Chrome für Mac OS X. Mesa Dynamics, LLC, abgerufen am 6. Februar 2009 (englisch).
  31. Comodo Dragon Internet Browser. Comodo; (englisch).

Vorlage:Navigationsleiste BrowserChoice