1 / 30

Status of Embedded Linux

Embedded Linux Community News December 2010. Status of Embedded Linux. Tim Bird CELF Architecture Group Chair. Agenda. Technology quick update Embedded Linux Summit report CE flag version Yocto Upcoming conferences Miscellaneous news. Technology status (quick updates).

Download Presentation

Status of Embedded Linux

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.


Presentation Transcript

  1. Embedded Linux Community News December 2010 Status of Embedded Linux Tim Bird CELF Architecture Group Chair

  2. Agenda • Technology quick update • Embedded Linux Summit report • CE flag version • Yocto • Upcoming conferences • Miscellaneous news

  3. Technology status (quick updates) • Stable tracing APIs • TTY-based group scheduling • Checkpoint/restart for applications • Bootchart2

  4. 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

  5. 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

  6. 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

  7. 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)

  8. 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

  9. 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

  10. 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

  11. 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

  12. 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

  13. 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

  14. 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

  15. 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

  16. 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

  17. Miscellaneous News • Mentor Graphics acquires CodeSourcery • Sony ships Sony Internet TV • First non-phone Android product endorsed by Google • Google ships Android Gingerbread SDK

  18. Status of CELF work

  19. Agenda (CELF work) • CELF contract work • Open Project Proposal • Hardware donations

  20. 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

  21. Contract work of interest • YAFFS mainline • Trace format standard • RT-preempt online training

  22. 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.

  23. 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

  24. 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

  25. 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

  26. 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

  27. 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

  28. 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

  29. 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

  30. Thanks for your time

More Related