State of embedded Linux June 2010 update by 67Um7Azx


									Status of Embedded

   Embedded Linux
     June, 2010

             Tim Bird
   CELF Architecture Group Chair

   Kernel Versions
   Technology Areas
   Embedded Distributions
   Resources
Linux Kernel Versions
         Kernel Versions

   Linux v2.6.30 – 10 June 2009
   Linux v2.6.31 – 9 Sep 2009
   Linux v2.6.32 – 2 Dec 2009
   Linux v2.6.33 – 24 Feb 2010
   Linux v2.6.34 – 16 May 2010
       5 kernels in 11 months
   Linux v2.6.35 merge window just closed
       2.6.35-rc1 – 30 May 2010
       Linux v2.6.34

   LogFS
   Asynchronous Suspend/Resume
   Memory threshold notifications for cgroups
         Linux v2.6.35-rc1 (expected)

   Ramoops driver
       Records oops to persistent RAM so it can be
        recovered later
           Maybe obsoletes pramfs?
   Tracepoint size reduction
       Shrinks size of kernel with tracepoints turned on
        by about 100K
   Section renaming to support –ffunction-
         Patches to watch

   Speed up symbol resolution during module
       Sorts symbol table and avoid linear lookup cost
        per symbol when loading a module
       Developer, Alan Jenkins, reports saving 20% of
        time on coldboot
           Depends on modules being loaded
       Did not make it into 2.6.33
       Alan said he’ll try to mainline it again
         Patches to watch (cont.)‫‏‬

   Suspend blockers
       Android opportunistic suspend patches
        (successor to wake locks)
           More on this later
Technology Areas
       Technology Areas

   File Systems
   Power Management
   Real-time
   System Size
   Tracing
            File Systems

   SquashFS
       Patches for LZMA support were submitted to
        kernel mailing list in late 2009, but they missed
        the merge window
           See
           Linus wants lzma library access refactored
       LGE (Chan Jeong) recently submitted patches for
        LZO support
           Phillip said he'd mainline them
           See
         File systems (cont.)

       Toshiba has reported on performance of this
       LGE says they are using UBIFS in product, in
        part because it boots faster than YAFFS2
       CELF has contracted with Free Electrons to
        measure UBIFS mount times and find problem
         File systems (cont.)

   LogFS
       Log-structured file system which keeps meta-data on flash
          Mounts really fast (no need to build in-memory tables to
            start accessing)
          Also Documentation/filesystems/logfs.txt
       Mainlined (after much work) in 2.6.34
       CELF supported this a few years ago
       Introduction
       Announcement of mainlining
         File systems (cont.)

   LogFS is new, and it really needs testing
       Please try it out and report back!
         Power Management

   Suspend Blockers submission by Google
       Successor to wake locks
       Lots of discussion – no resolution yet
         See
         and
         And especially
       Last thing I saw were counter-proposals to utilize
        PM QOS system to push some “suspend
        blocker” functionality outside of kernel
         See for Alan Stern's
         See for Mark Gross'

   Work continues on improving RT performance
    on embedded platforms
   General work lately consists of removing Big
    Kernel Lock
       CELF considered funding this, but it looks like it
        will happen without a funded project
       See
   Frank Rowand has good information about
    using RT-preempt
       See Frank’s presentation from ELC 2010:
   More info coming to eLinux wiki soon!
         System Size / Memory

   Compression
       LZO kernel image compression
       It was merged in 2.6.33
   Ramzswap – (aka compcache)
       made the 2.6.33 merge window
       See
         System Size / Memory (cont.)

   Memory threshhold notifications in
       Can use cgroups to get notifications of
        memory problems on a per-app or app-group
       Merged in 2.6.34
       See Documentation/cgroups/memory.txt
        System Size / Memory (cont.)

   New allocator “SLEB” was proposed
   SLEB was rejected
     Linus says he won't take a new allocator
      until another one is removed
   New plan is to incrementally improve SLAB, if
    possible, while trying to avoid regressions

   Ftrace
       Proposal to merge ftrace and perf ring-buffer code
          Ingo not very enthusiastic
       Lots of code may move from ftrace to perf
       Trace-cmd and kernelshark
          New command line and GUI tools
          See presentations from ELC and Collab summit

   Perf
       Support for data interpretation on a different machine
          “perf archive”

   CELF project to create a trace format data standard

   Android 2.1 SDK (Eclair) released (28 Oct 2009)
   Number of devices still increasing
       Non-phones starting to appear (tablets and TVs)
       Google TV / Sony Internet TV
   Android patches removed from mainline kernel
       Greg Kroah-Hartman talked about this at ELC
       Google and kernel developers had private meeting at
        Collaboration Summit, and hashed out some issues
        Android (cont.)

   Froyo (v2.2) features discussed at Google I/O
       Dalvik now has a Just-In-Time compiler
           “Froyo runs apps up to 450% faster” (really?)
           Actual Google I/O demo of popular game looked
            about 40% faster (in terms of frames per second)
               Still very good
       Flash support
       WiFi tethering
       Batch app upgrade
       Faster Javascript

   Moblin + Maemo = Meego
   Intel and Nokia joining forces to create single
    embedded distribution
       See
   Lots of stuff about this at ELC and Collab
   Early (partial) release was March 31
   Full release of Meego 1.0 was May 25

   Ubuntu netbook
       Now working towards targeting ARM
       Some rumors of them support Android apps
       Canonical is working to support appliances
       Have new “Unity” netbook interface
   “Ubuntu Light” targeted at instant-on

   HP buys Palm and now owns WebOS
       OS used on current Palm Pre
       Expected to ship on tablets by end of year
   I haven’t seen an WebOS opensource site
         New Consortium

   Linaro
       Focused on technologies and improvements of
        Linux for ARM platforms
           Seems like “CELF for ARM”
       It’s not entirely clear exactly what they are going
        to do

       If you are not a subscriber, please do so
       This is an invaluable community resource that
        needs your support
       Prices just went up a bit ($7 per month vs. $5 per
        month for professional subscription)
   eLinux wiki
   Linux-embedded mailing list

To top