2018 | Proprietary
{blundell, clamy, rjkroege}@chromium.org
Servicification: Modularizing Chromium {blundell, clamy, - - PowerPoint PPT Presentation
Servicification: Modularizing Chromium {blundell, clamy, rjkroege}@chromium.org 2018 | Proprietary What we want: Isolation Insert high resolution image 2018 | Proprietary What is Isolation? 2018 | Proprietary What is Isolation? Source
2018 | Proprietary
{blundell, clamy, rjkroege}@chromium.org
2018 | Proprietary
Insert high resolution image
2018 | Proprietary
2018 | Proprietary
Source
Reusable code.
2018 | Proprietary
Source
Reusable code.
Run-Time
Isolate state.
against crashes & exploit.
2018 | Proprietary
Source
Reusable code.
Run-Time
Isolate state.
against crashes & exploit.
Component
Download only what is needed.
2018 | Proprietary
Source
Reusable code.
Run-Time
Isolate state.
against crashes & exploit.
Component
Download only what is needed.
Product
Different teams, with different repositories and release schedules.
2018 | Proprietary
Cornerstone of security model
Browser GPU Tab 1 Tab 2 Tab 3 Flash f(x)
2018 | Proprietary
Insert high resolution image
2018 | Proprietary
//content
Chrome Content Shell
2018 | Proprietary
//content
Chrome Content Shell
2018 | Proprietary
WebView
//content
Chrome Content Shell
2018 | Proprietary
Opera WebView
//content
Chrome Content Shell
2018 | Proprietary
Electron Opera WebView
//content
Chrome Content Shell
2018 | Proprietary
Electron Opera WebView
//content
Chrome Content Shell
2018 | Proprietary
Insert high resolution image
2018 | Proprietary
← Chrome code architecture, ~2017
2018 | Proprietary
Foundation Framework/Runtime Application
2018 | Proprietary
Foundation Framework/Runtime Application
Chrome’s Architecture derived from this layer.
2018 | Proprietary
Foundation Framework/Runtime Application
Web Platform Runtime & API lives here.
2018 | Proprietary
Service Manager Package Manager
Network File System Window Server
Viz: Compositor & GPU
Navigation
Bluetooth
USB Identity Wallet ... Blink PDF Media
Embedder Defined f(x)
Chrome Chrome cast
Chrome OS System UI
Chrome’
2018 | Proprietary
Service Manager Package Manager
Network File System Window Server
Viz: Compositor & GPU
Navigation
Bluetooth
USB Identity Wallet ... Blink PDF Media
Embedder Defined f(x)
Chrome Chrome cast
Chrome OS System UI
Chrome’
2018 | Proprietary
○ Use case: Chrome’s net stack without a browser ○ Use case: Survive net stack crashes in Chrome ○ Status: OOP Network Service launched on desktop Canary! Beta at 50%!
○ Use case: Decoupling ChromeOS SysUI from the browser ○ Status: Come on up, Rob!
2018 | Proprietary
2018 | Proprietary
○ Use case: Access user’s Google identities outside of the browser ○ Status: Identity Service built, major effort underway to use it in the browser
○ Use case: Display web content without the browser being live! ○ Use case: “Chrome WebView” ○ Status: In design exploration
2018 | Proprietary
2018 | Proprietary
○ Get a project ready to topple and coalesce resources on it
○ Critical to launch of Network Service on beta ○ Now expanding to Identity Service
○ We care about the long-term health of the codebase ○ Impactful projects beyond servicification (e.g., Blink Onion Soup)
2018 | Proprietary