Re: Orocos and RTAI/LXRT

Pierangelo Masarati <[email protected]>
Newsgroups gmane.science.robotics.orocos.user
Organization Dipartimento di Ingegneria Aerospaziale
Message-ID <[email protected]>
Peter Soetens wrote:
> Hi,
> 
> The last half year, we have been porting Orocos to RTAI/LXRT. First, for 
> people not knowing LXRT, I have made an LXRT porting howto, which is already 
> a lot more on http://people.mech.kuleuven.ac.be/~psoetens/portingtolxrt.html
> 
> We came to the conclusion that building extensive software frameworks in the 
> linux kernel (with kernel-RTAI and kernel-RTLinux) are requiring to much 
> maintenance and this environment does not support enough OS primitives or 
> libraries. While developping the software for userspace was fast and easy, 
> kernel development consumed a big part of our time budget. When we started to 
> realize that RTAI allows truly integrated userspace realtime processes, 
> supporting that platform became a high priority. So we ported Orocos also
> to LXRT. All our findings are described in the above howto.
> 
> With this comprehensible howto, we hope to provide the future users a way to 
> 'port' their device drivers to LXRT. When using Orocos software, the running 
> threads will automatically be using LXRT, and can directly use the LXRT 
> extensions.
> 
> Does this mean we drop portability ? Certainly not ! Orocos still has an 
> os-abstraction layer, and kernel-RTAI and kernel-RTLinux just fell out 
> because of the 'incompleteness' they offer in their API.
> 
> If you read the introduction to the howto, you might get a good impression of 
> how good it is, and how much closer (or even further !) it brings linux to 
> commercial realtime operating systems like VxWorks and the likes.


With reference to a previous message of mine, on the exploitation
of RTAI in MBDyn for real-time multibody simulations, at the
Dipartimento di Ingegneria Aerospaziale of the University Politecnico
di Milano we have been using LXRT as the essential means to
exploit hard real-time in programs that could hardly fit into kernel
space.  As a matter of fact, this was the fundamental push towards
its development: give programmers hard real-time hooks basically
unrelated to the programming language or tool.

Our multibody software is a mix of C++, F77 and C, linked to many
standard and specialized libraries, and the major effort in exploiting
LXRT was to ensure no system calls were performed during the normal
execution (e.g. after hard real-time is enforced), which required
patching a couple of libraries.

Pierangelo.

-- 
Dr. Pierangelo Masarati                  | voice: +39 02 2399 8309
mailto:pierangelo.masarati AT polimi.it  | fax:   +39 02 2399 8334
http://www.aero.polimi.it/~masarati
Dip. Ing. Aerospaziale Politecnico di Milano,
via La Masa 34, 20156 Milano, Italy
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.