On Thu, 2008-10-23 at 12:42 -0400, John Kasunich wrote:
... snip
> I think some confusion is because of your use of the term "thread".  EMC 
> and HAL use the term "thread" to specifically refer to a _realtime_ 
> thread with a specific period, but you seem to be using "thread" while 
> talking about a non-realtime component.

That's one of my problems. I only know enough to create a component that
fits in a realtime thread. (Dangerous is my middle name.)

> Realtime HAL components export functions, and those functions are linked 
> into realtime thresds.  Each function in a HAL thread runs one after 
> another, and all of them _must_ be complete before the next time the 
> thread is due to run.
> 
> Non-realtime HAL components do not export functions.  A non-realtime HAL 
> component is an ordinary Linux process.  It has its own memory space and 
> runs just like any other user space program.  It has no restrictions 
> about calling blocking functions.  It can use read(2) and write(2) to 
> access files (including /dev files).  It can use select(2) with or 
> without timeouts.  It can use sleep(3) if it wants to poll HAL pins 
> periodically.  And it can use normal Linux drivers for things like the 
> serial port.  Such a component will _usually_ be quite responsive, but 
> response times are not guaranteed.

I need to learn more about non-realtime. It has been a while since I
have read the documentation, it might be a good time to go through it
again.

> Spindle control was mentioned as a use case - that would be fine for 
> normal milling, but I wound not use it for rigid tapping.  EMC issues a 
> command to reverse the spindle as the tap approaches the bottom of the 
> hole.  A user space HAL component would probably send that command to 
> the spindle drive quickly 99% of the time, but it only takes one time 
> with a half-second delay to break a tap.

So maybe having my component inserted to an RT thread isn't a bad thing?
If it works it must be timely?
> 
> Regards,
> 
> John Kasunich

Just because I don't have the time or talent, doesn't mean I don't want
to be a brain surgeon too. When are you guys going top get my clone
done? I'll be the hansom one.

Kirk


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Emc-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to