slide 1 of 30 status of embedded linux embedded linux community news december 2010 tim bird celf...
Post on 31-Dec-2015
222 Views
Preview:
TRANSCRIPT
Slide 1 of 30
Status of Embedded Linux
Embedded LinuxCommunity News
December 2010
Tim Bird
CELF Architecture Group Chair
Slide 2 of 30
Agenda
• Technology quick update• Embedded Linux Summit report• CE flag version• Yocto• Upcoming conferences• Miscellaneous news
Slide 3 of 30
Technology status (quick updates)
• Stable tracing APIs• TTY-based group scheduling• Checkpoint/restart for applications• Bootchart2
Slide 4 of 30
Stable tracing APIs
• Goal is to designate certain tracepoints as stable, and make them available long-term to user space
• Some people want stable API and others don’t
• Decided at Kernel Summit to do it, but then negative feedback was received on kernel mailing list
Slide 5 of 30
TTY-based group scheduling
• Automatically places processes in control groups, based on controlling TTY
• Then implements “fairer” scheduling between control groups
• Prevents a kernel compile from interfering too much with interactive tasks
• Uses a scheduling mechanism that has been in the kernel for a long time (control groups)– Which, IMHO, demonstrates that there’s a lot of
technology in the kernel that is going unused in embedded
Slide 6 of 30
Checkpoint/Restart
• Ability to checkpoint and restart (like suspend and resume) an application
• System retains open files, memory maps, signals, and other kernel-managed resources
• Primary goals are robustness (recovery) and runtime application migration
• I want to use it to improve boot-up time (on a per-application basis)– I can’t help it, I instinctively look for boot time
improvements
Slide 7 of 30
Bootchart 2
• Rewrite of most bootchart elements:– Capture is in C instead of shell script– Visualizer is in python instead of Java– Lots of bugfixes and improvements to
visualization• example: transparency for CPU utilization – in
original bootchart this showed 0 utilization lots of times when it was not appropriate
• Looking at using trace events instead of polling– Should improve performance and accuracy• (Note – would be nice to have stable tracepoints)
Slide 8 of 30
Syslink
• Interprocessor communication mechanism• Would be really nice to have a standard
system in Linux for IPC between cores in multi-core systems• TI willing to donate syslink, but it needs a lot
of modification to be accepted into mainline–Much discussion at Plumbers about alternatives
and possible solutions• Is something to watch
Slide 9 of 30
Embedded Linux Summit
• Meeting of CE vendors, semi-conductor vendors, Linux vendors, community leaders
• Held one in Japan – September 30, after LinuxCon
• Held one in Cambridge, UK – October 26, before ELCE
Slide 10 of 30
Embedded Linux Summit (cont.)
• Some key initiatives– Legal wording for IP procurement, to promote
open source driver availability– CE Flag Version – a longterm maintained version
of the Linux kernel– Information base of IP blocks and corresponding
drivers– Projects to decrease embedded Linux distro and
tools fragmentation
Slide 11 of 30
IP procurement language
• Some companies saying that not enough customers were asking for open source drivers to justify cost of writing them
• CE and semi-conductor companies will try to use language in their procurement contracts which encourages suppliers to provide open source drivers– HP has done this successfully– Language is not binding– Supplier has to “opt out”, which means they have
received the message that open source drivers are desirable
Slide 12 of 30
CE Flag Version
• Problem:– Embedded groups have lots of different kernel
versions– Some versions are supplied by semiconductor
vendors, and it is hard to change because porting drivers would be required–Would decrease integration cost to CE
companies if supply chain used fewer kernel versions
• Solution:– Designate specific kernel version for a period of
time, and try to focus supply chain on that version
Slide 13 of 30
Flag Version details
• Decided to promote kernel version 2.6.35• Strange confluence of many players at once:• Android, Linaro, Meego, Sony
• Andi Kleen is the maintainer of the branch• See http://lkml.org/lkml/2010/12/3/35
• To be called “longterm” (not “stable”)– GregKH making some changes to how stable is
maintained• Longterm branches use same rules as stable• See Documentation/stable_kernel_rules.txt
Slide 14 of 30
Yocto project
• Intel /Linux Foundation publicly announced Yocto project at ELCE
• Attempt to consolidate effort on a single build system, and other development tools– Chose Poky, which is an Open Embedded derivative
• OpenEmbedded seems to have critical mass– TI, Palm/WebOS, Dell– MontaVista, Wind River, Mentor Graphics
• Important Yocto meeting held– Some issues with governance and relationship with Open
Embedded– Look for LWN.net article soon
Slide 15 of 30
Upcoming conferences
• Embedded Linux Conference 2011– April 11-13 - in San Francisco– CFP should go out soon
• Had to delay because of web site transition with Linux Foundation
• LinuxCon Japan 2011– June 1-3 - in Yokohama
• ELC Europe 2011– October 26-28 - in Prague
Slide 16 of 30
Consortia
• Linaro– Released Linaro 10.11– Have a nice roadmap of technical features they
want to accomplish– Tool and Kernel highlights:
• Support for valgrind on ARM• Support for Neon instructions• Assist in mainlining Android patches• Are working to get ARM device trees mainlined
(shooting for 2.6.39)• CELF and Linux Founding are merging– Lots of legal details being taken care of
• Agreements from all contractors
Slide 17 of 30
Miscellaneous News
• Mentor Graphics acquires CodeSourcery• Sony ships Sony Internet TV– First non-phone Android product endorsed by
Google• Google ships Android Gingerbread SDK
Slide 20 of 30
Contract work completed this year
• ARM enhancements for U-boot• Smemcap in busybox• Bootchart in busybox• Most of function-sections work mainlined• SquashFS LZO support (not a CELF
contract, but an LG kernel contribution)• Flash filesystem testing– Was presented and discussed at ELCE
Slide 21 of 30
Contract work of interest
• YAFFS mainline• Trace format standard• RT-preempt online training
Slide 22 of 30
Mainline YAFFS2
• Description:– YAFFS2 is a popular NAND flash filesystem
• Is used by Android– Add support for YAFFS2 to mainline kernel
• Contractor: Aleph One Ltd• Google is Co-Sponsoring this project• Status:– Several patch sets have been submitted to
mainline– Were reviewed by IBM Linaro rep (Arnd
Bergman)– Are still hoping for acceptance by end of the year.
Slide 23 of 30
Trace format standard
• Description:– Create a single trace format standard for the
embedded industry• Contractor: Efficios (Matthieu Desnoyers)• Status:– Matthieu published several drafts of the Trace
Format document.– It was reviewed by Steve Rostedt, and feedback
was provided– Latest draft was reviewed and approved (Dec. 8)
by the Tool Infrastructure Work Group of the MultiCore Association
Slide 24 of 30
RT-preempt tutorial
• Description– Create training and tutorial materials for using
RT-preempt patchset and feature• On-line course to be put on eLinux wiki
– Free for public use• Contrator: K Computing (Kevin Dankwardt)• Status:– Expect completion by December 31
Slide 25 of 30
CELF Open Project Proposal
• You can suggest projects to fund for 2011• Just opened proposal period on Tuesday• For a submission, think about…– What did you spend your time working on, on
Linux, in the last year?– What would have saved you time and effort?
• Don’t have to be a member of CELF or the Linux Foundation
• See http://elinux.org/CELF_Open_Project_Proposal_2011
Slide 26 of 30
Contract work notes
• This year, because of merger, CELF has double its regular contractor budget
• Some possible projects were discussed at the Embedded Linux Summit, and at the Kernel summit
Slide 27 of 30
Candidate contract projects
• Add fastboot support to Linux• Fast symbol resolution for module loading• UBIL/UBI checkpointing – scalable UBI-attach
time– Discussed with Thomax Gleixner at kernel summit
• Mainline RT-preempt patch set• Link-time optimization (for size)– Support for ‘whole-program’ compiler option
• Help with MIPI spec availability• Kexec applet in busybox• IP block driver database
Slide 28 of 30
More Candidate projects
• Watchdog framework for the Linux kernel– Repeat from last year– This barely missed funding, but this year we have
more money!• Binary analysis tool enhancements• Boot parameter caching• Continued Flash Filesystem testing• BTRFS on UBI• Sparse IRQs on ARM• Unified ARM version support (Linaro?)• Improved defconfig
Slide 29 of 30
Hardware donations
• Donation for developer doing BKL removal paid off– We bought him a board, and he submitted
several patches with BKL lock removals• Have approved donation for Android
developer– Plan is to use bootchart2 and document results
top related