Hi,
Consider the following method, to send /receive the data using IOUserClient from driver<->user app
IOConnectCallMethod(conn, 0, 0, 0, *inStruct, instructCnt, 0, 0, *outStruct, outStructCnt),
1) In case of input data, does the same memory [atlest by physical/ kernel virtual mapping] is used in kernel space, or a tmp buffer is created and that will be used in driver?
- I tried to modify the input struct data [in driver] but didn't see any change in the userspace, my main concern is whether any tmp buffer is getting created or not
2) Similar to input data, does any tmp buffer is being used in driver and then copied to userspace output buffer
If any such copy operations are happening, does it effects the performance ?, can I use the shared memory instead?
Thanks
Venkat