Your SlideShare is downloading. ×
  • Like
Embedded Linux BOF Presentation
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Embedded Linux BOF Presentation

  • 627 views
Published

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
627
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
18
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

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