1 / 34

Embedded Linux BOF

Embedded Linux BOF. Tim Bird Sony Corporation CE Linux Forum Architecture Group Chair Ottawa Linux Symposium – July 23, 2008. Outline. Big News! Kernel Version Highlights Technology Watch List Other news Status Resources Discussion. BIG Community News!!.

mccroskey
Download Presentation

Embedded Linux BOF

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. Embedded Linux BOF Tim Bird Sony Corporation CE Linux Forum Architecture Group Chair Ottawa Linux Symposium – July 23, 2008

  2. Outline • Big News! • Kernel Version Highlights • Technology Watch List • Other news • Status Resources • Discussion

  3. BIG Community News!! • linux-embedded mailing list has been created!! • There are now “Embedded Linux” maintainers!! • Based on Andrew Morton talk at Embedded Linux Conference, and succeeding discussion • Also, Andrew worked behind-the-scenes to help make these things happen

  4. linux-embedded mailing list • Is now the main list for kernel-related embedded patches and discussion • Lower traffic than LKML – should be much easier to watch • Technical discussions about the kernel should be moved here from linux-tiny, celinux-dev, and others • How to subscribe and access archives: • http://vger.kernel.org/vger-lists.html#linux-embedded • You should subscribe!

  5. New embedded Linux maintainers • Who: • David Woodhouse – MTD/JFFS2/OLPC guy • Paul Gortmaker – longtime kernel developer • What: • Keep track of patches and technology development related to embedded • Handle stuff that has no other home • See LWN.net interview of maintainers at: • http://lwn.net/Articles/284767/

  6. Kernel Highlights • Previous kernel highlights • 2.6.26 highlights • Coming in 2.6.27 • Interesting patches (Tim’s list)

  7. 2.6.24 Kernel Highlights • Kernel markers • Loadable Security Modules framework was removed • PM Quality of Service (QOS)

  8. Markers • Infrastructure in kernel for static instrumentation • Kprobes are for dynamic instrumentation • Used by SystemTap and Linux Trace Toolkit(ng) • Goal is very low overhead when not in use • One compare, using immediate value • No memory access or cache/TLB usage issues • There's a new system to replace immediate values in kernel code, while the kernel is running!! • New “tracepoint” feature (see Matthieu Desnoyer’s presentation – Friday 10:00)

  9. 2.6.25 Kernel Highlights • Kpagemap • Matt Mackall's patches for fine-grained memory instrumentation (more on next slide) • Latency measurement API • Support for LatencyTop • See http://lwn.net/Articles/266153 • SMACK - simple mandatory access control • New lightweight MAC system for kernel, by Casey Schaufler • Go to OLS Session Saturday at 10:00 for more info (“SMACK in embedded computing”)

  10. Kpagemap • Can show details about every allocated (and virtual) page on the system • Introduces PSS and USS size metrics • PSS = Proportional Set Size • USS = Unique Set Size • Resources: • ELC presentation • http://selenic.com/repo/pagemap/raw-file/tip/memory-profiling.html • LWN.net article: • http://lwn.net/Articles/230975/ • Visualization tools: • http://selenic.com/repo/pagemap

  11. 2.6.26 kernel highlights • KGDB • Finally have a mainlined in-kernel debugger • Some clock framework, clock driver and CPUfreq stuff on ARM

  12. Coming in 2.6.27 • FTrace? • Anyone…, anyone…?

  13. Technology Review • Bootup Time • System Size • File Systems • Tracing • Security • Power Management • Real-Time • Middleware

  14. Bootup Time • Async initlevels • New patch by Arjan van de Ven • Puts some driver initialization in parallel with other boot tasks • See http://lkml.org/lkml/2008/7/18/488

  15. Size • Linux-tiny • Recently got CONSOLE_TRANSLATIONS mainlined • Next logical patches are ETHTOOL and IGMP • Bloatwatch 2.0 • At ELC 2008 (April), Matt Mackall released Bloatwatch 2.0 • Tool to show kernel size regression (and to investigate size problems) • See http://www.selenic.com/bloatwatch/ • Function Sections (see next page)

  16. Function Sections • "Function sections" is a technique for reducing the size of the kernel image • Consists of patches by Denys Vlasenko to support “gcc -ffunction-sections -fdata-sections” • Places each function into it's own linker section • This allows the linker to do better dead code removal (using “ld –gc-sections”) • Denys reported that usage of this technique got him about a 10% reduction in kernel size (in some conditions)

  17. File systems • SquashFS • AXFS • LogFS • UBIFS

  18. SquashFS • Compressed read-only file system, with smaller compression than CramFS • Latest release is 3.3, released Feb 5, 2008 • Has been a flurry of recent activity, leading up to Squashfs v. 4.0 • Phillip Lougher is working to mainline it • CELF is working to fund this effort

  19. AXFS • Advanced XIP file system • Can profile applications, and only use XIP on some blocks • Allows for fine-grained control over how much flash vs. RAM is used for an application set • Go to OLS Session Friday at 11:00 am for the latest info.

  20. UBIFS • File system build on UBI (flash block) instead of block layer • Nokia recently (April) submitted v 3.0 for mainline inclusion • http://lwn.net/Articles/276025 • http://www.linux-mtd.infradead.org/doc/ubifs_whitepaper.pdf

  21. LogFS • New flash filesystem by Jörn Engel to solve scalability problems with JFFS2 • LogFS keeps filesystem meta-data on flash instead of in memory • Does not need to read lots of meta-data on mount • This reduces mount time (and system boot time) • But, it has some outstanding problems

  22. Tracing • FTrace • LTTng (and Markers) • SystemTap • Printk-time arch support

  23. Function Trace (ftrace) • Isolation and generalization of latency-trace system from RT-preempt patch • Ingo Molnar and Steven Rostedt are primary developers • Compiler instrumentation of kernel functions (gcc -mcount) • Support for multiple tracers • V16 submitted in mid-June • Already in linux-tip • I should put KFT on top of FTrace

  24. Other Tracers • LTTng Status • Markers infrastructure mainlined in 2.6.24 • Next to mainline is actual LTTng core • Go to OLS session Friday 10:00 for more info • SystemTap • Nice system, but compilation step was not cross-compile aware • Lineo Solutions has demonstrated support for cross-execution! • Work needed for embedded platforms (e.g. Kprobes for MIPS) • Go to OLS Session Thursday at 14:00 for a ScriptFest • Printk-times arch support • Many platforms have bad timer resolution for printk times

  25. Security • LSM framework removed from kernel in 2.6.24 • Has some impact on non-mainlined security systems • Tomoyo Linux, App Amour • App Armour has more bad news • AppArmour group was let go from Novell • See http://www.news.com/8301-13580_3-9796140-39.html • Embedded SELinux (see next page)

  26. Embedded SELinux • There has been much progress recently to support SELinux in the embedded space • Requires filesytem with extended attributes • Some flash filesystems do not support xattrs • Yuichi Nakamura has described an embedded configuration of SELinux in as little as 700K • See OLS Session Friday at 14:00 for more information

  27. Power Management • Powertop • Shows timers and power state durations • Need support for CPUIdle, in order to show C-state (power state) activity for non-Intel processors • Richard Woodruff did support for TI OMAP • (Hey other semi-conductor vendors, what are YOU doing??) • Clock Frameworks – need more arch support • Wolfson voltage regulator stuff • See ELC talks for presentations on all of the above – http://www.embeddedlinuxconference.com/

  28. RealTime • RT-preempt • Latency tracer is being pushed to mainline • Remaining large pieces seem to have stalled getting to mainline: • Threaded interrupts • Sleeping spinlocks • Always needs tuning to make it work on a new platform • Tuning notes published at ELC 2008 (Frank Rowand) • Xenomai emulation layer for legacy RTOS application support

  29. Middleware • DLNA • CELF hosted the first ever open source DLNA summit, in Linz Austria • CELF has donated several DLNA specifications to open source projects • New dlna-dev mailing list • In process of obtaining sample hardware for various DLNA projects • DLNA summit #2 planned for ELC-Europe 2008

  30. Mobile Phone News • Open Handset Alliance and Android platform • Still waiting for deployment in phones • LIMO • Feb 4 - announced their Linux platform • Phones based on LIMO have shipped in Japan • See LIMO press release • http://www.limofoundation.org/press-releases/limo-press-releases/limo-rolls-out-world-s-first-globally-competitive-linux-based-software-platform-for-mobile-devices.html • OpenMoko becoming available • See Thursday Keynote – 16:00 • Nokia buys out Symbian with plans to make it available as open source (!!?)

  31. Status Resources • LinuxDevices.com • http://www.linuxdevices.com/ • LWN.net kernel pages • http://lwn.net/Kernel/ • Articles sorted by topic • http://lwn.net/Kernel/Index/ • Linux Weather Forecast • http://www.linux-foundation.org/en/Linux_Weather_Forecast • Embedded Linux Wiki • http://elinux.org/ • http://elinux.org/Technology_Watch_List

  32. Technology Watch List • CE Linux Forum maintains a list of technologies that we are "watching" • Things we are interested in • Kind of like the Kernel Weather Forecast, but with focus on embedded • List is reported on and updated at CELF meetings • Page is on elinux wiki: • http://elinux.org/Technology_Watch_List • Page is now up-to-date (mostly)

  33. Open Discussion • Topics? • Taking control of the kernel from desktop and enterprise guys • My favorite quote this week from a mainframe guy: “Sorry for all the bloat the last couple of years…” • …

  34. Thanks! You’re all invited to come to the CELF Embedded Developer BOF At the Westin Hotel Friday, July 25, 7:00 pm There will be prizes!!! (but no food )

More Related