servicification modularizing chromium
play

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


  1. Servicification: Modularizing Chromium {blundell, clamy, rjkroege}@chromium.org 2018 | Proprietary

  2. What we want: Isolation Insert high resolution image 2018 | Proprietary

  3. What is Isolation? 2018 | Proprietary

  4. What is Isolation? Source Reusable code. 2018 | Proprietary

  5. What is Isolation? Source Run-Time Reusable code. Isolate state. Sandbox. Guard against crashes & exploit. 2018 | Proprietary

  6. What is Isolation? Source Run-Time Component Reusable code. Isolate state. Download only Sandbox. Guard what is needed. against crashes & exploit. 2018 | Proprietary

  7. What is Isolation? Source Run-Time Component Product Reusable code. Isolate state. Download only Different teams, Sandbox. Guard what is needed. with different against crashes & repositories and exploit. release schedules. 2018 | Proprietary

  8. Process model Cornerstone of security model GPU Browser Tab 1 Tab 2 Tab 3 Flash f(x) 2018 | Proprietary

  9. Dealing with Organic growth Insert high resolution image 2018 | Proprietary

  10. Content refactor Chrome Content Shell //content 2018 | Proprietary

  11. Content refactor Chrome Content Shell //content 2018 | Proprietary

  12. Content refactor Chrome Content WebView Shell //content 2018 | Proprietary

  13. Content refactor Chrome Content Opera WebView Shell //content 2018 | Proprietary

  14. Content refactor Chrome Content Opera Electron WebView Shell //content 2018 | Proprietary

  15. Content refactor Chrome Content Opera Electron WebView Shell //content 2018 | Proprietary

  16. Towards Modularization Insert high resolution image 2018 | Proprietary

  17. Post content refactor ~10M lines of code ← Chrome code architecture, ~2017 2018 | Proprietary

  18. Conceptual system layercake Application Framework/Runtime Foundation 2018 | Proprietary

  19. Conceptual system layercake Application Framework/Runtime } Chrome’s Architecture Foundation derived from this layer. 2018 | Proprietary

  20. Conceptual system layercake Application Web Platform } Runtime & API Framework/Runtime lives here. Foundation 2018 | Proprietary

  21. Post “servicification” Chrome Chrome Chrome Chrome’ OS cast System UI Embedder Blink PDF Media Defined f(x) File Window Viz: Service Package Network Compositor Manager Manager System Server & GPU USB Identity Wallet ... Bluetooth Navigation 2018 | Proprietary

  22. Some Major Ongoing Servicification Projects Chrome Chrome Chrome Chrome’ OS cast System UI Embedder Blink PDF Media Defined f(x) File Window Viz: Service Package Network Compositor Manager Manager System Server & GPU USB Identity Wallet ... Bluetooth Navigation 2018 | Proprietary

  23. Zooming In On These Efforts: Network and UI Network Service ● 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%! ○ UI Service ● Use case: Decoupling ChromeOS SysUI from the browser ○ Status: Come on up, Rob! ○ 2018 | Proprietary

  24. Zooming In on These Efforts: UI Service (MUS) & Viz 2018 | Proprietary

  25. Zooming In On These Efforts: Identity and Content Identity Service ● Use case: Access user’s Google identities outside of the browser ○ Status: Identity Service built, major effort underway to use it in the browser ○ Content Service ● Use case: Display web content without the browser being live! ○ Use case: “Chrome WebView” ○ Status: In design exploration ○ 2018 | Proprietary

  26. Zooming Out: Our Approach to These Services Each one of these stretches across all of Chromium! ● Meanwhile, hundreds of engineers adding code “the old way” ● How are we tackling this challenge? ● 2018 | Proprietary

  27. Zooming Out: Our Approach to These Efforts “Surge toward success” ● Get a project ready to topple and coalesce resources on it ○ Tremendous impact from collaboration with Igalia ● Critical to launch of Network Service on beta ○ Now expanding to Identity Service ○ Excited about this model more broadly for Chromium ● We care about the long-term health of the codebase ○ Impactful projects beyond servicification (e.g., Blink Onion Soup) ○ 2018 | Proprietary

  28. Thank you. Questions? 2018 | Proprietary

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend