![Page 1: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/1.jpg)
ConfidentialPA16/5/20131
Status of Embedded Linux
Status ofEmbedded Linux
July 2014
Tim BirdArchitecture Group Chair
LF CE Workgroup
1
![Page 2: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/2.jpg)
ConfidentialPA16/5/20132
Outline
Kernel VersionsTechnology AreasCE Workgroup ProjectsOther StuffResources
2
![Page 3: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/3.jpg)
ConfidentialPA16/5/20133
Outline
Kernel VersionsTechnology AreasCE Workgroup ProjectsOther StuffBest of …Resources
3
![Page 4: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/4.jpg)
ConfidentialPA16/5/20134
Kernel Versions
•Pace of versions is consistent and good•Kernel processes are working well
![Page 5: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/5.jpg)
ConfidentialPA16/5/20135
Kernel Versions
•Linux v3.11 – 2 Sep 2013 – 64 days•Linux v3.12 – 3 Nov 2013 – 62 days•Linux v3.13 – 19 Jan 2014 – 77 days•Linux v3.14 – 30 Mar 2014 – 70 days•Linux v3.15 – 8 Jun 2014 – 70 days•Linux v3.16-rc6
5
![Page 6: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/6.jpg)
ConfidentialPA16/5/20136
Kernel Versions
•Linux v3.11 – 2 Sep 2013 – 64 days•Linux v3.12 – 3 Nov 2013 – 62 days•Linux v3.13 – 19 Jan 2014 – 77 days•Linux v3.14 – 30 Mar 2014 – 70 days•Linux v3.15 – 8 Jun 2014 – 70 days•Linux v3.16-rc6• I predict 3.16 on Aug 16 – 69 days
6
![Page 7: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/7.jpg)
ConfidentialPA16/5/20137
Outline
Kernel VersionsTechnology AreasCE Workgroup ProjectsOther StuffResources
7
![Page 8: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/8.jpg)
ConfidentialPA16/5/20138
Bootup Time
•Kernel can be quick (under 1 second)• But it takes a lot of work, per product
•Lots of resources available for tuning• See http://elinux.org/Boot_Time• Good recent presentation:• Michael Opdenacker – ELC 2014 • Update on Boot Time Reduction Techniques with
Figures
•More focus recently on user-space• Lots of people looking at systemd in embedded
![Page 9: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/9.jpg)
ConfidentialPA16/5/20139
Bootup Time
● Make sure UBI fastmap feature is on, if using UBIFS (available from 3.7 on)● Focus on firmware● Lots of U-boot optimizations in Michael's talk● Avoid copies, use best compression method, simplify
scripting, trim down u-boot size, modularize u-boot, etc.
● Really looking forward to ELCE 2014● Have several good talks lined up for boot time reduction
● Long-term problem:● No automation for boot-time ye
![Page 10: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/10.jpg)
ConfidentialPA16/5/201310
File Systems
● Asynchronous startup helps a lot with resume on spinning media (SATA)– 10x reduction in resume speed
● Block layer on UBI flash translation layer– Read-only for now
– Optimizations in IO scheduler for SSDs
– Can now handle millions of IOPs
![Page 11: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/11.jpg)
ConfidentialPA16/5/201311
Memory Management
•ION memory allocator● Now in staging
![Page 12: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/12.jpg)
ConfidentialPA16/5/201312
Power Management
•Evolution of power management in Linux• Suspend/resume, voltage and frequency scaling,
longer sleep (tick reduction), runtime device power management, race-to-sleep (wakelocks/autosleep)
•New stuff starting to get crazy
![Page 13: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/13.jpg)
ConfidentialPA16/5/201313
Power Management
•Autosleep•Power-aware scheduling• Big.LITTLE scheduling• Some products now shipping with this• Support is now mainlined for some processors• Baseline power-aware patches seem stalled
•Memory power management•Full tickless
13
![Page 14: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/14.jpg)
ConfidentialPA16/5/201314
Power-aware scheduling:
•Small-task packing• Try to migrate tasks to allow more CPUs to go idle
•Task placement on mixed cpu_power systems• Move large tasks to faster CPUs
•Resources:• http://lwn.net/Articles/546664 - overview• http://lwn.net/Articles/552885 - some resistance• Ingo Molnar wants to consolidate this power stuff in the
scheduler – rather than spread out into power/cpufreq/cpuidle/scheduler systems
![Page 15: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/15.jpg)
ConfidentialPA16/5/201315
Big.LITTLE This is big.LITTLE
![Page 16: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/16.jpg)
ConfidentialPA16/5/201316
System Size
● Renewed interest due to IOT● Projects
– MicroYocto– Linux for microcontrollers
● Kernel size● Shared Library size
![Page 17: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/17.jpg)
ConfidentialPA16/5/201317
Renewed Interest due to IOT
•Is desirable to run Linux in very constrained devices
•Need to eliminate DRAM for power savingsConversion to SRAM or STMRAM means no
current draw when idle•Can possibly work with on-die RAM•Back to wanting 2M or less RAM
17
![Page 18: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/18.jpg)
ConfidentialPA16/5/201318
Projects
•Micro-Yocto project by Tom Zanussi at Intel 1.6MB SRAM, 8MB flash Lots of kernel, user-space reductions NET Diet patches, CONFIG_PROC_MIN Link Time Optimization LWIP in extreme case (lightweight IP – user-
space IP stack) Their own tracing system (microYocto hash
triggers)•Details in ELC 2014 presentation
18
![Page 19: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/19.jpg)
ConfidentialPA16/5/201319
Projects
●Linux for Microcontrollers● By Vitaly Wool at Softprise Consulting● 256K SRAM, 2MB NOR flash● 2.6.33 kernel, using XIP
●Flash usage:● 64K bootloader● 900K kernel text● 800K root filesystem (RO)● 196K config filesystem (RW)
19
![Page 20: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/20.jpg)
ConfidentialPA16/5/201320
Kernel Size
•Recent work on several different patches NET Diet patches – Andi Kleen Link Time Optimization – Andi Kleen Min proc Configuable syscalls and kernel features sys_sendfile, X86_IOPORT,
CONFIG_PTRACE, CONFIG_SIGNALS Resistance to NET Diet patches when they
tried to mainline them To be discussed at kernel summit in August
Maybe a new “linux-tiny” effort???20
![Page 21: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/21.jpg)
ConfidentialPA16/5/201321
Shared Library reduction
•mklibs http://packages.debian.org/sid/mklibs
•Cuts down shared libraries to match a specific set of executables
•Useful for large libraries like OpenGL and Qt•Does not require source•Warning: May miss dlopened libraries•Available in Yocto but not Buildroot (as of
2013)
21
![Page 22: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/22.jpg)
ConfidentialPA16/5/201322
Security
●Kernel features● Kernel address space layout randomization● See https://lwn.net/Articles/569635/
●Heartbleed bug● Big problem caused by very old bug● http://lwn.net/Articles/593809/
●Linux Foundation creates fund for critical projects
● See http://lwn.net/Articles/595959/
![Page 23: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/23.jpg)
ConfidentialPA16/5/201323
Tracing
•Ktap• Dynamic tracing, without the overhead of compiling
into a module• Adds an interpreter to the kernel• Temporarily added to mainline in 3.13 (but
subsequently removed)• Ingo Molnar objected – needs more work• See https://lwn.net/Articles/572788/
![Page 24: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/24.jpg)
ConfidentialPA16/5/201324
Device Tree
![Page 25: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/25.jpg)
ConfidentialPA16/5/201325
Device Tree
●Continues its inexorable march●All new SoC and most driver code needs to be DT-compatible●New work on DT schemas and validators
● By Thomasz Figa● See ELC 2014 talk “Trees need care: a solution to the device
tree validation problem”●More talks on device tree coming at ELCE 2014
● Security, dynamic trees, tutorials, under-the-hood documentation
![Page 26: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/26.jpg)
ConfidentialPA16/5/201326
Device tree (cont.)
•Change in maintainership• Grant Likely transferred maintainership to others• Not enough review of bindings
•Discussion about having device tree be long-lived ABI to kernel• Should be usable by other operating systems• Maybe move out of kernel repository
•Lots of discussions planned at ARM mini-summit/Kernel Summit• Lots of presentations at ELC Europe this year
•See http://elinux.org/Device_Tree
![Page 27: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/27.jpg)
ConfidentialPA16/5/201327
Outline
Kernel VersionsTechnology AreasCE Workgroup ProjectsOther StuffBest of …Resources
27
![Page 28: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/28.jpg)
ConfidentialPA16/5/201328
CEWG Contract Work 2014
•Compressed printk messages•LTSI test framework•Device-tree documentation•ARM RO text and data overwrite detection•Android boot time reduction•CPU Shielding capability•Config_numa support for ARM•More robust UBIFS support
28
![Page 29: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/29.jpg)
ConfidentialPA16/5/201329
Contract Work Details● Compressed printk messages
– Size reduction while retaining messages– Contractor: Wolfrom Sang– Status: Will report preliminary results at LinuxCon North America in
August
● LTSI test framework– Enhance Cogent test framework, in Jenkins, for use with LTSI kernel– Support board-independent deployment and control system, based on ttc– Contractor: Cogent– Status: not started
![Page 30: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/30.jpg)
ConfidentialPA16/5/201330
Contract Work (cont.)
● Device-tree documentation● Better docs needed for developers, sub-system maintainers, and binding
reviewers● Contractor: Frank Rowand● Status: not started
● Overwrite detection for kernel text and read-only data● Something similar mainlined in 3.14● May not be needed
● Android boot time improvements● Work to bring up side stack (such as back-up camera) before rest of Android
initializes● Contractor: Cogent● Status: not started
![Page 31: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/31.jpg)
ConfidentialPA16/5/201331
Contract Work (cont.)
● CPU Shielding capability● Ability to isolate a CPU at runtime for realtime work
● Add support for CONFIG_NUMA to ARM● To allow for handling some memory regions in a
special way - even if memory appears uniform to kernel.
● More robust UBIFS support● Try to fix some robustness problems when power
is lost or bits flip.
![Page 32: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/32.jpg)
ConfidentialPA16/5/201332
CEWG New Projects
New projects for CE Workgroup, with focused areas Based on Steering Committee meetings in May
New project areas: Internet of Things Standard Distribution Linux in Social Infrastructure SoC Mainlining Others...
![Page 33: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/33.jpg)
ConfidentialPA16/5/201333
CEWG New Projects
New projects for CE Workgroup, with focused areas Based on Steering Committee meetings in May
New project areas: Internet of Things Standard Distribution Linux in Social Infrastructure SoC Mainlining Others...
![Page 34: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/34.jpg)
ConfidentialPA16/5/201334
Project: Internet of Things
Identify barriers to Linux use in IOT, and fix issues found Focus on size, at the moment May also focus on security Supporting revival of Linux-tiny project may be part of this effort
![Page 35: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/35.jpg)
ConfidentialPA16/5/201335
Project: Standard Distribution
Goal is to share maintenance burden for a standard embedded distribution Already discussed previously
![Page 36: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/36.jpg)
ConfidentialPA16/5/201336
Project: Linux in Social Infrastructure
Identify issues with using Linux-based system for societal infrastructure projects Includes security, upgradability, long-term support
![Page 37: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/37.jpg)
ConfidentialPA16/5/201337
Project: SoC Mainlining
Help companies collaborate on upstreaming support for their SoCs Identify barriers and overcome with training, best-practices documents, etc.
![Page 38: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/38.jpg)
ConfidentialPA16/5/201338
Outline
Kernel VersionsTechnology AreasCE Workgroup ProjectsOther StuffBest of …Resources
38
![Page 39: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/39.jpg)
ConfidentialPA16/5/201339
Other Stuff
•Tools•Testing Frameworks•Build Systems•Distributions•Wiki
39
![Page 40: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/40.jpg)
ConfidentialPA16/5/201340
Tools
LLVM Kernel is close to supporting LLVM without patches
40
![Page 41: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/41.jpg)
ConfidentialPA16/5/201341
Testing frameworks
• Kernel interest in automated testing increasing Ktest.pl
Kevin Hillman automated test lab•Linaro Lava•Autotest
![Page 42: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/42.jpg)
ConfidentialPA16/5/201342
Build Systems
•Yocto project• Toaster project – big push to web-based interface• Micro-yocto• Tizen
•Buildroot•New: license compliance, rootfs overlays,
eclipse plugin for toolchains and sdk•Defconfigs for lots of popular dev boards•Package dependency graphing•Build-time graphing
42
![Page 43: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/43.jpg)
ConfidentialPA16/5/201343
Distributions
Poky Ångström MicroYocto Tizen Android Possible standard embedded distribution
![Page 44: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/44.jpg)
ConfidentialPA16/5/201344
Poky
Default distribution used by Yocto Project YP keeps trying to avoid shipping a distribution
Poky should be considered a sample distro, but not suitable for production (?)
![Page 45: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/45.jpg)
ConfidentialPA16/5/201345
Ångström
Mature package-feed based embedded distro Originally focused on handheld devices (e.g. Sharp Zaurus)
Developed originally under OpenEmbedded Is shipped with a number of development boards
![Page 46: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/46.jpg)
ConfidentialPA16/5/201346
MicroYocto
Focused on IOT requirements Has special features for tiny systems Kernel patches Special tracing for dynamic memory usage monitoring Currently focused on size and networking aspects of IOT
![Page 47: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/47.jpg)
ConfidentialPA16/5/201347
Tizen
Descended from Meego, which descended from Maemo and Moblin Getting more widespread usage
Replacing Bada at Samsung Shipping in TVs, phones and increasingly targeted at automotive
Can be built with Yocto Project May be a serious competitor as general embedded distribution
![Page 48: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/48.jpg)
ConfidentialPA16/5/201348
Android
Is increasingly used in non-mobile devices See ABS 2014 talk by Gary Bisson Google “cyborgstack” and “headless android”
KitKat focused on size issues Target devices with 512MB of space, to drop Android into low-end phones
“L” release has lots of changes: Project Volta – for power reduction “Material Design” - 3d look with “floating” widgets ART – Android Runtime Ahead-of-time compiler
Goodbye Dalvik
![Page 49: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/49.jpg)
ConfidentialPA16/5/201349
Android
Is increasingly used in non-mobile devices See ABS 2014 talk by Gary Bisson Google “cyborgstack” and “headless android”
KitKat focused on size issues Target devices with 512MB of space, to drop Android into low-end phones
“L” release has lots of changes: Project Volta – for power reduction “Material Design” - 3d look with “floating” widgets ART – Android Runtime Ahead-of-time compiler
Goodbye Dalvik
![Page 50: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/50.jpg)
ConfidentialPA16/5/201350
Possible standard embeddeddistribution
CEWG project to create and maintain a standard distribution for the embedded industry Just getting started with requirements definition May select an existing distribution If you are interested, please contact
Yoshitake Kobayashi
![Page 51: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/51.jpg)
ConfidentialPA16/5/201351
eLinux wiki
•http://elinux.org• Web site dedicated to information for embedded
Linux developers• The wikipedia of embedded linux!
•Hundreds of page covering numerous topic areas: bootup time, realtime, security, power management, flash filesystem, toolchain, editors
•Working on wiki projects:• Video transcription project
51
![Page 52: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/52.jpg)
ConfidentialPA16/5/201352
Kernel VersionsTechnology AreasCE Workgroup ProjectsOther StuffResources
52
![Page 53: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/53.jpg)
ConfidentialPA16/5/201353
Resources
•LWN.net• http://lwn.net/• If you are not subscribed, please do so
•Kernel Newbies• http://kernelnewbies.org/Linux_3.??
•eLinux wiki - http://elinux.org/• Especially http://elinux.org/Events for slides
•Celinux-dev mailing list
53
![Page 54: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/54.jpg)
ConfidentialPA16/5/201354
Thanks!
54
![Page 55: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/55.jpg)
ConfidentialPA16/5/201355
Extra Slides
•The following slides are just for reference, for embedded-related features introduced in recent kernel versions
![Page 56: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/56.jpg)
ConfidentialPA16/5/201356
Linux 3.12
•Full-system idle detection• Tricky rcu-based implementation to allow for fast
indication of individual CPU idleness (using per-cpu variable), AND fast detection of global CPU idleness (single global variable)
•New cpu-idle driver that builds on multi-cluster power management• Ie. Getting closer to support for “big.LITTLE” CPU
scheduling
•Lots of device drivers converting over to device tree• More on this later
![Page 57: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/57.jpg)
ConfidentialPA16/5/201357
Linux 3.13
ARM big.LITTLE switcher support Scalable block layer for better SSD performance Power capping framework Ktap was put in, then taken out
![Page 58: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/58.jpg)
ConfidentialPA16/5/201358
Linux 3.14
Kernel Address space layout randomization ION memory allocator in staging ARM text and RODATA protection 6lowpan emulation for BLE Zram compressed swap moved out of staging
Reports are that it is used in TVs and some Android devices See http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?
id=cd67e10ac6997c6d1e1504e3c111b693bfdbc148
![Page 59: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/59.jpg)
ConfidentialPA16/5/201359
Linux 3.15
UBI flash translation now has block device layer support Read-only for now
More support for LLVM compiler suite Not finished yet, but getting closer
![Page 60: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/60.jpg)
ConfidentialPA16/5/201360
Linux 3.16
Power-aware scheduling decode_stacktrace.sh – convert offsets in a stack trace to filenames and line
numbers
![Page 61: Status of Embedded Linux Status of Embedded Linux · PDF fileStatus of Embedded Linux July 2014 ... – Enhance Cogent test framework, in Jenkins, ... eclipse plugin for toolchains](https://reader033.vdocuments.mx/reader033/viewer/2022051009/5a8a6b6c7f8b9ac87a8c4d00/html5/thumbnails/61.jpg)
ConfidentialPA16/5/201361
Linux 3.13