1 / 27

Android vs. Linux for Automotive

Android vs. Linux for Automotive. TY Kim, APAC Solutions Architect. Definition of Software Architecture. “A software system’s architecture is the set of principal design decisions made about the system.”. — Software Architecture, Richard N. Taylor et al.

corina
Download Presentation

Android vs. Linux for Automotive

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Android vs. Linux for Automotive TY Kim, APAC Solutions Architect

  2. Definition of Software Architecture “A software system’s architecture is the set of principal design decisions made about the system.” — Software Architecture, Richard N. Taylor et al.

  3. Software Architecture – Who Cares What? Which one counts the most?

  4. Typical IVI projects Roles and Responsibility

  5. Top Down or Bottom Up?

  6. SWOT Analysis of Android for Automotive How to address these?

  7. High Level System Description

  8. Design Decisions • System structure • Functional behavior • Interaction • Nonfunctional properties • Implementation

  9. Architectural Documentation A template for documenting software and firmware architectures, Version 1.3, 15-Mar-00, HP

  10. System Structure Android Linux Linux Custom set of middleware Native Qt / EFL/ Gtk / Custom HTML5 / Custom Unknown • (modified) Linux • Custom set of middleware • Dalvik VM + Native Runtime • Android Application Framework • Android HMI Framework • 600K Apps + 500K Developers

  11. Functional Behavior and Interaction Android Linux Linux Driver App Framework TBD Linux IPC (D-Bus) Socket, Signal, Daemon Linux Process / Thread • Custom HAL • JNI / NDK / Zygote • Binder / System Service • Content Provider / Intent • Activity / View

  12. Non-functional Properties Android Linux Versatile Flexible architecture Good amount of information Loosely coupled components Various pace of innovation • Mobile (and TV?) oriented • Commercially proven architecture • Wealth of information • Tightly integrated components • Fast pace of innovation

  13. Implementation Android Linux C / C++ / HTML5 Community driven Quality of code varies Roadmap can be known / discussed • C / C++ / Java • Driven by Google with contribution from others • High quality of code in general • Roadmap unknown

  14. Android Multimedia Framework

  15. Android MMF - Stagefright

  16. Linux Multimedia Framework

  17. Consideration for Reusability • User Interface (Look & Feel): ISV • Foundation Technology: OSV • Hardware System: Tier-1 • Product Specification: OEM HMI • What is changing with: • New Hardware • New Tier-1 • New OEM • New OS • New Features • New HMI • New Model • ? Changes with new UX Business Logic Custom Middleware Reuse strategy needed here Core Middleware OS / Drivers Changes with new hardware Hardware

  18. Unified Platform? Unified Platform Low HMI Business Logic Custom Middleware Mid Core Middleware OS / Drivers Hardware High

  19. What is GENIVI? Audio Graphics Multimedia Speech CE-device External Access Connectivity Positioning Package Management Networking Security Personal Information Management System Infrastructure OS, Linux kernel, drivers and libraries

  20. GENIVI Compliance Strictness

  21. What about Hybrid Platform? HTML5 Android APP Android APP Native APP Native APP GENIVI APP Android APP GENIVI Android Android PFI Tizen In-House Native Lib Android Linux Linux Linux Linux Hypervisor CPU CPU CPU Option3 Option1 Option2 • Option1: Native library can be added to Android • Option2: Some commercial Hypervisor Solution • Option3: Heavy modification on Android How feasible are these options?

  22. Other Evaluation Criteria • Development productivity • Automotive features • Costs • Risks • Resources • Consistency • Testability • Flexibility • Differentiation • Longevity

  23. SWOT Analysis of Linux for Automotive How to address these?

  24. Iterative Approach for Platform Design

  25. Proof of Concept Design • Implementation of the proposed architecture • The scope of the work may include: • Fastboot optimization • Selective integration of available IP • App / HMI framework • Reference UI

  26. send Validation Validation Plan • Feature list • Performance • Interoperability • Scalability Execute Tests & Benchmarks View and Analyze Results Improve Collaborate with Developers Identify and Report Issues

More Related