Linux Kernel 2.6: the Future of Embedded Computing, Part II

More on how the 2.6 kernel makes for better embedded devices.

In Part I of this article, we discussed three significant improvements--preemption points, an efficient scheduler and improved synchronization--have made the 2.6 Linux kernel the future of embedded computing. Here, we discuss further improvements and applications the 2.6 kernel offers embedded development.

USB Support

USB 2.0, about forty times faster than conventional USB, makes its debut in Linux 2.6. The high speed USB devices support device bandwidth of up to 480 megabits per second, compared to 12 mbit/sec of current USB.

On the complete opposite end of the field, for the first time the kernel includes support that allows a Linux-powered machine to be a USB device rather than a USB host. This would allow, for example, your Linux-powered PDA to be plugged into your PC and to have both ends of the line speaking the proper protocol. Much of this support is new, but this is an essential direction for Linux to move into for embedded devices.

Wireless Devices

Wireless seems to be the buzzword today in the communication industry. Looking at the kind of research being carried out in such fields as pervasive computing, mobile computing and so on, the day is not far when the world becomes truly embedded and connected.

In the wireless networking space, support for both long-range devices--for example, AX.25 over amateur radio devices--and short-range devices--usually 802.11, but some older protocols exist--was updated during development of the 2.6 kernel. The largest change here is major components of the short-range subsystems for the various supported cards and protocols have been merged into a single wireless subsystem and API. This merge resolves a number of minor incompatibilities in the way different devices had been handled and strengthens Linux's support for the subsystem by making a central set of userspace tools that work with all supported devices. In addition to standardization, Linux 2.6 introduces a number of overall improvements, including better capability to notify in the event of a state change--such as a device that has a "roaming" state--and a change to TCP to better handle periodic delay spikes that occur with wireless devices.

In the wireless devices space, IrDA (the infrared protocol named for the Infrared Data Associates group) has received some advancements since the last major release, such as power management and integration into the new kernel driver model. The real advancements, however, have been made in providing Linux support for Bluetooth devices. Bluetooth as a protocol is designed to go anywhere and has been implemented in many devices ranging from PDAs, cell phones and printers to more bizarre things, such as automotive equipment. The protocol itself is made up of two different data link types: SCO (Synchronous Connection Oriented), for lossy audio applications, and L2CAP, (Logical Link Control and Adaptation Protocol), for a more robust connection supporting retransmits and so on. Both the SCO datalink for audio and the L2CAP for connection-oriented data transfers are available, making Linux a natural choice wherever no-fuss connectivity is a key requirement.

Human Interface Devices

The human interface layer is the center of the user experience with a Linux system, including the video output, mice and keyboards. In the new version of the kernel, this layer has been reworked and modularized to a much greater extent than ever before. It now is possible to create a completely headless Linux system without any included support for a display or anything else. The primary benefit of this modularity may be for embedded developers making devices that can be administrated only over the network or serially. But end-users benefit too, as many of the underlying assumptions about devices and architectures has been modularized out.

Linux 2.6 also includes a number of smaller changes for human interaction. Touch screens, for example, now are supported. Linux also has changed the system request interface to better support systems without a local keyboard. The system request (sysrq) interface is a method for systems administrators at the local console to access debugging information, force a system reboot, remount filesystems read-only and do other wizardly things. Because Linux 2.6 now supports a completely headless system, it now is possible to trigger these events using the /proc filesystem. This support is available wirelessly, so the functionality could be performed from virtually any device.

______________________

White Paper
Linux Management with Red Hat Satellite: Measuring Business Impact and ROI

Linux has become a key foundation for supporting today's rapidly growing IT environments. Linux is being used to deploy business applications and databases, trading on its reputation as a low-cost operating environment. For many IT organizations, Linux is a mainstay for deploying Web servers and has evolved from handling basic file, print, and utility workloads to running mission-critical applications and databases, physically, virtually, and in the cloud. As Linux grows in importance in terms of value to the business, managing Linux environments to high standards of service quality — availability, security, and performance — becomes an essential requirement for business success.

Learn More

Sponsored by Red Hat

White Paper
Private PaaS for the Agile Enterprise

If you already use virtualized infrastructure, you are well on your way to leveraging the power of the cloud. Virtualization offers the promise of limitless resources, but how do you manage that scalability when your DevOps team doesn’t scale? In today’s hypercompetitive markets, fast results can make a difference between leading the pack vs. obsolescence. Organizations need more benefits from cloud computing than just raw resources. They need agility, flexibility, convenience, ROI, and control.

Stackato private Platform-as-a-Service technology from ActiveState extends your private cloud infrastructure by creating a private PaaS to provide on-demand availability, flexibility, control, and ultimately, faster time-to-market for your enterprise.

Learn More

Sponsored by ActiveState