Hello,
   I am trying to make a hard real-time application on Xenomai
   (dual-kernel configuration). Here are some questions.


   1. To fully utilize the realtime capability of Xenomai, should I apply
   xenomai to all the associated application libraries?
   For example, if I run the 'ldd' command with my real-time application,
   the output looks like this:

           linux-vdso.so.1 =>  (0x00007ffec45e6000)
           liburdfdom_model.so.1.0 =>
   /opt/ros/r2b3/lib/x86_64-linux-gnu/liburdfdom_model.so.1.0
   (0x00007f1d34afb000)
           libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6
   (0x00007f1d34727000)
           libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1
   (0x00007f1d3450f000)
           libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6
   (0x00007f1d34145000)
           libtinyxml.so.2.6.2 =>
   /usr/lib/x86_64-linux-gnu/libtinyxml.so.2.6.2 (0x00007f1d33f2f000)
           libconsole_bridge.so.0.3 =>
   /opt/ros/r2b3/lib/x86_64-linux-gnu/libconsole_bridge.so.0.3
   (0x00007f1d33d29000)
           libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6
   (0x00007f1d33a20000)
           /lib64/ld-linux-x86-64.so.2 (0x000056478f1a2000)

   Do I need to rebuild all libraries in the output list (libstdc ++,
   libtinyxml ...) by applying the xenomai compile option?


   2. I cannot find 'poll()' syscall from Xenomai sources (also, in
   cobalt.wrappers). Is there any reason to omit the poll() syscall from
   Xenomai? How do I re-build POSIX-based existing code using
   poll()/epoll() with Xenomai?


   3. I tried to apply Xenomai to a broadly-used library named
   libPocoFoundation. But it throws exception at pthread_mutex_init() as
   shown below.
   ([1]https://github.com/pocoproject/poco/blob/develop/Foundation/src/Mut
   ex_POSIX.cpp:64)

        if (pthread_mutex_init (& _ mutex, & attr))
        {
            pthread_mutexattr_destroy (& attr);
            throw SystemException ("can not create mutex");
        }

   If you refer to manpage, pthread_mutex_init() cannot have '1' as return
   value. However, pthread_mutex_init() of Xenomai actually returns '1' as
   errorno. As the result, the application is aborted.
   I want to know the reason of this phenomenon.


   Thank you!


   Beomjin Kim | Engineer

   Applied Platform Team. | Software R&D Center | Samsung Electronics Co.,
   Ltd.

   Mobile : +82-10-8495-5520 | E-Mail : [2]beomjins....@samsung.com


   [cid:cafe_image_0@s-core.co.kr]

   [update?userid=beomjins.kim&do=bWFpbElEPTIwMTcxMTIzMDkwMDM1ZXBjbXMxcDg1
   MWNiYjZhN2EwMzViNTczZTM0MDAyOGUzNDlmMTI1NCZyZWNpcGllbnRBZGRyZXNzPXhlbm9
   tYWlAeGVub21haS5vcmc_]

References

   1. 
https://github.com/pocoproject/poco/blob/develop/Foundation/src/Mutex_POSIX.cpp:64
   2. mailto:beomjins....@samsung.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/gif
Size: 13402 bytes
Desc: not available
URL: 
<http://xenomai.org/pipermail/xenomai/attachments/20171123/00c79293/attachment.gif>
_______________________________________________
Xenomai mailing list
Xenomai@xenomai.org
https://xenomai.org/mailman/listinfo/xenomai

Reply via email to