On Wednesday 29 August 2007 14:20, Gilles Chanteperdrix wrote:
> On 8/29/07, Gilles Chanteperdrix <[EMAIL PROTECTED]> wrote:
> > On 8/29/07, Jan Kiszka <[EMAIL PROTECTED]> wrote:
> > > Mathieu JOINIE-MAURIN wrote:
> > > > The application I used is a small controller for robot developped by
> > > > people in the lab. Before it used to be in RTAI. But now they are
> > > > trying to use Xenomai. The application is splitted in two parts: the
> > > > user side which saves data, manages interfaces and the kernel module
> > > > which realise all the real time tisk (sampling, writing to electronic
> > > > card, controler). The communications between the two is made by 5
> > > > pipes (command, parameters, acknowledgment, save, status).
> > > >
> > > > This is why i need to make my sqrt() function (of double variables) 
> > > > into my kernel modul part.
> > >
> > > Given that this is also a "small" application, I bet it will be far
> > > easier for you to port it to user-space (POSIX or native skin) than
> > > porting a math lib into kernel space.
> >
> > Compiling a libm in kernel-space is not hard at all, especially since
> > a libm does not use any system call. But Mathieu could even do a
> > simpler thing: if the only math function used is sqrt, he could simply
> > add an implementation of this function into his kernel module.
>
> Actually the rtai_math module seems to have no external dependency.
> So, you can use it freely with Xenomai. If you want to port it a bit
> more cleanly to xenomai, all you have to do is replacing libm_errno
> with *xnthread_get_errno_location() (defined in nucleus/thread.h).

Running the x86_64 build here, I found a GCC flag (-mno-sse IIRC) being used 
by the kernel make that prevents any floating point instructions from being 
used. So a port/cleanup of rtai_math would most likely only work for i386 & 
ppc architectures..


Regards, Paul.

_______________________________________________
Xenomai-help mailing list
[email protected]
https://mail.gna.org/listinfo/xenomai-help

Reply via email to