Fundamentally, a device driver implements the interface between a piece of peripheral hardware and the application. In a traditional unprotected, “flat” memory model system, a driver may be little more than a set of functions conforming to a well-defined API and statically linked into an executable image.
But in the context of a protected mode operating system such as Linux, device drivers take on added significance owing to the distinction between User space and Kernel space. This 3-day hands-on seminar provides an introduction to the wonderful world of programming in Kernel space. As such, it provides insights not only into device driver programming, but also into the philosophy and design strategies of the kernel itself.
Numerous programming exercises introduce the rich kernel API that offers a multitude of services to driver writers. You’ll learn how Linux handles asynchronous I/O in a way that is totally transparent to applications. You’ll examine the unique problems of debugging in Kernel space. Perhaps most important, you’ll see how much of a device driver involves interactions with the kernel that have nothing to do with accessing physical hardware.
More details at www.intellimetrix.us/linuxdevicedrivers.htm
This 3-day seminar focuses on how Linux, the free, Open Source operating system, has been adapted for use in embedded environments, with specific emphasis on the ARM architecture. Through extensive hands-on lab work, you learn how to install a cross-development environment, build a compact version of Linux for an embedded device, install the build on the target system, and test its operation. You’ll create and test programs that exercise I/O as well as networking applications and also explore real-time extensions.
Each participant receives a CD with a complete Linux kernel distribution, including source code, and ARM cross-development toolkit, which provides an ideal platform for embedding Linux into a wide range of consumer and industrial devices.
Participants will have available for use during the class an ARM-based target single-board computer (SBC) kit. This is the same SBC supplied with the Embedded Linux Learning Kit and is offered at a substantial discount to class participants.