Thread (11 messages) 11 messages, 4 authors, 2003-03-17

Re: Finding Aki M Laukkanen's VESAFBD project?

From: Kendall Bennett <hidden>
Date: 2003-03-14 22:57:45

Jon Smirl [off-list ref] wrote:
I noticed the email but I wasn't sure if you knew about the code
from the way your mail was worded. 
;-)
I used fasync and poll to implement user space communications in a
driver I just finished.  Use kill_fasync(&fasync, SIGIO) from the
device driver to signal the user app. The signal causes the app to
poll which the driver replies POLLIN to. Polling identifies which
device caused the signal. Now the user app knows it needs to IOCTL
the handle to do whatever the driver needs it to. It only takes
about 100 lines of code to implement the communication. 
Does the user space daemon block waiting to be woken up from the kernel 
module? I think the way Aki had it done initially was to have the user 
space daemon call into the kernel via an ioctl() or something, and the 
kernel would block on that thread and when something needed to be done, 
it would fill in the return structure for the ioctl() and then unblock 
the thread. The user space daemon would process the ioctl() and and then 
call it agin once the service was completed.

Does that system make sense at all?

Thanks!

---
Kendall Bennett
Chief Executive Officer
SciTech Software, Inc.
Phone: (530) 894 8400
http://www.scitechsoft.com

~ SciTech SNAP - The future of device driver technology! ~



-------------------------------------------------------
This SF.net email is sponsored by:Crypto Challenge is now open! 
Get cracking and register here for some mind boggling fun and 
the chance of winning an Apple iPod:
http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0031en
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help