Hi Ivan,

Fundamentally, the RT layer has some services that you can access/use
(task creation, timing, semaphores ....), the API you use to access it
does not change what is fundamentally available.  Whether you use a
POSIX API, the original NMTv1/RTAI API, or one like the API suggested
below is a choice that needs to be made based on your constraints. 
IMHO, if I don't have legacy code, or need to worry about portability, a
simple API like the one in RTLv1/RTAI is what I would use.  If on the
other hand I need to worry about portability I would use the standard
POSIX API avoiding calls suffixed _np as they would destroy portability.

Regards, Stuart.



Mi casa wrote:
> 
> Thanks Stuart.
> What I mean is: are they the same functions with different interfaces?. Is
> there any performance difference between the two options?
> 
> Stuart Hughes escribió:
> 
> > Hi Ivan,
> >
> > The functions listed below do not conform to any POSIX specification.
> > If you want to conform to the POSIX standard (1003.1c for threads), you
> > should look at RTAI which includes a standard POSIX threads modules.
> >
> > Regards, Stuart
> >
> > Mi casa wrote:
> > >
> > > Happy new year!
> > > File "posix.txt" recomends the use of POSIX interface functions. Are
> > > those functions equivalent to these?. Should I
> > > follow the recomendation?.
> > >
> > > By the way, thanks to Phil Wilshire for his installation guides. I
> > > didn't
> > > intend to be hard!.
> > >
> > > [EMAIL PROTECTED] escribió:
> > >
> > > > On Thu, Dec 23, 1999 at 03:32:00PM +0100, Peter Wurmsdobler wrote:
> > > > > extern int rtl_request_global_irq( unsigned int irq,
> > > > >       unsigned int (*handler)(unsigned int, struct pt_regs *) );
> > > > > extern void rtl_hard_enable_irq( unsigned int irq );
> > > > > extern void rtl_hard_disable_irq( unsigned int irq );
> > > > > extern int pthread_create( pthread_t *thread, pthread_attr_t *attr,
> > > > >       void *(*start_routine)(void *), void *arg );
> > > > > extern int rtl_pthread_delete( pthread_t thread );
> > > > > extern int rtl_pthread_suspend( pthread_t thread );
> > > > > extern int rtl_pthread_wakeup( pthread_t thread );
> > > > > extern int rtl_pthread_wait( void);
> > > > > extern int rtl_pthread_make_periodic( pthread_t p,
> > > > >       hrtime_t start_time, hrtime_t period );
> > > > > extern int rtl_fifo_create_handler( unsigned int fifo,
> > > > >       int (*handler)(unsigned int fifo) );
> > > > > extern int rtl_fifo_create( unsigned int fifo, int size );
> > > > > extern int rtl_fifo_destroy( unsigned int fifo );
> > > > > extern int rtl_shm_allocate( const char *name,unsigned int size,
> > > void
> > > > > **shm );
> > > > > extern int rtl_shm_deallocate( void * shm );
> > > >
> > > > I think this is a good minimal list.
> > >
> > > --- [rtl] ---
> > > To unsubscribe:
> > > echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
> > > echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
> > > ----
> > > For more information on Real-Time Linux see:
> > > http://www.rtlinux.org/~rtlinux/
> 
> --- [rtl] ---
> To unsubscribe:
> echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
> echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
> ----
> For more information on Real-Time Linux see:
> http://www.rtlinux.org/~rtlinux/


--- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
----
For more information on Real-Time Linux see:
http://www.rtlinux.org/~rtlinux/

Reply via email to