Thursday, March 27, 2008
Linux on test systems, pt 5
In July of 2007 I started reviewing app notes that Agilent published about using Linux on test systems. They've put out 5 papers on the subject (full list is here). This blog reviews #5, the last paper in the series.
Tips for Optimizing Test System Performance in Linux Soft Real-Time Applications
One of the first things the paper does is discuss the difference between soft real time applications and hard real time applications. To be honest, I didn't realize there was a noticeable distinction. But I found it referenced in Wikipedia, so it must be real... My experience with real time systems has been of both varieties, but I never quantized the difference. So, now I know something new.
One of the things I liked is the list of tips for optimizing response times. These tips aren't really specifically linked to Linux, and they seem obvious but sometimes it's good to see those "obvious" ideas listed.
■ Avoid it if you can
■ Put the burden of real-time control on your instruments
■ Use a fast PC with plenty of memory
■ Shut down unused services
■ Isolate the real-time part of your application
The author then goes on to discuss specific Linux techniques like time slices, the Linux scheduler, preemptive multitasking, and virtual memory & paging. Each of these discussions are paired with code, diagrams and graphs that dive into some technical details. Most of those details were admittedly beyond my skill level - I'm not a Linux guy - but the paper was written well enough for me to understand the subject matter.
This is the last paper in the series, so I don't expect to blog much more on the subject, at least not until I install Linux on that computer at home. I'm still working heavy at my new job, so it may be another couple of weeks before my next post.