Re: User-space to kernel communication
Re: User-space to kernel communication
- Subject: Re: User-space to kernel communication
- From: Michael Smith <email@hidden>
- Date: Tue, 9 Jan 2007 17:32:51 -0800
On Jan 9, 2007, at 11:47 AM, Greg wrote:
On Jan 9, 2007, at 2:23 PM, Michael Smith wrote:
Personally, I would implement a UserClient with two methods; one
that blocks waiting for a message from the kernel, the other that
ships data in. This avoids blowing
a kernel thread on the communication portal (making it easier to
have multiple clients) by requiring both threads to be owned by
the user process.
This does sound like a viable idea. It would still require me to
have two threads on the user-land side though (calling these
methods), would that be a problem?
No.
Also, as I asked in the other email, can you pass a pointer to a
user-land allocated buffer as a parameter to a method call for the
kernel to use?
You can, although the kernel can't access it directly. As I pointed
out previously, if the data is small (you mentioned 50 bytes, which
is very small) you're better off just copying it. If you need to
pass it to hardware, or to map it, you need to construct an
IOMemoryDescriptor referencing it.
= Mike
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-kernel mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden