Building Embedded Applications using Linux and other OSes
Software has become an essential part of many products today. On the surface much of this software looks more like normal applications than traditional embedded software and the support of a general-purpose operating system is often appropriate. Yet, development often includes using hardware different than on the desktop, writing drivers and interrupt handlers for custom hardware, and tampering with the OS to improve performance. None of these are really as difficult as they may seem except maybe the debugging. But the programmer must carefully address timing and synchronizations issues–or risk intermittent failure and deadlocks that cause debugging nightmares.
Bill Rousseau will present an informal tutorial on the traps and tricks of the trade drawing on examples abstracted from actual, and a few hypothetical, applications. One example includes a simple home-brew OS (used in a real spacecraft). Alternative operating systems will be discussed and briefly compared. Because many seem intimidated by building a custom Linux kernel, or making minor kernel modifications, both will be discussed. After the talk, building a custom kernel will be demonstrated on a laptop to show how easy it is. Similarly the implications of the GNU license for the Linux kernel, system utilities, and libraries will be discussed to show that it neither imposes a significant burden on the product seller nor, normally, a significant limitation on protecting proprietary software.
About the speaker, William F. Rousseau
For the last ten years, Bill Rousseau has been consulting on a broad range of computer applications. He has designed and implemented or directed the implementation of, or advised on specialty applications for ATM (the money machine) communication, credit card transactions, faxing of drug test results, Japanese language mail order call center, airline protocol (ALC), Internet and Internet security, telephone over cable, and others. Most involved Unix, Linux, or NT, and one had a home-brew OS when the client insisted he had to own the OS. Clients are typically small- or medium-sized companies, and have included Prestige International, Pharmchem, Internet Travel Network (acquired by Sabre), IDG Books, Cash on Demand, Universal Money, RestaurantPro.com (now Critical Arc Technologies), Network Planning and Brandon Interscience.
Prior to this, Bill was involved with and frequently directed engineering and physics research at Lawrence Livermore National Laboratory. Many projects involved both hardware and software. He got his feet wet in real-time programming in 1960 in a summer job at the Westinghouse Electric Corporation Research Laboratory where he proposed and implemented a real-time task scheduler to bring order to real-time, direct digital control computer control software for a simulated nuclear power plant.
Bill has a Ph.D. from Stanford University and a B.S. from Carnegie Mellon University, both in Electrical Engineering.
Location: Sheraton Hotel, Sunnyvale, CA