Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

Chromium (web browser)

From Wikipedia, the free encyclopedia
Open-source web browser project

Chromium
Chromium version 140, showing thehome page ofWikipedia
Original authorGoogle[1]
DevelopersThe Chromium Projects,[2] controlled by Google[3]
Initial release2 September 2008; 17 years ago (2008-09-02)[1]
Repository
Written inC++ primarily,[4]HTML,CSS,JavaScript forUI and test suite[5][6]
EnginesV8,Blink (WebKit oniOS/iPadOS)[7]
Operating system
PlatformIA-32,x86-64,ARM,ARM64
LicenseLGPL,BSD-3 and others[8][9]
Websitewww.chromium.org/Home

Chromium is afree and open-sourceweb browser project, primarily developed and maintained byGoogle.[3] It is a widely usedcodebase, providing the vast majority ofcode forGoogle Chrome and many other browsers, includingMicrosoft Edge,Samsung Internet, andOpera. The code is also used by severalapp frameworks.

Licensing

[edit]

Chromium is afree and open-source software project. Owing to its origins in theWebKit project, Chromium incorporates code subject to a variety of licenses, includingLGPL,MIT,Ms-PL, andMPL (with the MPL/GPL/LGPLtri-license clause).[9] Original Google-authored portions and some portions written by Apple are shared under the3-clause BSD license.[8]

This licensing permits any party tobuild thecodebase and share the resultingbrowserexecutable with the Chromium name and logo. Thus manyLinux distributions do this, as well asFreeBSD andOpenBSD.[10] Chromium also forms the basis ofElectron, which in turn is used for many commercial and proprietarycross-platform applications, such asSlack.

Differences from Google Chrome

[edit]

Chromium provides the vast majority of source code forGoogle Chrome, but there are important differences.

Features

[edit]

Chromium lacks the followingChrome features:[10]

Branding and licensing

[edit]

Google first chose the name "Chrome" for its browser.[12][13] Then the open-source release was named "Chromium" becausechromium metal is used to makechrome plating.[1]

Chrome has the sameuser interface functionality as Chromium, but with a Google-branded color scheme. Unlike Chromium, Chrome is not open-source; its binaries are licensed asfreeware under the Google Chrome Terms of Service.[14]

Development

[edit]

The Chromium browsercodebase contains over 36 millionsource lines of code, excludingcomments andblank lines.[4]

Contributors

[edit]

Chromium has been a Google project since its inception,[1][3] and Google employees have done the bulk of thedevelopment work.[15]

Google refers to this project and the offshootChromiumOS as "the Chromium projects",[2] and its employees use @chromium.orgemail addresses for this development work. However, in terms of governance, the Chromium projects are not independent entities; Google retains firm control of them.[3]

The Chromiumbrowser codebase is widely used, so others have made important contributions, most notablyMicrosoft,Igalia,Yandex,Intel,Samsung,LG,Opera,Vivaldi, andBrave.[15][3] Some employees of these companies also have @chromium.org email addresses.

Architecture

[edit]

Google designed the first multi-process browser.[16][17] Compared to single-process designs, this architecture has better responsiveness with many browsertabs open and security benefits ofprocess isolation, but with the trade-off of higher memory usage.[18][19] This was later refined as per-process website isolation, providing additional security.[18]

Another important design decision was for the browser'suser interface to beminimalistic.[17][20][21]

Thebrowser engine was originally based onApple'sWebKit, which Google deemed the "obvious choice" of available options.[22] However, Google's novel multi-process design required engine changes. This divergence from Apple's version increased over time, so in 2013 Google officiallyforked its version as theBlink engine.[22][23]

Programming languages

[edit]

C++ is the primarylanguage, comprising over half of the codebase.[4] This includes theBlink andV8engines, the implementation ofHTTP and otherprotocols, the internalcaching system, theextension API, and most of theuser interface.[24]

The rest of the user interface, called the WebUI, is implemented inHTML,CSS, andJavaScript (usually viaTypeScripttranspilation).[24][5] An extensive collection ofweb platform tests is also written in these languages plusXML.[6][4]

Third-partylibraries that provide essential functionality,[25] such asSQLite and numerouscodecs, are written inC, C++, or beginning in 2023,[26][27] the newerRust language.[4]

Support formobileoperating systems requires special languages: forAndroid bothJava andKotlin, and foriOS bothObjective-C andSwift.[5][4]

Python is the main language of the build system,[4] which also has special configuration files for Google's GN tool.[28]

Logistics

[edit]

Thebug tracking system is a publicly accessible website.[29] Participants are identified by theiremail addresses.

The Chromiumcontinuous integration system automaticallybuilds and tests the codebase several times a day.[30]

Builds are identified by a four-partversion number that is major.minor.build.patch.[31] This versioning scheme and thebranch points that occur every six to seven weeks are fromGoogle Chrome and itsdevelopment cycle.[32]

History

[edit]

2008 to 2010

[edit]

Google Chrome debuted in September 2008, and along with its release, the Chromium source code was also made available, allowing builds to be constructed from it.[1][33][34]

Upon release, Chrome was criticized for storing auser'spasswords without the protection of a master password. Google has insisted that a master password provides no realsecurity against knowledgeablehackers, but users argued that it would protect against co-workers or family members borrowing a computer and being able to view stored passwords asplaintext.[35] In December 2009, Chromium developer P. Kasting stated: "A master password was issue 1397. That issue is closed. We will not implement a master password. Not now, not ever. Arguing for it won't make it happen. 'A bunch of people would like it' won't make it happen. Our design decisions are not democratic. You cannot always have what you want."[36]

An alpha build of Chromium 3 for Linux

Version 3 was the firstalpha available forLinux. Chromium soon incorporated native theming for Linux, using theGTK+ toolkit to allow it fit into theGNOME desktop environment.[37][38][39][40] Version 3 also introducedJavaScript engine optimizations and user-selectable themes.[41]

Version 6 introduced features for user interfaceminimalism, as one of Google's goals was to make the browser "feel lightweight (cognitively and physically) and fast".[21] The changes were a unified tools menu, no home button by default (although user configurable), a combined reload/stop button, and the bookmark bar deactivated by default. It also introduced an integratedPDF reader,WebM andVP8 support for use withHTML video, and a smarterURL bar.[42][43]

Version 7 boosted performance to twice that of prior versions viahardware acceleration.[44][45][46]

Version 8 focused on improved integration intoChromeOS and improvedcloud features. These include backgroundweb applications, host remoting (allowing users centrally to control features and settings on other computers) and cloud printing.[46]

Version 9 introduced a number of features, including a URL bar feature for exposingphishing attacks andsandboxing for theAdobe Flash plug-in. Other additions were theWebGL library and access for the newChrome Web Store.[47][48][49]

2011

[edit]
Chromium logo introduced in 2011[50]

In February, Google announced that it was considering large-scaleuser interface (UI) changes, including at least partial elimination of theURL bar, which had been a mainstay of browsers since the early years ofthe Web. The proposed UI was to be a consolidation of the row of tabs and the row of navigation buttons, the menu, and URL bar into a single row. The justification was freeing up more screen space forweb page content. Google acknowledged that this would result in URLs not always being visible to the user, that navigation controls and menus may lose their context, and that the resulting single line could be quite crowded.[51] However, by August, Google decided that these changes were too risky and shelved the idea.[52]

In March, Google announced other directions for the project. Development priorities focused on reducing the size of theexecutable, integratingweb applications andplug-ins,cloud computing, andtouch interface support.[53][54] Thus a multi-profile button was introduced to the UI, allowing users to log into multiple Google and other accounts in the same browser instance. Other additions weremalware detection and support for hardware-acceleratedCSS transforms.[55][56]

By May, the results of Google's attempts to reduce the file size of Chromium were already being noted. Much of the early work in this area concentrated on shrinking the size ofWebKit, theimage resizer, and theAndroid build system.[57] Subsequent work introduced a more compact mobile version that reduced the vertical space of the UI.[58][59]

Other changes in 2011 wereGPU acceleration on all pages, adding support for the newWeb Audio API, and theGoogle Native Client (NaCl) which permits native code supplied by third parties as platform-neutral binaries to be securely executed within the browser itself.[60][61] Google'sSkia graphics library was also made available for all Chromium versions.[62][63]

Since 2012

[edit]
The Chromium Material Icon used until 2022

The sync service added for Google Chrome in 2012 could also be used by Chromium builds.[64][65] The same year, a newAPI for high-quality video and audio communication was added, enablingweb applications to access the user'swebcam andmicrophone after asking permission to do so.[66][67] ThenGPU accelerated video decoding forWindows and support for theQUIC protocol were added.[68][69]

In 2013, Chromium's modifiedWebKitrendering engine was officiallyforked as theBlink engine.[22][23]

Other changes in 2013 were the ability to reset user profiles and newbrowser extension APIs.[70] Tab indicators for audio and webcam usage were also added, as was automatic blocking of files detected asmalware.[71]

Version 67 added the security benefit of per-process website isolation.[18] Then version 69 introduced a new browser theme, as part of the tenth anniversary of Google Chrome.[72] The same year, new measures were added to curtail abusive advertising.[73]

Since 2021, the Google Chrome sync service can no longer be used by Chromium builds.[74][11] Also, starting with version 89, onlyIntel andAMD processors with theSSE3 instruction set or later are supported.[75]

Starting with version 110, onlyWindows 10 and later are supported for Windows users.[76]

Browsers based on Chromium

[edit]

In addition toGoogle Chrome, many other activelydeveloped browsers are based on the Chromium code. Most of these areproprietary, like Chrome, but some remainfree and open-source software (FOSS), like Chromium.[77][78][79][80]

Proprietary

[edit]

Primarily non-English

Free and open-source

[edit]

Use in app frameworks

[edit]

These notableapp frameworks embed a Chromiumbrowser as the functional core of customapps:

The two prominent Chromium-basedWebView components also provide a similar way to make apps:

With either approach, the custom app is implemented withHTML,CSS,JavaScript, and other web technologies. Moreover, the app can be readily deployed on theoperating systems supported by Chromium. Since the 2010s, many apps have been created this way. (Two examples areSpotify andSlack.)[86][87]

References

[edit]
  1. ^abcdeGoogle (2 September 2008)."Welcome to Chromium". Retrieved28 April 2021.
  2. ^ab"The Chromium Projects". Google. Retrieved28 April 2021.
  3. ^abcdeShankland, Stephen (30 November 2020)."Google gets web allies by letting outsiders help build Chrome's foundation".CNET. Retrieved27 April 2021.
  4. ^abcdefg"Chromium - Language Breakdown".Open Hub. Retrieved19 February 2024.
  5. ^abc"Chromium coding style".Google Open Source. Google Source. Retrieved22 April 2021.
  6. ^ab"Web Platform Tests".Chromium repository. Retrieved27 April 2021.
  7. ^"Open-sourcing Chrome on iOS!". 2017. Retrieved26 April 2021.Due to constraints of the iOS platform, all browsers must be built on top of the WebKit rendering engine.
  8. ^ab"BSD license".Chromium repository. Retrieved27 April 2021.
  9. ^ab"Chromium Terms and Conditions".Google Code. 2 September 2008. Archived fromthe original on 22 October 2008. Retrieved27 April 2021.
  10. ^ab"Notes on Chromium".Woolyss. Retrieved3 April 2021.
  11. ^ab"Chromium sync Google API removed". 24 January 2021. Retrieved20 March 2021.
  12. ^Dougerty, Conor (12 July 2015)."Sundar Pichai of Google Talks About Phone Intrusion".The New York Times. Archived fromthe original on 19 July 2015. Retrieved25 April 2019.There is a reason when we built Chrome we minimized everything to do with Chrome so that all you spent time on was the website you cared about at the given time. We wanted the users to focus on the content they were using. The reason the product was named "Chrome" was we wanted to minimize the chrome of the browser. That's how we thought about it.
  13. ^Murphy, Glen (18 December 2012)."Why is Google Chrome browser named as Chrome?". Retrieved6 July 2020.
  14. ^"Google Chrome Terms of Service".www.google.com. Retrieved26 September 2017.
  15. ^ab"Intent to Explain: Demystifying the Blink Shipping Process".Chromium Blog. 12 November 2019. Retrieved27 April 2021.
  16. ^"Modern Multi-Process Browser Architecture". 22 January 2019. Retrieved1 December 2023.Chrome was the first browser with a multi-process architecture.
  17. ^ab"The story behind Google Chrome".YouTube. Google. 26 August 2008. Retrieved5 December 2023.
  18. ^abcKosaka, Mariko."Inside look at modern web browser (part 1)".developer.chrome.com. Retrieved1 December 2023.
  19. ^"Multi-process Architecture".www.chromium.org. Retrieved18 November 2023.
  20. ^Pilcher, Pat (13 July 2009)."Battle of the browsers - which is master of the web?".The Independent. London.Archived from the original on 15 May 2022.
  21. ^ab"User Experience".Chromium Developer Documentation. dev.chromium.org. 2009. Retrieved5 July 2009.
  22. ^abcBarth, Adam (3 April 2013)."Blink: A rendering engine for the Chromium project".blog.chromium.org. Retrieved12 March 2024.
  23. ^abBright, Peter (3 April 2013)."Google going its own way, forking WebKit rendering engine".Ars Technica.Conde Nast. Retrieved9 March 2017.
  24. ^ab"chrome/browser/ui - chromium/src.git - Git at Google".Chromium repository. Retrieved20 December 2023.
  25. ^"third_party - chromium/src.git - Git at Google".Chromium repository. Retrieved27 April 2021.
  26. ^Jansens, Dana (12 January 2023)."Supporting the Use of Rust in the Chromium Project".Google Online Security Blog. Retrieved13 January 2023.
  27. ^"Rust in Chromium".Chromium docs. Retrieved2 December 2023.
  28. ^"gn - Git at Google".gn.googlesource.com. Retrieved3 December 2023.
  29. ^"Chromium bug tracking system". Retrieved28 April 2021.
  30. ^"Tour of the Chromium Continuous Integration Console". Retrieved26 April 2021.
  31. ^Frysinger, Mike (14 March 2014)."Version Numbers".The Chromium Projects. Retrieved1 May 2015.
  32. ^LaForge, Anthony (16 December 2010)."Chrome Release Cycle -12/16/2010".Google Slides. Retrieved1 May 2015.
  33. ^Paul, Ryan (September 2008)."Google unveils Chrome source code and Linux port". Retrieved19 June 2010.
  34. ^Paul, Ryan (December 2008)."Google releases Chrome 1.0". Retrieved19 June 2010.
  35. ^"1397 - Master password is missing".bugs.chromium.org. March 2011. Retrieved29 March 2011.
  36. ^"812 - Profile/login support".bugs.chromium.org. March 2011. Retrieved29 March 2011.
  37. ^Paul, Ryan (May 2009)."Hands on: Google Chromium browser alpha for Linux". Retrieved20 June 2010.
  38. ^Paul, Ryan (June 2009)."Google releases Chrome preview for Mac OS X and Linux". Retrieved20 June 2010.
  39. ^Paul, Ryan (July 2009)."Google Chromium gains native theming support on Linux". Retrieved20 June 2010.
  40. ^Smith, Mike and Karen Grunberg (June 2009)."Danger: Mac and Linux builds available". Retrieved22 June 2010.
  41. ^Paul, Ryan (September 2009)."Chrome 3 out, JavaScript performance increased 150% since v1". Retrieved20 June 2010.
  42. ^Sneddon, Joey-Elijah (July 2010)."Chromium's Unified Menu Comes to Daily Builds". Archived fromthe original on 15 August 2010. Retrieved15 July 2010.
  43. ^Gruener, Wolfgang (July 2010)."Overview: Chrome 6, The Naked Browser". Archived fromthe original on 6 April 2012. Retrieved14 July 2010.
  44. ^Nakano, Chelsi (August 2010)."Chromium 7 Has Arrived and It's Not that Awesome". Retrieved20 August 2010.
  45. ^Gruener, Wolfgang (August 2010)."First Look: Google Increases Graphics Performance With Chrome 7". Archived fromthe original on 24 July 2012. Retrieved20 August 2010.
  46. ^abGruener, Wolfgang (October 2010)."A Preview of Chrome 8: Clouds Ahead".Conceivably Tech. Archived fromthe original on 24 July 2012. Retrieved14 October 2010.
  47. ^Bakke, Kurt (November 2010)."Google's Next Big Browser Play: Prerendering and False Start?".Conceivably Tech. Archived fromthe original on 24 July 2012. Retrieved23 October 2010.
  48. ^Schuh, Justin and Carlos Pizano (December 2010)."Rolling out a sandbox for Adobe Flash Player".Chromium Blog. Retrieved1 December 2010.
  49. ^Gruener, Wolfgang (February 2011)."Chrome 9 and 11: Instant Search, More Speed".Conceivably Tech. Archived fromthe original on 18 October 2012. Retrieved6 February 2011.
  50. ^Protalinski, Emil (16 March 2011)."Google Chrome and Chromium to get new logos".Conceivably Tech. Retrieved10 December 2017.
  51. ^Gruener, Wolfgang (February 2011)."Google May Kill Chrome URL Bar".Conceivably Tech. Archived fromthe original on 26 March 2013. Retrieved6 February 2011.
  52. ^Gruener, Wolfgang (August 2011)."Google Shelves Hidden Location Bar".Conceivably Tech. Archived fromthe original on 6 April 2012. Retrieved9 August 2011.
  53. ^Gruener, Wolfgang (March 2011)."Google Chrome in 2011: The Biggest Loser?". Archived fromthe original on 18 August 2012. Retrieved27 March 2011.
  54. ^Shankland, Stephen (March 2011)."Google working to reverse Chrome bloat".CNET. Retrieved27 March 2011.
  55. ^Gruener, Wolfgang (April 2011)."Google Preps Huge UI Update For Chrome".Conceivably Tech. Archived fromthe original on 6 April 2012. Retrieved20 April 2011.
  56. ^Paul, Ryan (June 2011)."Chrome 12 arrives with security, rendering improvements".Ars Technica. Retrieved12 June 2011.
  57. ^Bailey, Dan (May 2011)."Google Trims Fat From Chrome".Conceivably Tech. Archived fromthe original on 6 April 2012. Retrieved5 May 2011.
  58. ^Paul, Ryan (May 2011)."Chrome 13 introduces experimental hidden nav bar option".Ars Technica. Retrieved19 May 2011.
  59. ^Gruener, Wolfgang (May 2011)."Google Is Serious: You Can Kill Chrome's URL Bar".Conceivably Tech. Archived fromthe original on 19 April 2012. Retrieved19 May 2011.
  60. ^Bailey, Dan (June 2011)."No More Updates For Firefox 4, Chromium 14 Released".Conceivably Tech. Archived fromthe original on 6 April 2012. Retrieved3 June 2011.
  61. ^Paul, Ryan (September 2011)."Chrome 14 arrives with improved Lion support and NaCl".Ars Technica. Retrieved20 September 2011.
  62. ^Bailey, Dan (September 2011)."3D Web Browsing Sneaks into Google Chrome".Conceivably Tech. Archived fromthe original on 18 August 2012. Retrieved19 September 2011.
  63. ^Bailey, Dan (September 2011)."Google To Switch Chromium For Mac Graphics to Skia".Conceivably Tech. Archived fromthe original on 16 June 2012. Retrieved19 September 2011.
  64. ^Mathias, Raz (15 May 2012)."Keeping tabs on your tabs". Retrieved15 May 2012.
  65. ^Paul, Ryan (16 May 2012)."Hands-on with the new tab synchronization feature in Chrome 19".Ars Technica. Retrieved19 May 2012.
  66. ^Grunberg, Karen (31 July 2012)."Stable Channel Release". Retrieved31 July 2012.
  67. ^Paul, Ryan (31 July 2012)."Chrome 21 launches with webcam API and retina Mac support".Ars Technica. Retrieved15 August 2012.
  68. ^Grunberg, Karen (6 November 2012)."Stable Channel Release and Beta Channel".Chrome Releases.Google. Retrieved6 November 2012.
  69. ^"Issue 11125002: Add QuicFramer and friends".Chromium Code Reviews. 12 October 2012. Retrieved25 December 2020.
  70. ^Cho, Eddie (20 August 2013)."Chrome 29 adds a reset button".Download.com. CNET. Archived fromthe original on 8 April 2014. Retrieved8 April 2014.
  71. ^Grunberg, Karen; Xie, Daniel (14 January 2014)."Stable Channel Update".Chrome Releases.Archived from the original on 16 January 2014. Retrieved14 January 2014.
  72. ^"Google Chrome Browser – New Material Design – 10 Years Anniversary".TehnoBlog.org. 7 September 2018.Archived from the original on 9 March 2024.
  73. ^Bradbury, Danny (6 December 2018)."Chrome 71 stomps on abusive advertising".Naked Security. Archived fromthe original on 9 December 2018. Retrieved7 December 2018.
  74. ^Eisinger, Jochen (15 January 2021)."Limiting private API availability in Chromium".Chromium Blog. Retrieved20 March 2021.
  75. ^Weatherbed, Jess (8 February 2021)."Google Chrome will no longer support some older processors".TechRadar.Archived from the original on 11 February 2021. Retrieved16 February 2021.
  76. ^"Chrome browser system requirements".Chrome Enterprise and Education Help. Retrieved10 March 2024.
  77. ^"What are the best Chrome based browsers?".NordVPN (in Portuguese). 7 June 2019. Retrieved4 October 2024.
  78. ^"Chromium-based browsers". Alternative to.
  79. ^"10 Best Chromium-Based Browsers 2024".BrowserScan. Retrieved4 October 2024.
  80. ^"16 Best Chromium Browsers 2024 [Ranked & Reviewed]". Alvaro Trigo. 25 November 2022. Retrieved4 October 2024.
  81. ^"What Is Nwjs In Task Manager". Retrieved15 July 2025.
  82. ^"NW.js Web-Based Desktop Application Development". Retrieved15 July 2025.
  83. ^"Qt WebEngine Overview - Qt WebEngine 5.11".doc.qt.io. Retrieved9 March 2024.
  84. ^Hildenbrand, Jerry (23 March 2021)."What is the Android System WebView and why do so many apps depend on it?".androidcentral.com. Retrieved9 March 2024.
  85. ^"Introduction to Microsoft Edge WebView2".learn.microsoft.com. Retrieved9 March 2024.
  86. ^"Open Source - Spotify". Retrieved1 December 2023.Here are the sources to the great Chromium Embedded Framework that is used by the Spotify Desktop client.
  87. ^Betts, Anaïs (25 October 2016)."Building Hybrid Applications with Electron".Slack Engineering. Slack. Retrieved1 December 2023.

External links

[edit]
Wikimedia Commons has media related toChromium (web browser).
General
1990s
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000s
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010s
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020s
2020
2021
2022
2023
2024
2025
Related topics
Features, standards & protocols
Features
Web standards
Protocols
Active
Blink-based
Proprietary
FOSS
Gecko-based
WebKit-based
Multi-engine
Other
Discontinued
Blink-based
Gecko-based
MSHTML-based
WebKit-based
Other
Google free and open-source software
Software
Applications
Programming languages
Frameworks and
development tools
Operating systems
Related
a subsidiary ofAlphabet
Company
Divisions
Subsidiaries
Active
Defunct
Programs
Events
Infrastructure
People
Current
Former
Criticism
General
Incidents
Other
Software
A–C
D–N
O–Z
Operating systems
Machine learning models
Neural networks
Computer programs
Formats and codecs
Programming languages
Search algorithms
Domain names
Typefaces
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
Y
Hardware
Pixel
Smartphones
Smartwatches
Tablets
Laptops
Other
Nexus
Smartphones
Tablets
Other
Other
Advertising
Antitrust
Intellectual
property
Privacy
Other
Related
Concepts
Products
Android
Street View coverage
YouTube
Other
Documentaries
Books
Popular culture
Other
Portals:
Retrieved from "https://en.wikipedia.org/w/index.php?title=Chromium_(web_browser)&oldid=1323530243"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp