Is it possible?
In the past, I've been told, "No.".
I've just read an article which states "With a little extra work, you can get hard real-time support with the PREEMPT_RT patch."
Dear Lazyweb, is this so?
Thursday, October 16, 2008
Subscribe to:
Post Comments (Atom)
Popular Posts
-
These are the robots I've been working on for the last 12 months. They each weigh about 11 tonnes and have a 17 meter reach. The control...
-
So, you've created a car prefab using WheelCollider components, and now you can apply a motorTorque to make the whole thing move along. ...
-
I have just spent an hour trying to track down a weird bug in some Javascript interpolation code. The offending code looks like this: var n ...
-
Why would I ask that question? Python 3 has been available for some time now, yet uptake is slow. There aren't a whole lot of packages i...
-
Dear Lazyweb. Imagine a nice RESTful interface for working with Tags. The URL: /tags/ will return a list of all the tags. The URL: /tags/fo...
-
After my last post, I decided to benchmark the scaling properties of Stackless, Kamaelia, Fibra using the same hackysack algorithm. Left axi...
-
I've just uploaded Fibra 2 to the cheeseshop. Fibra 2 includes the promised non-blocking plugin, which allows a generator based task to...
-
The procedural planet package has been updated to version 1.4, and you can see the new demo here . It features better city light control, be...
-
I've just finished refactoring an awful C# class. I had been delaying the job for a while because I didn't want to do it. Then, whil...
-
I've built sites with Django, TurboGears and Pylons. I've come to prefer Pylons. Why? Pylons gets out of the way, and stays out of t...
3 comments:
I don't know if would call the PREEMPT_RT patch hard real time, but its very close. Probably close enough for most real time uses. What is hard real time though is using something like Xenomai. Which provides support for numerous common real time APIs. Its mentioned in the article and it uses the "Thin-kernel" approach.
It is very much possible. Take a look at the Linux RT wiki http://rt.wiki.kernel.org/index.php/Main_Page for more information and background.
But keep in mind that the RT_PREEMPT patch is not magic. You don't just boot a PREEMPT_RT kernel and bingo! your application is meeting 30 microsecond deadlines. To achieve deterministic performance, you're going to need to write your code in a way that avoids known determinism killers (see the RT wiki for a checklist). You will also need to ensure the system and hardware are not working against you by tuning the OS. For example correctly prioritizing IRQ threads and using CPU sets to segregate realtime vs normal workloads.
These are issues that pertain to any realtime system, and are not exclusive to PREEMPT_RT Linux. However other RT systems may have different defaults or ways to tune that make it easier to do RT work out-of-the-box.
Go have a look at Xenomai
Post a Comment