CELF Embedded Linux Conference

SESSIONS

The conference program will be a combination of sessions, tutorials and BOFs.

BOF= Birds of a Feather (from the saying "Birds of a feather flock together") An informal discussion group to consider a specific issue or subject.

 

ELC 2009 Session Descriptions

Keynotes
Panels
Presentations and Tutorials
Birds-of-a-Feather Sessions
Demonstrations


KEYNOTES

Keynote: Dirk Hohndel
Company: Intel
Title: Ubiquitous Linux

Description:
No one is surprised to see Linux in a data center. At least no one should be surprised. But few people realize just how much Linux is penetrating their every day life - how much they constantly interact with Linux (and other open source software).

In this keynote Dirk will try to show the Ubiquity of Linux and how it is changing the rules of how we think about what's a computer and what isn't.

Dirk Hohndel has been an active developer and contributor in the Linux space since its earliest days. Among other roles, he worked as Chief Technology Officer of SuSE and as vice president of The XFree86 Project, Inc. Prior to his position at SuSE, Dirk was Unix architect at Deutsche Bank; before that, he was a senior software engineer for AIB Software Corporation and PLATINUM technology.

Dirk is currently Chief Linux and Open Source Technologist for Intel, where he directs Intel's Open Source Technology Center. He is active in many open source organizations, various program committees and advisory boards. Dirk holds a diploma in Mathematics and Computer Science from the University of Würzburg, Germany. He lives in Portland, OR.

Top


Keynote: David Woodhouse
Company: Intel
Title: Embedded Linux and Mainline Kernel

Description:
Embedded Linux has more in common, technologically, with other Linux use areas than many embedded developers realize.  In this talk, David will describe some of the important intersections between the features embedded developers care about and those needed for enterprise and desktop systems.  The stereotype of embedded developers not needing to interact with the greater Linux community is wrong.  David provides the technical rationale for increased interaction in the community  as well as tips for better involvement by embedded developers.

David is one of the two first official 'embedded maintainers' for the mainline Linux kernel. David got involved in Linux while at University. His first encounter with solid state storage was a summer vacation job on networking over power line, using Linux boxes for routing. It was part of the basis of what later became the MTD [Memory Technology Device] subsystem. Later David ended up working for Red Hat's engineering services division, doing board ports, drivers and other work. That's when JFFS2 was written, as part of a customer contract.
After some 8 years at Red Hat, David joined the Intel Open Source Technology Center, a job that he can combine with his volunteered role as 'embedded maintainer'. Community interaction will continue to be part of his day job.

Top


PANELS

Moderator: Tim Bird
Panel: Embedded Linux Kernel Features and Development
Panelists: Jonathan Corbet, Matt Mackall, David Woodhouse

Description:
In this panel, features related to embedded Linux that have recently been mainlined (or contributed but NOT accepted) will be discussed.  Also, panelists will share their views on the obstacles for embedded developer to participate with the greater community, and how (or if) those can be overcome.  We'll discuss whether Linux really has achieved ubiquity in the embedded market, and what that means going forward for industry and community members.

Top


PRESENTATIONS and TUTORIALS

Presenter: Kate Alhola
Company: Nokia
Title: Maemo 5 (Fremantle), mobile Linux platform with cellular connectivity

Description:
Overview of Maemo platform's fifth edition. Maemo 5 adds lots of new unique features to popular Maemo platform, such as cellular connectivity, and enables accelerated animated UI graphics with
technologies like Qt 4.5, OpenGL ES 2.0, Clutter, and Matchbox composite window manager. New Maemo SDK and how to develop applications for Maemo 5.

Kate Alhola is the maemo chief engineer in Forum Nokia.  Kate is a long term open source developer working at the moment with Maemo platform in Forum Nokia. She has written several open source application projects for maemo and is participating in the maemo Qt port project. Before Nokia Kate has been working with embedded Linux and RTOS.

Top


Presenter: Kate Alhola
Company: Nokia
Title: Animated UI technologies in Maemo 5 (Fremantle), mobile Linux environment

Description:
Maemo 5 introduces animated UI technology to Maemo platform. Maemo 5 enables animated UIs based on Qt, OpenGL ES 2.0, Clutter, and Matchbox composite window manager. The presentation handles ways to bring modern animated UI technology into a low power mobile environment. How to write animated UI applications with Qt 4.5 and Clutter, practical examples about API's, how to write applications, and what issues need to be considered when writing applications for Maemo platform.

See above for biography

Top


Presenter: Reece Pollack
Author: Mike Anderson
Company: The PTR Group
Title: What are Interrupt Threads and How Do They Work?

Description:
The real-time patches are soon to be part of the mainline kernel tree.  With these enhancements comes a new approach for handling ISRs --namely the interrupt thread.  What are interrupt threads and how do they work?  What does this mean to the device driver developer?  How can we use these entities to guarantee performance in an embedded system?  This presentation will outline the motivations for interrupt threads and how best to take advantage of them.

Mike Anderson's background encompasses over 30 years of computer experience ranging from supercomputers to embedded 8-bit microprocessors. With over 20 years focusing in the RTOS marketplace using VxWorks, pSOS, and RTX-32, among others, Mike brings a unique perspective to the embedded Linux arena. His Linux experience encompasses many years using and deploying commercial and open source Linux distros from companies like MontaVista, Wind River Systems and the Denx ELDK as well as building distros from scratch for ARM/OMAP/XScale, PPC and MIPS.

Top


Presenter: Reece Pollack
Author: Mike Anderson
Company: The PTR Group
Title:  User-Space, Multi-core Development Issues

Description:
With multi-core processors becoming more prevalent in embedded applications, developers must become aware of the issues associated with process/thread migration, interrupt affinity, and hard and soft affinity assignments in order to optimize performance.  This presentation will highlight the effects of process migration through a series of demos and show techniques for ensuring good application performance on a multi-core system.

See above for biography

Top


Presenter: Jeff Arnold
Organization: Ksplice, Inc.
Title: Ksplice: Rebootless kernel updates

Description:
Currently, embedded devices running Linux cannot be updated to fix kernel problems without rebooting those devices, which is unacceptably disruptive in many applications.  New kernel technology, called Ksplice, makes it possible to apply updates to Linux--fixing security and reliability problems--without disrupting a device's operations.

The Ksplice software constructs rebootless kernel updates automatically based on traditional source code patches (e.g., patches taken directly from Linus' Git tree). Specifically, the software takes as input a source code change in unified diff format and the kernel source code to be patched, and it constructs an update for applying the patch to the corresponding running kernel.

This talk will describe the design of Ksplice and how it can be used to update embedded devices without rebooting.

Ksplice is available under the GPLv2 from http://www.ksplice.com/download.  More information about Ksplice,  including a technical paper describing how it works, is available from http://www.ksplice.com.

Jeff Arnold started development on the Ksplice software in early 2007 as a  research project at MIT.  In 2008, Jeff and three other MIT alumni started  Ksplice, Inc. in order to develop the technology further.  Jeff currently works in Cambridge, Massachusetts.

Top


Presenter: Eric Cloninger
Company: Motorola
Title: Building an Embedded Tools Standard Using Eclipse

Description:
Device convergence is continuing apace--the simplest phones do much more than making calls; home entertainment units support a variety of communication stacks; and location awareness is making an impact in many aspects of our daily life. In the past, devices were created with a "hard" real-time OS, but the trend toward embedded Linux reaps benefits of the royalty-free kernel, the familiar development model, and accelerated time to market.

Short development cycles and the lack of early hardware prototypes make embedded and mobile Linux projects more difficult than they need to be. The Eclipse DSDP project provides components whose purpose is to make device development simpler.

In this session, you will see a overview of the Eclipse DSDP open-source project, with emphasis on the Tools for mobile Linux sub-project. Learn how to use these components to provide free and useful tools for your project and shorten development cycles. Finally, a demonstration of the Eclipse DSDP Packaging project and show how your company can use it as a standard for your teams development tools.

Eric Cloninger is a Senior Product Manager for Motorola's MOTODEV Studio and the lead for the Eclipse Foundation Tools for Mobile Linux (TmL) project. At Motorola, he leads teams of developers working on Eclipse open source projects and products targeting Motorola's next generation of Linux-powered cell phones. When he's away from the IDE, Eric spends his time hiking, paddling, and photographing the world around him.

Eric is an alumnus of Oklahoma State University.

Top


Presenter: Magnus Damm
Company: IGEL, Co.
Title: Runtime Power Management on SuperH Mobile

Description:
The presentation gives an overview of the SuperH Mobile runtime power management implementation in the upstream Linux kernel. Areas such as tickless timers, cpuidle and clock framework integration are covered together with device driver power management examples.'

Magnus Damm is a pragmatic open source hacker with deep understanding of embedded hardware and operating system internals. His primary interest since the late 1990s is working with the Linux kernel and customizing it for fun and profit. Magnus has experienced both extreme sides of kernel hacking; Embedded Linux with ARM, PowerPC and SuperH as well as Enterprise Linux involving x86, x86_64 and ia64.

Magnus is currently focusing on upstream SuperH development in Tokyo, Japan.

Top


Presenter: David Daney
Company: Cavium Networks
Title: Some new tricks for better performance in MIPS-Linux

Description:
Over the past year there have been many improvements in the MIPS-Linux software ecosystem that make life easier for people developing MIPS-Linux based systems.  For the compiler toolchain, in many cases, dramatic code performance gains can be realized from improvements to the MIPS ports of GCC, GNU Binutils and GNU libc.  The debugger has gained support for hardware watchpoints, and the Linux kernel has learned some new tricks that allow for smaller code in kernel modules.Things have not been standing still in the land of MIPS.

The presentation will examine several use cases with code samples, and explain how improved program performance can be achieved when using new compiler features.  On the debugging side, we look at how the new gdb hardware watchpoint support can help us on those rare occasions when we are afflicted by memory corruption.  Finally, we explain how loading the Linux kernel in mapped memory allows for more efficient code to be used in kernel modules.

David Daney is a Senior Software Engineer at Cavium Networks where he works on Linux kernel support for Cavium's family of multi-core mips64 processors.  In addition to the Linux kernel,  David is a contributor to the GCC, GNU Binutils and GDB projects.  Prior to his current position, he designed and wrote software for Linux based digital television sets and set-top boxes.

Top


Presenter: Mathieu Desnoyers
Organization: École Polytechnique de Montréal
Title: Deploying LTTng on Exotic Embedded Architectures

Description:
This presentation will guide the audience through the latest features added into the LTTng tracer. It will demonstrate typical usage scenarios of the latest features including Kprobes and Function Tracer support. More importantly for the embedded community, creation of trace clocks for specific embedded architectures, which is the most architecture-specific aspect of the LTTng tracer, will be explained. The
ARM OMAP3 will be used as an example of a LTTng port to such architecture. Considerations about trace clock precision and performance impact, as well as interaction with sleep states, will be discussed.

Mathieu Desnoyers is the maintainer of the Linux Trace Toolkit (LTT) project since November 2005, taking over the development with the new LTTng. He is the author of Linux Trace Toolkit Next Generation (LTTng) and the main developer of Linux Trace Toolkit Viewer (LTTV) since the
project started in 2003. He worked in close collaboration with Google, IBM research and Autodesk Entertainment. For the past year, he has focused on preparing the ground for mainlining a tracer in the Linux kernel. Parts of the LTTng project has been integrated into the mainline kernel : the Linux Kernel Markers in kernel 2.6.24 and the Tracepoints in kernel 2.6.28-rc1. He is currently completing a Ph.D. in Computer Engineering at École Polytechnique de Montréal.

Top


Presenter: Jake Edge
Company: LWN.net
Title: Security issues for embedded devices

Description:
Security flaws in embedded Linux devices can lead to a wide variety of unpleasant behaviors, ranging from denial of service to complete system compromise.  There are a number of different areas within an embedded Linux system that can be exploited if the device developers do not take precautions.  Because Linux is a full-featured operating system, there can be a larger attack surface than there is for less capable operating systems.  In addition, the default configuration that a developer may be used to from their desktop Linux machine may have services and protocols enabled that are not desirable for embedded devices.

The talk will be targeted at "system level" embedded developers who are responsible for creating and managing the Linux installation that will be running on the device.  It will give examples from various
vulnerability reports of actual problems that have occurred in shipping devices.  The audience will leave with a good understanding of where to look for security vulnerabilities along with ideas on how to avoid or prevent them.

After 20 years as a software engineer for seemingly countless small companies, Jake Edge joined LWN.net as a full-time editor in 2007.  He has worked on embedded systems, of the Linux and roll-your-own OS varieties, as well as system level software for a variety of applications, mostly Linux-based. Each week, Jake puts together the LWN Security page as well as writing articles on other topics of interest to the Linux and free software development communities.  He lives in western Colorado with his wife Kristine and two loony dogs.

Top


Presenter: Klaas van Gend
Company: MontaVista Software
Title: Top 3 pains in professional use of bitbake

Description:
Building embedded userlands has caused delays to many projects over the years. It usually gets postponed until too late, it doesn't work the first time and it takes much more time than expected. Klaas will go into details of why building good user lands is important, why it is hard to do and how an open source tool and the "hobbyist" community around bitbake can help - even for professional developers.

Since 1999, Klaas van Gend has been professionally engaged with Linux software development for various companies including Philips and Siemens. As a senior solutions and services architect at MontaVista, he helps embedded experts get the most out of open source by understanding customer issues and assisting them in applying Linux and other software technologies in their embedded designs.

Klaas has been a speaker at various conferences on the topics of real-time Linux, build systems, and UMTS (the latter because he is lead developer of one of the 3G mobile communications projects for Linux).

Originally from the Netherlands, Klaas and his wife now reside in California until July 2009. They enjoy spending their free time watching movies or venturing on hikes while taking in the nice weather.

Top


Presenter: Toru Homma
Company: Toshiba
Title: Evaluation of Flash File Systems for Large NAND Flash Memory

Description:
JFFS2 has been commonly used as one of the file systems for NAND Flash memories.  Recently the size of NAND Flash device is getting larger.  JFFS2 has some issues in this case like booting time and RAM usage.

There are some other file systems to support large NAND Flash devices  like YAFFS2, LogFS, and UBIFS.  It is not easy to select which file system is to fit your product.  This talk covers the benchmark of these file systems by testing large NAND Flash devices.

Toru Homma works for Toshiba Digital Media Network Company.  Toru worked on PC software for many years and then started working on embedded system software about one year ago.  His group at Toshiba works on embedded Linux for consumer products.

Top


Presenter: Edgar E. Iglesias
Company: Axis Communications
Title: Debugging and profiling embedded Linux/CRIS systems with QEMU

Description:
Debugging and profiling embedded systems can often be a challenging task. Although things are improving, many modern SOC's for the embedded market still lack advanced hardware assisted debugging and profiling mechanisms. In particular, debugging and profiling issues related to memory caches and processor pipelines can be very challenging.

In the absence of hardware assistance, simulators and emulators can be of great help. Unfortunately, emulators or simulators that model caches and processor pipelines with detail are often very slow.

With this work, we present a few extensions to the CRIS port of QEMU (an increasingly popular system emulator). We found that QEMU can significantly help in tracking down cache and processor pipeline related issues despite of QEMU's relatively high level of emulation. We also see that while modeling carefully chosen parts of the caches and processor pipeline, QEMU can still emulate systems very fast while providing the necessary data for analysis.

Edgar E. Iglesias has worked as a software engineer at Axis Communications since 1997. He has over 15 years of programming experience, mainly with embedded systems and networking.

Top


Presenter: Jaehoon Jeong
Company: Samsung Elec. Co., Ltd.
Title: Dynamic Instrumentation of user-space application based on kprobe

Description :
Being able to monitor user-space application behaviors during execution is a very powerful method for localizing errors and analyzing performance. One method that provides recognition of application behaviors with high precision is tracing that allows saving control flow of application during execution. Application tracing requires a way to introduce additional functionalities into application in order to keep track of its execution path. This can be accomplished by instrumentation of application that allows collecting important parameters at the current point of application execution. Instrumentation can be inserted either dynamically or statically.

Dynamic instrumentation does not need source code to integrate tracing functionality into application. In contrast, static instrumentation requires the source code and also needs recompilation of investigated application after instrumentation. Dynamic instrumentation requires fewer efforts to monitor application than static one. However, in the demand paging environment, dynamic instrumentation is hard to achieve because implementation of the method needs to take into account the operation system behavior to provide high-quality result.

In spite of the fact that a modern embedded system has extended memory and adopted relatively fast processors, development for such systems requires to pay attention to performance and resource usage for all programs running on these systems. Dynamic instrumentation must have low overhead and low resource usage to be suitable for embedded systems. A majority of existent instrumentation methods does not satisfy these requirements because well-known instrumentation techniques were developed for host computers or servers and do not consider specifics of embedded systems.

This presentation describes a method for dynamic instrumentation of user-space application that allows collecting information from application at run-time. It has a flexible interface for users to control monitoring of data without source code recompilation, application reloading and other superfluous actions. It provides an easy way for monitoring applications with high precision and low overhead , which allows using this method under limited resources of embedded systems.

Jaehoon Jeong received an MS degree in Electronic engineering from Hanyang University , Seoul Korea , in 2001. He joined to Samsung Software Lab. in 2001. His research interests include System Software design and development for embedded systems, Linux Kernel BSP and new kernel feature development for CE Product. Especially he is working on system performance improvement with dynamic instrumentation.

Top


Presenter:  Bhagyashri Hemant Katole
Company: C-DAC
Title: Embedding Network Devices with Linux

Description:
Embedded hardware boards are emerging as next generation advanced communication computers. Embedding of linux-based software on these boards allow technology integrators to produce better networking products.

The objective is to give an overview of design and implementation methodology to embed linux based network devices. The steps are illustrated by taking a case study of embedding a Virtual Private Network (VPN) device. We demonstrate the embedding of C-VPN – a network security product on Soekris net4521 and RouterBOARD230 embedded boards. 

This also discusses my experiences while backporting device driver, procedure to build toolchain and distribution for target embedded platform.

Bhagyashri Katole is working as Member Technical Staff of the Network and Internet Software Group (NISG) at C-DAC in Pune, India, which specializes in design, development and delivering futuristic Networking of Internet Technologies.  Her areas of interest include kernel programming, porting device drivers and embedding products on various embedded platforms.

Top


Presenter: Dongsoo Kim, HeungJun Kim
Company: Samsung Electronics
Title: Framework for digital camera in Linux

Description:
In these days we practically use devices with camera in general which is based on SoC camera subsystem. Those camera devices have been definitely improved in functional and performance level.
In the specific case of mobile phone, many of them have cameras on them and even dual for 3G handsets.

In case of Linux-based smartphones, we have to control camera devices with video4linux APIs. We've got several video4linux APIs in Linux kernel already but thats not enough. Because they are mostly for USB PC cameras as known as “webcam”. However, mobile-phone based camera devices are improving to have functionality similar to regular digital still cameras, including shutter device, iris, and some devices support object detection and wide dynamic range functionality. But video4linux APIs in kernel mainline cannot cover all of them because those APIs are geared towards “webcam”-level cameras.

Samsung is defining new video4linux APIs for digital cameras and wants to explain how it works.
Our presentation covers several SoC camera drivers in linux and legacy video4linux APIs and new video4linux APIs for digital camera.

And we also will talk about camera porting issues.

Dongsoo Kim is a S/W engineer in the Mobile S/W Platform lab in Samsung Electronics. He is in charge of camera device drivers and the video4linux layer in the Lab.  His latest focus is "How to make a mobile phone camera like a real digital camera."

Heungjun Kim is an engineer working in the Mobile S/W Platform Lab, Samsung Electronics. His original major is in Robotics and he is currently making a robot operated with a Linux Machine Brain.

Top


Presenter: Denis Oliver Kropp
Company: The DirectFB Company
Title: DirectFB II

Description:
Within the past few years DirectFB 1.x became fairly standard in the TV market and other domains, while it has been adopted by major software vendors and hardware manufacturers. One of the key aspects is the clean design of its driver interfaces and modules for seamless integration into various software architectures or hardware platforms. Another important factor is the ability to build the core as a single process library with pure function calls down to the hardware, but also as a multi process solution without client/server overhead, allowing direct function calls down to the hardware as far as possible. This nature allows the integration of various applications, libraries, frameworks or systems including UI toolkits or virtual machines within one environment with efficient resource usage.

The roadmap of DirectFB 2.0 is focusing on those aspects to strengthen its position as an Open Hardware and Software Integration Layer that brings independent hardware and software vendors together in one architecture, providing full interoperability and efficient implementations of latest industry standards for graphical user interfaces on mobile devices, car and home entertainment systems, or any other consumer electronics with low to high end graphics and media processing capabilities. Once more, it sets a new standard for embedded graphics under Linux.

This talk sheds some light on the new software architecture.  In DirectFB 2.0 the Core has been rewritten, but the old interfaces are reimplemented on top and the old backends can be used via adaption modules. Older applications can just be recompiled to take advantage of the enhanced resource management. The new APIs allow applications to take full advantage of the available hardware features without having to know about the underlying platform or software environment. An extensible object oriented and distributable class system provides complete hardware abstraction and scales from single application and single core to multiple processes running on any number of processing cores. An outline of these concepts and the current state of implementation will be presented.

Denis Oliver Kropp, 27, is the chief architect of DirectFB and specialized himself in the area of system software engineering with a focus on user interfaces and video/graphics acceleration, having experience in these areas and Linux in general for more than ten years.

After more than four years of employment incl. DirectFB development and MHP implementation, followed by four years of contracting work around DirectFB, he's starting The DirectFB Company together with his wife and a couple of talented employees to fulfill the increasing amount of contracting requests and to support the evolution of DirectFB beyond the needs of customers.

Top


Presenter: Grant Likely
Company: Secret Lab Technologies
Title: It's Alive! - Linux on Embedded PowerPC porting guide

Description:
Nothing beats the feeling of success the first time you get a new board to boot the kernel and print out a login: prompt, but if you haven't ported Linux to a new board before then it can be daunting to know where to start.

This presentation will give and overview and demonstration of the steps required to boot Linux on a PowerPC embedded system.  It should be of interest to any developer who is or will be working on an embedded PowerPC system.  Specific topics to cover include; bringing up U-Boot, Linux boot sequence, describing the hardware with the Flattened Device Tree, writing the board support code, and writing device drivers.

Grant Likely has spent the last 14 years building embedded systems for the military and telecom industries. Over the course of several embedded Linux projects, Grant became an active PowerPC developer and maintainer of the Xilinx Virtex and the Freescale MPC5xxx platforms. In 2005 he founded Secret Lab Technologies Ltd., an embedded Linux engineering company, where he continues to play with unique hardware and tries not to let the magic smoke out.

Top


Presenter: Grant Likely
Company: Secret Lab Technologies
Title: Tux Meets Radar O'Reilly - Linux in Military Telecom

Description:
Military telecom systems have evolved from simple two-way radios to sophisticated LAN/WAN systems supporting voice, video and data traffic. Commercial technologies can be used to build these networks, but regular off the shelf equipment usually isn't able to survive the harsh environments of military field deployments.  Instead, system builders often rely on specialized rugged hardware running custom software to meet their system requirements.  Frequently the custom software is based on Linux.

This presentation discusses the implications associated with using Linux to build military telecom systems.  We will discuss the trade-offs and benefits with using Linux and how it can help meet the functional and reliability needs of the soldiers who depend on it.

See above for biography

Top


Name: Bruno Cardoso Lopes
Organization: LLVM
Title: Understanding and writing an LLVM Compiler Backend

Description:
LLVM is a compiler infrastructure aimed at providing aggressive optimizations in the entire life of a program - compile time, link-time (particularly interprocedural), run-time and offline (i.e., after software is installed)). It also provides static back-ends for the X86, X86-64, PowerPC 32/64, ARM,
Thumb, IA-64, Alpha, SPARC, MIPS and CellSPU architectures, a back-end which emits portable C code, and a Just-In-Time compiler for X86, X86-64, PowerPC 32/64 processors, and an emitter for MSIL. LLVM is an open source project (with its own license, very close to the MIT license) and is being used by companies such as Apple, AMD, Microchip (which recently contributed an experimental PIC-16 back-end), Sun, and Rapidmind. It can be easily used and compiled under Linux.

The presentation will focus in explaining how LLVM works, with an overall explanation about its many parts, with a more detailed approach in the backend scenario.

Bruno Cardoso Lopes is a PhD student at University of Campinas, Brazil. His academic research includes hardware simulation and code compression. In the past he worked and had experience with embedded systems, with drivers for Linux and FreeBSD. He's also an active contributor to the open source compiler LLVM (Low Level Virtual Machine), where he maintains the MIPS back-end.

Top


Presenter: Matt Mackall
Company: Selenic Consulting
Title: Visualizing Process Memory

Description:
Recent Linux kernels support the ability to obtain fine-grained (per-page) memory utilization information.  However, existing Linux tools do not present this information in readily accessible form.  In this presentation, Matt will describe his latest development work on tools to produce useful visualization of process and library memory utilization.

Matt Mackall is an independend kernel developer focusing on embedded systems.  He is a former member of the Linux Foundation's technical advisory board, three-time member of the Kernel Summit Program Committee, and a long-time contractor to and “Special Supporting Member” of the CE Linux Forum.  He is the original author/organizer of the Linux-tiny patch set, and author and maintainer of the SLOB kernel memory allocator.  He is also the lead developer of the Mercurial distributed version control system.

Top


Presenter: Dan Malek
Company: Embedded Alley
Title: Memory...The Most Precious Resource

Description:
Memory is arguably the most valuable resource in a Linux system. This presentation explains how Linux applications utilize memory during runtime. The cgroups memory controller features can be used to control and analyze memory usage in Linux. The kernel Out Of Memory (OOM) killer is also an important kernel feature to understand as it can contribute to system instability. Several solutions to the OOM issue are explored including the new userspace OOM handling feature.

Dan Malek, CTO and one of the founders of Embedded Alley Solutions, Inc. has nearly 30 years of operating system research and development experience. More than half of this experience surrounds the systems engineering of mission critical real-time aerospace, transportation, and communication projects. He then pioneered much of the embedded Linux software with Power Architecture processors, and continues to actively design and develop software for complex embedded Linux products.

Top


Presenter: David Mandala
Company: Canonical
Title: Ubuntu ARM Distribution

Description:
In this presentation we will review the challenges of porting the entire Ubuntu Distribution to ARM.  We will look at porting a standard Linux distribution to ARM which has traditionally been in the embedded space, and how we solved them.

Challenges:

We will see some demonstrations of Ubuntu Desktop, the Netbook Remix and other Editions running natively on several ARMv7 hardware platforms.

David Mandala manages the Ubuntu Mobile team for Canonical, and looks after the Ubuntu MID, Ubuntu Netbook Remix and Ubuntu ARM editions.  He has more then 30 years experience with computers used for multimedia and embedded computing and has a wide ranging background from radio and television electronics to computer programming.

Mandala has been involved with Linux since the mid-90's and was involved in early efforts to standardize training and Linux package and configuration locations. He went on to develop a product line of Linux based GPS tracking devices to track people, trucks and cargo containers. These used gprs and sms to communicate locations and status in near real time.

Mandala received his formal electronics education while serving in the US Navy, as has made contributions in many systems areas, including video systems, multimedia, and especially in open systems solutions.

Top


Presenter: William Marone
Company: Numonyx
Title: Distributed Cross Platform Test Automation

Description:
Testing and validation of changes to the Linux kernel, whether of kernel subsystems or drivers, can be a time and resource intensive process. Targeting multiple kernel versions for support increases this due to changes between releases. This is compounded further when the wide processor and hardware platform support of Linux is taken into account. Nonetheless this testing must be done.

This presentation demonstrates the time savings and resource conservation provided by a cross platform test system utilizing Distributed Ruby. The system performs automated testing of AXFS on
User-Mode Linux and ARM based development platforms, handling kernel pre-patching, kernel build, file system generation, and programming of flash devices. This is accomplished across ten different kernels simultaneously, allowing for accelerated validation of changes for back port compatibility as well as current kernel development.

It also highlights the strengths, weaknesses, and future test architecture changes for the test system.

William Marone joined Numonyx at its start in April of 2008, after initially starting with Intel Flash Memory Group in September 2007. New to the world of embedded Linux he has jumped in head first, prepping AXFS for release to the world. A perpetual student of Japanese, he seeks to mix his language studies with his work in the field of embedded Linux.

Top


Presenter: Paul Mundt
Company: Renesas
Title: Superpages Revisited: Transparent Application of Large TLBs on Embedded Systems

Description:
As memory sizes rise to meet the increasing memory consumption requirements of today's typical embedded applications, TLB sizes on embedded CPUs remain effectively unchanged; roughly several orders of magnitude removed from their general-purpose processor counterparts. Despite this, most embedded platforms support a wide variety of page sizes, allowing for greater TLB coverage, and subsequently, a quantifiable reduction in the TLB miss rate. Though varying page sizes go largely underutilized, both the Linux Kernel and userspace applications have many different interfaces available to them to facilitate their use without necessitating a change in the default system page size.

This paper takes a look at some of the available mechanisms for large TLB adoption, evaluates the pros and cons of each, and attempts to provide a general overview of the performance/complexity trade-offs.
Though the large TLB problem is architecture-agnostic, the SuperH (SH-4A/SH-X2 MMU) architecture is used as a reference platform, and is the primary focus of this paper.

Top


Presenter: Michael Opdenacker
Company: Free Electrons
Title: Update on filesystems for flash storage

Description:
With the UBIFS and SquashFS filesystems now available in the mainline kernel, embedded Linux system developers have multiple choices for their flash storage devices. How to choose between JFFS2, YAFFS2, UBIFS, and SquashFS?

To help our customers and the community make the right decision, we took the 2.6.29 kernel and measured how these filesystems compare in terms of mount time, access time, read and write speed, as well as CPU usage in several corner cases and with different flash chip sizes. Besides sharing lessons learned from our experiments, the presentation will also introduce you to each filesystem and its implementation. We will also give advice for flash based block storage (such as Compact Flash and Solid State disks), to reduce the number of writes and avoid damaging flash blocks. Then, surrender your JFFS2 partitions. Resistance is volatile ;-)

Michael Opdenacker is the founder of Free Electrons, a company supporting individuals and organizations creating embedded systems based on Free Software. Michael is best known for all the training materials he shared with the Free Software Community under a free documentation license (see http://free-electrons.com/training/). This represents more than 1500 pages of presentation slides, from kernel driver development, to real-time and embedded system development. Michael is a citizen of the Earth, with a French soul, a Belgian heart and a Finnish kernel.

Top


Presenter: Jeffrey Osier-Mixon
Company: MontaVista Software
Title: Cooperative Development Inside Communities

Description:
Community is one of the defining properties of open-source software in general and Linux specifically. However, the nature of community is open sharing, which seems counter-intuitive to marketers and businesspeople working in competitive markets. There are few markets as competitive or dynamic as the embedded world. How can companies cooperate at some points in the development cycle while they maintain their differentiation at other points? How can open communities---including mailing lists, blogs, forums, corporate communities, and conferences---promote and enable this cooperation to accelerate development?

This presentation draws a detailed picture of the wealth of community involvement surrounding embedded Linux and presents a look at the evolution and future of cooperative development. It also introduces a new community that enables embedded Linux developers, hardware manufacturers, and software providers to connect, share, and design commercial-ready embedded devices.

Jeff Osier-Mixon is a technical writer, developer advocate, and community organizer with MontaVista Software. He is currently helping to develop an online community centered around embedded Linux projects, sponsored by MontaVista. Jeff has been involved with embedded open-source software since 1992. He participated in the 2006 Power Management Summit sponsored by CELF, and presented at the 2008 Embedded Linux Conference in Mountain View. He also writes about open-source software at http://www.jefro.net/

Top


Presenter: Conrad Parker
Company: Jinzai
Title: A Linux multimedia framework for SH-Mobile processors

Description:
Over the past year- I've been working with the Japanese semiconductor manufacturer Renesas, developing a Linux multimedia stack for the SH-MobileR series of application processors. These processors have an integrated DSP and dedicated hardware for video encoding and decoding.

In this presentation I'll introduce various free software components for building multimedia gadgets on this platform. I'll also discuss architecture-independent details about sharing UIO devices and using OpenMAX IL components through Bellagio and through Android OpenCore.

Conrad works with Renesas in Tokyo, designing the Linux multimedia architecture for a new line of mobile processors. He previously developed the Sweep sound editor and components of Annodex, an open standard for hyperlinked media. He regularly contributes to various free audio and video software projects.

Top


Presenter: Rodolph Perfetta
Company: ARM Limited
Title: The Web in your Hand - Optimizing Browsing Experience with ARM Embedded Linux Devices

Description:
This talk will outline the implementation tradeoffs and optimizations in existing browser technology in order to meet platform constraints. This will include a review of JIT and VM options used with Linux platforms and how they can benefit/exploit architectural features and be used across a range of other projects.

Rodolph is staff engineer in ARM Media Processing Division. For the last 8 years, his work focused on Virtual Machine optimisations including memory management, interpreter, dynamic compiler and the use of hardware acceleration capabilities available on ARM (Jazelle DBX or RCT). He is currently working on open source VMs such as Tamarin to complete and optimize their support for ARM.

Top


Presenter: Thomas Petazzoni
Company: Free Electrons
Title: Building Embedded Linux Systems with Buildroot

Description:
Buildroot is a tool that allows to automate the process of building a cross-compiling toolchain and a complete embedded Linux system from scratch. Providing more than 600 packages for the most common free software used in embedded systems, Buildroot allows to easily build highly-integrated, custom Linux systems, without suffering the pain of cross-compiling.

In this presentation, we'll cover why automated system-building tools are useful, what Buildroot provides, how it works, and how it can be extended to fit your needs. The presentation will also highlight the most recent news about Buildroot, since the project has seen a huge increase in activity, with a new maintainer and stable versions being officially released.

After having spent a significant part of its free time at university on hacking small operating systems, Thomas Petazzoni worked during three years as a kernel developer in a French company developing storage virtualization software for computer clusters. He now works for Free Electrons, a free-software-friendly company providing embedded Linux development and training services, while enjoying the nice weather and food of the South of France and advocating free software on his spare time.

Top


Presenter: Matthew Porter
Company: Embedded Alley
Title: Video4Linux: What about Output?

Description:
Video4Linux has historically been thought of as a video capture interface. In fact, the vast majority of V4L drivers in the kernel are capture only drivers. This presentation explores the world of video output and output overlay devices and how these devices fit into the V4L API. Utilizing a V4L output device in user space normally involves integrating support for V4L into popular media frameworks and graphics solutions. Gstreamer, MPlayer, and X.org can all be optimized by targeting a V4L output driver.

Matt Porter started contributing to Linux as an early Debian GNU/Linux developer. As an early adopter of embedded Linux, Matt has developed and maintained support for embedded PowerPC systems in the mainline kernel. He was the first member of the Linux kernel team at Motorola Computer Group and later joined MontaVista Software as the founding member of the Arizona engineering center. Matt joined with other embedded Linux veterans to found Embedded Alley and now works in many areas of kernel and userspace to provide solutions for embedded Linux products.

Top


Presenter: Andre Puschmann
Organization:IMMS - Institute for Microelectronic and Mechani-tronic Systems
Title: Quantitative analysis of system initialization in embedded Linux systems

Description:
Since the first release of the Linux kernel for AT-386-compatible personal computers in October 1991, the system has been ported onto many platforms. In the last couple of years, especially embedded consumer electronic devices turned out to be a perfect target for Linux. Unfortunately, standard Linux systems used on desktop machines typically show a very poor boot performance. This is not acceptable for most of the embedded systems.

The main purpose of this presentation is to identify the most critical parts of the boot process in embedded Linux systems. Furthermore, we would like to illustrate some solutions and techniques for reducing boot time. Almost all concepts can be reproduced on similar systems. In this work, however, the experiments gave insight to understanding the ideas on a XScale PXA270 based board. Moreover, we investigated the advantages of execution in place on that system."

Andre Puschmann is a computer science student at Ilmenau University of Technology, Germany. He is currently writing his final theses in the field of microkernels, Linux and industrial Ethernet. He has worked for a number of smaller and larger companies in Germany, including Siemens AG. Andre is a co-founder of a startup company in the embedded sector, developing software solutions in the field of real-time systems and embedded Linux devices.

Top


Presenter: Jim Ready
Company: MontaVista Software
Title: Plan Your Work, Work Your Plan: Avoiding Common Linux Development Stumbling Blocks

Description:
With today’s time-to-market pressures, there is not much time to evaluate which RTOS to use. Linux is an easy choice, based on its rich capabilities. So, why is it that some engineering teams are able to keep focused on developing the application software, and others meet roadblocks? Whether purchasing a commercial Linux or downloading from kernel.org, there are still potential challenges. These challenges can be quickly overcome by understanding the impact of choices made early in the project. This presentation will explain how planning and best practices help design teams meet time to market pressures and avoid unnecessary frustration in the development process.

Jim Ready is the Chief Technology Officer and Vice President of Engineering of MontaVista Software Inc. Called “arguably the one individual most responsible for establishing the embedded OS and tools market” by LinuxDevices.com and “an iconic figure within the IT industry” by SD Times ,Jim is a recognized authority in the embedded systems and real-time software industry. The co-founder of Ready Systems, he developed the world's first commercially viable real-time operating system (RTOS) product: the VRTX real-time kernel. Ready Systems, founded in 1980, merged with Microtec Research in 1993, went public in 1994, and was acquired by Mentor Graphics in 1995. During this period, Jim served as Ready Systems' President, and as Chief Technical Officer (CTO) at Microtec/Mentor. In 1999, Jim founded MontaVista Software to provide the Linux operating system to the embedded systems market, and to offer embedded-system expertise to the open source Linux community. Jim got his BA from University of Illinois at Urbana-Champaign in 1971 and his MA from the University of California, Berkeley in 1976.

Top


Presenter: Frank Rowand
Company: Sony
Title: Musings on analysis of measurements of a real-time workload

Description:
Analysis of real-time performance is often focused on the worst case "bad" value, such as maximum latency or maximum interrupt disabled time.  This data is critical for a hard real-time application, but may be overly strict for a soft real-time application.  This talk examines some statistics that may be interesting and useful for examining soft real-time applications.

Frank has hacked on many kernels, both real-time and not, including  Linux, HP-RT, HP-UX, NeXTstep, and MPE.  His computing experiences are varied; some areas of technology that he has been known to touch include embedded, real-time, machine dependent kernel, networking, drivers, and performance.  He is currently employed by Sony Corporation of America.

Top


Presenter: John Mehaffey
Authors: Alexandre Rusev, Anna Dushistova
Company: MontaVista
Title: Debugging with JTAG

Description:
This session examines a mixed software-hardware approach to embedded systems debugging. JTAG electronics system principles will be reviewed, starting with hardware and finishing with advice on using JTAG with open source software tools for embedded project development. Several JTAG use cases will be considered, including chip interconnection testing, automatic chip testing, flash programming, and SW/HW debugging. The internal complexities of JTAG-related technologies will be discussed along with practical applications such as microprocessor software and firmware development, and JTAG use with PCB, FPGA and ASIC technologies. JTAG hardware equipment from different vendors will be reviewed in conjunction with software tools that simplify the use of the equipment.

Anna Dushistova is a software engineer at MontaVista Software, where she works in the Developer Tools Team on MontaVista's DevRocket IDE. She is a committer on the Eclipse Device Software Development Platform -- Target Management project. Anna holds a PhD in Mathematics from Moscow State University.

Alexander Rusev has over 10 years of experience in different fields of software development, including object oriented programming, embedded Linux, Linux kernel, Java technology, hardware programming, and mobile applications. He has worked at MontaVista Software for more than four years as part of the Mobilinux team, implementing new features and fixing bugs.

Previously he was the Java projects lead at ASoft, where he was responsible for various solutions in banking and telecommunications. Before starting his career as a commercial software developer, Alexander spent several years as a researcher at the Institute of Biochemical Physics, Russian Academy of Science. Alexander holds a Ms. of Science in Physics from Moscow State University.

Anna Dushistova is a software engineer at MontaVista Software, where she works in the Developer Tools Team on MontaVista's DevRocket IDE. She is a committer on the Eclipse Device Software Development Platform -- Target Management project. Anna holds a PhD in Mathematics from Moscow State University.

Top


Presenter: Leandro Melo de Sales
Organization: Embedded Systems and Pervasive Computing Laboratory at Federal University of Campina Grande, Brazil
Project: BRisa Project in collaboration with Nokia Institute of Technology, Brazil
Title: BRisa UPnP Framework for Embedded Systems

Description:
BRisa is a open source framework written in Python that allows the implementation of UPnP devices, services and control points. Besides the framework, the BRisa project provides a set of UPnP applications written on top the framework that implements UPnP specification for Audio and Video, in addition to a UPnP Control Point. There are also a set of examples explaining how developers can implement their own UpnP devices and services. For the UPnP A/V specification, we have provided the BRisa Media Server, which allows users to share and search content from UPnP A/V devices, and the Media Renderer that allows users to renderer multimedia content. In addition, the Media Server offers a plugin architecture enabling users to share their own contents stored in multimedia portals, such as SHOUTcast, Flickr and YouTube Videos.

In this presentation I will talk about UPnP, how to build a simple UPnP BinaryLight using BRisa and our goals regarding to BRisa project for embedded systems. Initially the goals were focus the project only at Nokia maemo platform, but nowadays we have extended the strategies to make it available in Symbian OS and other operating systems. By the way, we have successfully run the same code of BRisa in Linux, Macintosh and Windows operating systems, proving that the code have a good level of portability, thanks to python and our efforts to always coding thinking on the evolution of the software.

Leandro Melo de Sales is a Software Engineer at the Embedded Systems and Pervasive Laboratory at Federal University of Campina Grande, Brazil, where he is a PhD candidate in Computer Science.

He has been developing embedded systems mainly for Nokia platforms through Nokia Institute of Technology in Brazil. He focuses his efforts in technologies/platforms such as Symbian and maemo in areas like Universal Plug and Play (UPnP), Location Based Systems, Semantic Web Services, VoIP and DCCP Internet protocol and development of DCCP for the Linux kernel. Currently he is the BRisa and E-Phone projects team leader.

Top


Presenter: Christian F.K. Schaller
Company: Collabora
Title: Basic video editing on embedded devices using GStreamer

Description:
This talk and demonstration will deal with the video editing features offered in GStreamer and how they can be taken advantage of on an embedded device. The talk will discuss the current state of editing in GStreamer and showcase how even with limited system resources one can record a video clip and do basic editing like cutting, cropping and overlaying an audio track and add some simple transitions.

Christian Schaller is a director at Collabora Multimedia. Christian has a long track record in open source having been part of projects such as GNOME and GStreamer for over a decade. Christian is currently working out of the Collabora offices in Cambridge, United Kingdom.

Top


Presenter: Dr John Williams
Company: PetaLogix
Title: Embedded Linux on FPGAs for fun and profit

Description:
After porting and maintaining the MicroBlaze kernel for a number of years, in 2008 presenter John Williams and his company PetaLogix took on a medium-sized product development project for a Japanese electronics company. The project - a real-time embedded video processing system using Xilinx FPGAs, soft CPUs and custom image processing hardware - took us out of the comfortable and esoteric world of low-level kernel hacking and off into custom hardware IP development, user space application and library programming and preparation for manufacturing and production.

From an initial client meeting in Tokyo to production-ready system images in just over 12 months, this story gives some insights into what can be achieved with small, flexible teams using modern development platforms and processes. In this presentation I'll tell as much as my client will allow about this very interesting system, give a brief introduction to what it means to run Linux inside a programmable FPGA hardware, and relate some war stories arising when a kernel hacker builds a complete system almost from the ground up.

Dr John Williams is the owner and CEO of PetaLogix, an embedded Linux solutions provider spun-out from his research and development activities at The University of Queensland, Australia. He was the architect and original maintainer of the Linux kernel port to the Xilinx MicroBlaze FPGA-based CPU, and consults widely in industry helping companies get the most out of this exciting embedded architecture. He has recently partnered with Xilinx, the world's leading FPGA vendor, to deliver and present educational workshops on FPGAs and Embedded Linux at key universities worldwide. In his former life he was a research academic at The University of Queensland, a position he now maintains on a part-time basis, and in the distant past he completed a PhD in 3D computer vision and image processing.

Top


Birds-of-a-Feather (BOF) sessions

BOF Title: eLinux Wiki
Session Leader: Tim Bird
Company: Sony

Description:
This BOF is for those interested in the eLinux (embedded Linux) wiki.   The eLinux wiki is an open collaboration site intended to hold information useful for embedded Linux developers.  We'll talk about the current status of the site, and brainstorm ways to improve the content and outreach of the site.

A contest will be announced at this BOF, and participants can walk away with a prize for making a useful contribution that night.

Tim Bird is the Chair of the CE Linux Forum Architecture Group, and a Senior Linux Staff Engineer at Sony Corporation.  He has been working with Linux for over 15 years, and has contributed a lot of material to the eLinux wiki.

Top


BOF Title: Embedded Security
Session Leader: Matt Locke
Company: Embedded Alley

Description:
Embedded devices are growing in complexity and features.  As embedded devices containing Linux become more widespread, the attractiveness of Linux as a target for malicious activity grows.  In this BOF, we'll discuss the set of features required for “securing” an embedded device (particularly a consumer electronics device), and discuss some current projects aimed at providing security technology and know-how to embedded Linux developers.

Matthew Locke has been developing products using embedded Linux for more than 10 years now. He has held a variety of roles in technology and business leadership for companies such as MontaVista Software and Lockheed Martin. Prior to Embedded Alley, Matt held the CTO positions at several startups including NomadGS, which focused on building custom embedded Linux solutions for the consumer device market, and Suunnata, a company developing a system for the secure delivery of services to networked connected devices. As the Product Architect for the highly successful MontaVista Linux Consumer Electronics Edition, Matt was responsible for the overall product architecture and led the development of key technologies for running Linux on consumer devices. Matthew Locke received a BSEE from University of Maryland, College Park.

Top


BOF Title: Build Tools
Session Leader: Thomas Petazzoni

Description:
There are numerous embedded Linux distribution build systems.  In this BOF, we'll list some of the most popular ones, and discuss their strengths and weaknesses.  We'll discuss whether it's possible, or useful to try to reduce fragmentation in this space.

After having spent a significant part of its free time at university on hacking small operating systems, Thomas Petazzoni worked during three years as a kernel developer in a French company developing storage virtualization software for computer clusters. He now works for Free Electrons, a free-software-friendly company providing embedded Linux development and training services, while enjoying the nice weather and food of the South of France and advocating free software on his spare time.

Top


BOF Title: System Size
Session Leader: Michael Opdenacker

Description:
In embedded products, Linux is often used in configurations where the amount of RAM or FLASH is constrained.  In this BOF, we'll discuss ways to reduce system size, including use of kernel configuration options, the status of the Linux-tiny patch set, compressed file systems, and other approaches.

Michael Opdenacker is the founder of Free Electrons, a company supporting individuals and organizations creating embedded systems based on Free Software. Michael is best known for all the training materials he shared with the Free Software Community under a free documentation license (see http://free-electrons.com/training/). This represents more than 1500 pages of presentation slides, from kernel driver development, to real-time and embedded system development. Michael is a citizen of the Earth, with a French soul, a Belgian heart and a Finnish kernel.

Top


DEMONSTRATIONS

A few individuals and companies will be demonstrating tools and technologies on Tuesday evening in the Sakura room. Please join us for a casual gathering to see what they've done, and to mingle after dinner. The demos will be available from 6:30 to 8:30.

http://tree.celinuxforum.org/CelfPubWiki/ELC2009TechnicalShowcase

Top