Am 21.09.2012 um 10:43 schrieb EBo: > On Fri, 21 Sep 2012 10:28:20 +0200, Michael Haberler wrote: >> >> ... >> >> the tough question to which I dont have a good answer yet: how will >> kernel RT components access hal_* functions if they vanish from the >> common RTAPI/ULAPI code and migrate to userland completely? I've read >> through >> >> http://people.ee.ethz.ch/~arkeller/linux/multi/kernel_user_space_howto.html#toc7 >> but none of the options there strikes me as the obvious method. Any >> suggestions? > > A couple of things I wanted to play with are the 9p file system > primitives recently ported to Linux. I am not sure that the advanced > distributed locks have yet been ported, but I should be able to set up > some simplified examples. The real question is when I will have time to > do this...
EBo, I would be surprised if any 9p kernel primitives can be used from an RTAI (disguised through RTAPI) thread - which is the hard question for the above problem; once you're in a normal Linux (non-RTAI-thread) kernel context there's a multitude of mechanisms to choose from it boils down to functions like http://www.linuxcnc.org/docs/devel/html/man/man3/hal_link.3hal.html which can currently be used from userland through ULAPI, from the normal Linux kernel context during init and cleanup of a module, AND an RTAI thread see for instance http://www.linuxcnc.org/docs/devel/html/man/man3/hal_exit.3hal.html 'Realtime considerations' which spells out restrictions on some of these functions - not all of them need to be RTAI-thread capable - Michael ps: actually - which ones of the hal_* or underlying RTAPI functions absolutely MUST be RTAI/RTAPI-thread compatible because they are actually used in thread functions? it seems to me fiddling with named HAL objects from threads is not a good idea to start with http://www.linuxcnc.org/docs/devel/html/man/man3/intro.3rtapi.html hints that it's quite few of them like for example rtapi_inb(3) which would be irrelevant for HAL metadata management if it turns out that ALL the HAL object/metadata management functions would be used init/cleanup and ULAPI ONLY this would simplify the problem considerably > > EBo -- > > > ------------------------------------------------------------------------------ > Got visibility? > Most devs has no idea what their production app looks like. > Find out how fast your code is with AppDynamics Lite. > http://ad.doubleclick.net/clk;262219671;13503038;y? > http://info.appdynamics.com/FreeJavaPerformanceDownload.html > _______________________________________________ > Emc-developers mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/emc-developers ------------------------------------------------------------------------------ Got visibility? Most devs has no idea what their production app looks like. Find out how fast your code is with AppDynamics Lite. http://ad.doubleclick.net/clk;262219671;13503038;y? http://info.appdynamics.com/FreeJavaPerformanceDownload.html _______________________________________________ Emc-developers mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/emc-developers
