Escolar Documentos
Profissional Documentos
Cultura Documentos
ENGINEERS GUIDE TO
ANDROID & EMBEDDED
LINUX 2016
CONTENTS www.eeecatalog.com/embeddedlinux
Marketing/Circulation
Jenna Johnson
To Subscribe
www.eecatalog.com
Worth protecting?
Then, protect.
Solid State Storage and Memory
IMMUTABLE INFRASTRUCTURE
Containers enable an application development and
Figure 1 deployment lifecycle that lends flexibility to developers
in choosing whatever software stack is best suited for the application. about having to physically reset hard-to-reach devices in
At the same time, containers let the DevOps team decide and define case the update doesntt go through correctly.
the underlying immutable infrastructure stack that should be used
for running the containers. This flexibility has a key implication: the ENHANCED SECURITY
application team and the DevOps teams can work completely inde- As mentioned earlier, security is becoming increasingly
pendently, and test out their changes, without having to worry about important for connected embedded devices, especially
the impact of their changes on the other teams progress. This process for something like a smart home hub that controls all the
improvement can significantly speed up the release cycles, as the entire devices and sensors in a connected home. While the secu-
OS and application stack dont have to be qualified for every change (as rity concerns, from a threat perspective, remain the same,
is the case with application software released as virtual machine [VM] containers could be used effectively on embedded devices
images). Hence, application developers can quickly try out changes to to address the security concerns.
their application logic and also to the software stack without having
to worry about running those changes, and the support those changes A dual-layered approach of separating out well-container-
would need from the OS stack, with the DevOps guys. ized applications from the underlying infrastructure could
prevent a compromise in one application from spreading
EMBEDDED DEVELOPMENT AND PRODUCTION PERKS to other applications or to the kernel. Whats more, the
Containers offer multiple additional benefits during development and segregation of a monolithic software stack into multiple
in production for embedded devices. cleanly isolated parts leads to faster testing and updates for
bugs and security patches, thereby reducing the window of
t New containerized applications could be easily introduced and opportunity for attacks.
deployed on the devices without impacting any of the existing
applications. The existing applications would continue to rely on External sandboxing of containers, using a Mandatory
their specific dependencies, in their containers, while being com- Access Control (MAC) approach such as SELinux or
pletely transparent to the newly introduced application in their AppArmor, could be used to limit the capabilities of the
environment. applications to predefined system calls. Alternately, or in
addition to, security could be baked into the containers
t Independently optimize an application and its dependencies without by putting probes in various different network, I/O and
touching other applications or the underlying infrastructure. application layer calls of interestand used to provide deep
visibility into the runtime operations of the containers and
t Parallelize the development process: different development teams also for restraining the application from doing anything
can independently build and test applications, choosing whatever thats abnormal to its behavior.
software stack is best suited for their applications, without having
to agree on, and hence settle for, a jack-of-all-trades-but-master- BEYOND THE TRADITIONAL
of-none software stack that works for all the applicationswithin Containers offer promising alternatives to the traditional
their assigned memory footprint and other embedded limitations. approaches for developing, testing, and deploying applica-
tions on embedded devices. Containers are already being used
t Over-the-air application updates could be easily applied to, and even actively for deploying service side components of the fast-
reverted from, the containerized applications without being concerned growing IoT space, so despite the hardware limitations on the
embedded devices, I expect the container runtime (Docker
has already been ported onto Raspberry Pi by resin.io) and
most importantthe developer toolchains to be migrated
sooner than later. The bulkier container lifecycle management
and orchestration layer doesnt need to be migrated onto the
embedded ecosystem. The reason containers should be used
on embedded devices, as explained above, totally differs from
the rationale for making them part of the compute infrastruc-
ture layer.
eecatalog.com/embeddedlinux r &/(*/&&34(6*%&50"/%30*%&.#&%%&%-*/69 7
engineers guide to Android & Embedded Linux
PLAYING CATCH-UP
AGL will do much more than reduce frustration when driving unfa-
miliar vehicles, however. AGL will save money, improve the overall
user experience by incorporating the best ideas from all AGL mem-
bers, enhancing the security by incorporating hundreds of years
worth of broad-based software security experience into AGL and dis-
till AGL into the best platform via the proven success of Linux and the
open source model. Hosted by the non-profit The Linux Foundation, Figure 3: An AGL test set-up for a wheel input device.
AGL is royalty-free and frees automotive OEMs to focus on their core
competency: designing cars, not software. The automotive industry AGL, although four years old, relaunched under a new
has fallen behind smartphones in ease-of-use and functionality. strategy a couple of years ago, borrowing the best soft-
Consumers paying $500 or more for navigation in cars expect a smart- ware components from AGL, GENIVI, and Tizen IVI
phone experience. The 100-year old automotive supply chain model for the AGL platform. This new combination code base
for software has a 36-month production cycle, a time frame over is what AGL calls the unified code base, or UCB, and
which three iPhones can be released. AGLs ambition is to reduce the unifies the best of AGL, Tizen IVI, and GENIVI for
software design cycle to 12 months with shorter deployment cycles the entire industry. Tizen IVI was an open project ini-
and more frequent software updates. AGL will also enable a robust and tially led by Samsung and Intel but was aimed more at
global ecosystem of compatible hardware, software, user interfaces, consumer electronics. GENIVI is open source software
and a variety of applications. from the GENIVI Alliance. However GENIVI targets a
specification that allows multiple different vendors to
AGL is made up of several expert groups, be compliant with different code, versus AGL, which
a group of like-minded developers that has a code first mindset and focuses on building a
get together and work on an area of the software base that provides automakers and suppliers
system. Dan Cauchy, Executive Director with the same starting point for production programs.
of Automotive Grade Linux at The Linux AGL recognizes the contributions of the open Tizen IVI
Foundation, says that Automotive and GENIVI modules within AGL.
Grade Linux has the ultimate goal of
expanding from IVI into the instrument Additional flourishes can be added by the manufacturer,
cluster, telematics, heads-up display much like smartphones often carry carrier-specific
(HUD), Advanced Driver Assistance features and functions, however, the basic underlying
Systems (ADAS), Functional Safety, and functionality is the same across Android-based oper-
eventually Autonomous Vehicles. ating systems, and AGL will be no different. Developers
will be able to add differentiating features, such as voice
How did we get to the point where cars recognition, but the foundation will share a commonality
Dan Cauchy, Linux Foundation
needed operating systems? Older vehi- that not only facilitates rapid time-to-market, but allows
cles had direct wiring for electronics, but engineers to become experts on a common code base
with hundreds of different electronic functions in modern vehicles, rather than learning several proprietary systems over a
Electronic Control Units (ECUs) became the norm, mainly because lifetime. AGL is a full distro, including middleware, and
wiring harnesses became too bulky and cumbersome to wire indi- an app framework.
vidual control loops throughout a car. ECUs control small but often
complex control loops to handle algorithms for everything from oper- EXPERT GROUPS
ating door mirrors, automatic lighting functions, to luxury functions Collaboration is not new to Linux, but it is new to auto-
such as variable chassis suspension at the touch of a button. There motive. Nevertheless, there are several expert groups
can be a hundred or more ECUs in luxury vehicles, and the number of presently working on AGL focused on System Architec-
ECUs is reaching a limit. Greater integration of hardware and software ture, Application Framework and Security, Continuous
is needed to address the high number of ECUs. Integration and Automated Testing, Connectivity and
User Interface (UI) and Graphics.
The System Architecture Team defines the overall AGL telematics will involve telemetry and sharing telematics data,
technical architecture per the strategy set by the which includes connecting to the cloud and creating the whole con-
steering committee and oversees how reference soft- nected car, enabling functions such as remote updates that can
ware and hardware solutions are implemented. replace visits to the dealership. Beyond IVI and telematics is ADAS,
which Dan indicates may not be addressed until next year at the
The Application Framework and Security expert soonest. ADAS requires an operating system for system-level coor-
group are building a foundational application frame- dination including multiple sensors, cameras, and LIDAR to assist
work for all AGL apps, so every design builds on a with keeping to a lane and collision avoidance, for example. Dan
common shared framework. Security begins at a low admits that this is farther out on AGLs roadmap but went on to state,
level on the stack and necessarily permeates common Functional Safety certifications will be required for ADAS, and this
functions. For example, in addition to cooperation will take some time. However, once we achieve ADAS, the next logical
with secure hardware, apps will be cryptographi- step is to leverage that and move forward to build software for fully
cally signed and verified at installation and removal. Autonomous Vehicles, and that is part of our roadmap.
There are also plans to provide a secure boot in the
AGL framework to ensure that the car will not boot Version 3 of the AGL UCB, or the Charming Chinook distro, will
on a changed image unless a specific encryption key be released late in 2016, with a demonstration planned for CES 2017
is provided. The User Interface (UI) and Graphics showing the home screen with multiple display capability (front and
expert group is responsible for the design and archi- rear seat), video playback, audio routing and the AGL app framework.
tecture of driver-facing features such as multimedia,
navigation, speech recognition and the home screen. CONCLUSION
The Connectivity expert group is concerned with Linux is certainly a proven model for establishing a successful collab-
CAN bus, LIN, MOST, Ethernet AVB, and an abstrac- orative model that breeds innovation. Examples of Linux in daily life
tion layer referred to as the automotive message include Android on smartphones and the Apache web server (which
broker, which abstracts the messaging to a firewalled exists in 50% of all web servers worldwide.) However, Linux is also
vehicle bus. They are also responsible for remote used in nuclear power plants, entire systems of trains and their con-
vehicle interactions, cloud connectivity and how user trol, as well as in aeronautics.
devices connect to the IVI system. The Continuous
Integration and Automated Testing group uses stan- AGL presents a new methodology for the automotive industry. Its suc-
dard tools like JTA, LAVA, Gerrit and others. cess remains to be seen but judging from the success of carrier-grade
Linux, and the fact that eight major OEMs and multiple technology
THE FUTURE OF AGL companies are participating towards the success of AGL, one can
After the AGL IVI is released, ongoing improvement, imagine the future of AGL. Companies like Apple that aim to compete
additions, and updates are expected indefinitely. How- in automotive have a serious competitor in AGL but are also easily able
ever, the focus of AGL will shift beyond IVI to address to sell a differentiating application layer or a custom distribution, since
other areas such as instrument cluster, telematics, open-source allows deep transparency down to the kernel.
heads-up display (HUD), Advanced Driver Assistance
Systems (ADAS), Functional Safety and eventually AGL is still accepting participants for expert groups, which means
Autonomous Vehicles. entering on the ground floor of a significant opportunity is possible.
As a non-profit, AGL is never going to IPO. But defining success by
The UCB distribution has been architected to allow collaboration, not quarterly results, is a good thing.
different profiles to be created from the same code
base to address all software applications in the car. As Lynnette Reese is Executive Editor, Embedded Systems Engineering and
Cauchy explains, It is in the AGL charter to implement Embedded Intel Solutions, and has been working in various roles as an
code supporting the instrument cluster, which are electrical engineer for over two decades. She is interested in open source
often digital displays and have similar requirements software and hardware, the maker movement, and in increasing the number
in common with IVI. Thus, using the same IVI code of women working in STEM so she has a greater chance of talking about
base and another iteration with Yocto to define specific something other than football at the water cooler.
meta data for new layers, AGL will have code specific
to instrument clusters that OEMs can customize. Dan
goes on to state, Another profile, if you will, will yield
a heads up display (HUD). Telematics is next, and has
already begun, with the formal establishment of an
expert group planned before the end of the year.
eecatalog.com/embeddedlinux r &/(*/&&34(6*%&50"/%30*%&.#&%%&%-*/69 9
engineers guide to Android & Embedded Linux
EMAC, Inc.
PPC-E7-3354