LinuxDevices.com Archive Index (1999-2012) | 2013-current at LinuxGizmos.com | About  

Podcasts explore real-time Linux, Java

May 2, 2008 — by Eric Brown — from the LinuxDevices Archive

The IBM Linux Technology Center has posted a two-part podcast interviewing IBM Distinguished Engineer Paul McKenney about the Real-Time Linux Project. Topics include hard- and soft real-time Linux, programming languages, hardware platforms, new real-time applications, and future additions to the mainline.

The two podcasts, which together run about 30 minutes, are hosted by Tom Galls, who interviews McKenney (pictured above), Distinguished Engineer and CTO of the IBM Linux Technology Center. McKenney and his team are contributors to various Real-Time Linux projects aimed at integrating more real-time features into the mainline kernel. He has worked on SMP, NUMA, and RCU algorithms since he came to IBM in the early 1990s, and previously was involved with locking and parallel operating system (OS) algorithms at Sequent Computer Systems.

In the first podcast, McKenney defines real-time Linux this way: “With real-time Linux, it's not enough to get the job done,” he says. “You also have to get it done within a certain time duration.” He then goes on to discuss the differences between hard real-time, in which time limits are absolute (and usually very short) and soft real-time, in which some uncertainty in regard to latency is allowed.

According to McKenney, a surprising trend in real-time development is the emergence of Java as a development language in addition to the mainstays of C/C++ and Ada. Initially, he and other real-time developers had doubted it was a feasible solution, but he says that at IBM they have now developed a way to run a Java link, even with garbage collection, and still run it effectively in real-time. The trick, McKenney says, is to run the garbage collection for only a few hundred milliseconds at a time. “Real-time development is still hard, but Java makes it a lot easier,” he added.

McKenney goes on to describe the hardware environments used at IBM for real-time, typically based on commodity x86 AMD and IBM blades. He says that he expects an equally “vibrant scene” for real-time will develop on ARM platforms.

Meanwhile, he says that new applications with real-time requirements are growing all the time. “In addition to traditional embedded systems for communications and security, we're seeing financial services, military, industrial, and gaming applications,” he says. “We're seeing real-time requirements coming out of the embedded ghetto and taking on commercial workload. Increasingly we're seeing real-time components interfaced to a larger enterprise system running on a non-real-time platform.”

In episode two, McKenney discusses some of the work his IBM group has been doing on real-time response, context switching, and timers. He points out that response time is affected by numerous factors. “You may have the best real-time software in world, but if it's running on a platform without real-time response time, you won't get real-time,” he says. “The hardware, firmware, and operating system all play a role.”

Asked by Galls whether true hard real-time technology such as the RTLinux acquired by Wind River from FSMLabs last year, would fade away as the mainline real-time technology matures, McKenney answered in the negative.

“We're only covering about 80 percent of the market, or at best 90 percent where it's okay to have it running in as little as a few tens of microseconds,” he says. “The definition of 'hard real-time' is a matter of academic debate, but if you need to get down to below ten microseconds, you will still need to use one of these specialized products. The disadvantage is that they don't have the wide software support that mainline Linux offers.”

Finally, McKenney discusses the future progress of the real-time projects. For the near term, he says the main work is done, but there are still a few things missing, such as threading and interrupt handlers. Future additions might include “special scheduling hooks to clear out all interrupts in real-time patches,” and possibly extending real-time to the I/O path, including disk I/O.

One of the most significant tech trends he sees influencing real-time is the emergence of cheap, fast flash memory. “With flash RAM becoming persuasive, we'll see much more impressive response times,” he says, “so integrating support for non-voluble high-speed storage will likely be a future direction.”

Availability

The two IBM podcasts interviewing Paul McKenney on real-time Linux are available here.


 
This article was originally published on LinuxDevices.com and has been donated to the open source community by QuinStreet Inc. Please visit LinuxToday.com for up-to-date news and articles about Linux and open source.



Comments are closed.