PC Review


Reply
Thread Tools Rate Thread

Driver IO Communication

 
 
nirajembedded@gmail.com
Guest
Posts: n/a
 
      30th Aug 2006
Hi,
Target OS : Windows XP
I am developing a simple driver which will communicate to ISA based
card.
An application written in VB .net will communicate to it.
I have seen certain machanism to communicate to any device driver
one of them is using IOCTL.
My VB.net application hava timer running after every 200 ms or may
be less than that. and polls for the data to come from driver. I feel
that IOCTL communication for this may create some performence issue due
to memory exchanged for every input/output and time taken for it's
processing.
Can anybody shade some light on it and suggest me some better
machanism to implement this ?

Regards

 
Reply With Quote
 
 
 
 
Don Burn
Guest
Posts: n/a
 
      30th Aug 2006
Well the first question is how much data are you transferring, if it is just
a little this is terrible, but you are doing a lot of system calls. A
better way of doing this is have the driver pend the IRP until there is new
data, and the application issues either an OVERLAPPED I/O or has the read
done in a thread that can wait.


--
Don Burn (MVP, Windows DDK)
Windows 2k/XP/2k3 Filesystem and Driver Consulting
http://www.windrvr.com
Remove StopSpam from the email to reply



<(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> Hi,
> Target OS : Windows XP
> I am developing a simple driver which will communicate to ISA based
> card.
> An application written in VB .net will communicate to it.
> I have seen certain machanism to communicate to any device driver
> one of them is using IOCTL.
> My VB.net application hava timer running after every 200 ms or may
> be less than that. and polls for the data to come from driver. I feel
> that IOCTL communication for this may create some performence issue due
> to memory exchanged for every input/output and time taken for it's
> processing.
> Can anybody shade some light on it and suggest me some better
> machanism to implement this ?
>
> Regards
>



 
Reply With Quote
 
 
 
 
nirajembedded@gmail.com
Guest
Posts: n/a
 
      5th Sep 2006
Thanks a lot...
Following your suggestion I have stiudied on IPR and OVERLAPPED I/O.
I have found that these mechanisms are used for communication bet'n
either two applications or bet'n two drivers. My next problem is how
far it is feasible and advisable to use it for application and driver
communication as both are running different process areas with
different restrictions type (i.e. on is running in kernel space while
other in User space..).
Hope I am not making any child like mistake...
thanks again,
Niraj

Don Burn wrote:
> Well the first question is how much data are you transferring, if it is just
> a little this is terrible, but you are doing a lot of system calls. A
> better way of doing this is have the driver pend the IRP until there is new
> data, and the application issues either an OVERLAPPED I/O or has the read
> done in a thread that can wait.
>
>
> --
> Don Burn (MVP, Windows DDK)
> Windows 2k/XP/2k3 Filesystem and Driver Consulting
> http://www.windrvr.com
> Remove StopSpam from the email to reply
>
>
>
> <(E-Mail Removed)> wrote in message
> news:(E-Mail Removed)...
> > Hi,
> > Target OS : Windows XP
> > I am developing a simple driver which will communicate to ISA based
> > card.
> > An application written in VB .net will communicate to it.
> > I have seen certain machanism to communicate to any device driver
> > one of them is using IOCTL.
> > My VB.net application hava timer running after every 200 ms or may
> > be less than that. and polls for the data to come from driver. I feel
> > that IOCTL communication for this may create some performence issue due
> > to memory exchanged for every input/output and time taken for it's
> > processing.
> > Can anybody shade some light on it and suggest me some better
> > machanism to implement this ?
> >
> > Regards
> >


 
Reply With Quote
 
Don Burn
Guest
Posts: n/a
 
      5th Sep 2006
Well most drivers use this mechanism. Yes people have implemented more
complex mechanisms with shared memory, and multiple events, etc. The ironic
thing is for low to medium bandwidth applications, which yours sounds like,
the complex mechanisms do nothing but take a lot more code.


--
Don Burn (MVP, Windows DDK)
Windows 2k/XP/2k3 Filesystem and Driver Consulting
http://www.windrvr.com
Remove StopSpam from the email to reply



<(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> Thanks a lot...
> Following your suggestion I have stiudied on IPR and OVERLAPPED I/O.
> I have found that these mechanisms are used for communication bet'n
> either two applications or bet'n two drivers. My next problem is how
> far it is feasible and advisable to use it for application and driver
> communication as both are running different process areas with
> different restrictions type (i.e. on is running in kernel space while
> other in User space..).
> Hope I am not making any child like mistake...
> thanks again,
> Niraj
>
> Don Burn wrote:
>> Well the first question is how much data are you transferring, if it is
>> just
>> a little this is terrible, but you are doing a lot of system calls. A
>> better way of doing this is have the driver pend the IRP until there is
>> new
>> data, and the application issues either an OVERLAPPED I/O or has the read
>> done in a thread that can wait.
>>
>>
>> --
>> Don Burn (MVP, Windows DDK)
>> Windows 2k/XP/2k3 Filesystem and Driver Consulting
>> http://www.windrvr.com
>> Remove StopSpam from the email to reply
>>
>>
>>
>> <(E-Mail Removed)> wrote in message
>> news:(E-Mail Removed)...
>> > Hi,
>> > Target OS : Windows XP
>> > I am developing a simple driver which will communicate to ISA based
>> > card.
>> > An application written in VB .net will communicate to it.
>> > I have seen certain machanism to communicate to any device driver
>> > one of them is using IOCTL.
>> > My VB.net application hava timer running after every 200 ms or may
>> > be less than that. and polls for the data to come from driver. I feel
>> > that IOCTL communication for this may create some performence issue due
>> > to memory exchanged for every input/output and time taken for it's
>> > processing.
>> > Can anybody shade some light on it and suggest me some better
>> > machanism to implement this ?
>> >
>> > Regards
>> >

>



 
Reply With Quote
 
nirajembedded@gmail.com
Guest
Posts: n/a
 
      5th Sep 2006
Thanks again,
Let me be more relevant to my application and it's usage. I need a
machanism through which my driver continuesly sends the data to my
application. Here in all the suggested mode it is an application which
either use Readfile or DeviceIOControl to request and wait for
response and that need to be in loop continuesly.
My question is can I set any application functions in the driver so
that when ever event occurs it calls it back and application get
notify.

Regards,
Niraj

Don Burn wrote:
> Well most drivers use this mechanism. Yes people have implemented more
> complex mechanisms with shared memory, and multiple events, etc. The ironic
> thing is for low to medium bandwidth applications, which yours sounds like,
> the complex mechanisms do nothing but take a lot more code.
>
>
> --
> Don Burn (MVP, Windows DDK)
> Windows 2k/XP/2k3 Filesystem and Driver Consulting
> http://www.windrvr.com
> Remove StopSpam from the email to reply
>
>
>
> <(E-Mail Removed)> wrote in message
> news:(E-Mail Removed)...
> > Thanks a lot...
> > Following your suggestion I have stiudied on IPR and OVERLAPPED I/O.
> > I have found that these mechanisms are used for communication bet'n
> > either two applications or bet'n two drivers. My next problem is how
> > far it is feasible and advisable to use it for application and driver
> > communication as both are running different process areas with
> > different restrictions type (i.e. on is running in kernel space while
> > other in User space..).
> > Hope I am not making any child like mistake...
> > thanks again,
> > Niraj
> >
> > Don Burn wrote:
> >> Well the first question is how much data are you transferring, if it is
> >> just
> >> a little this is terrible, but you are doing a lot of system calls. A
> >> better way of doing this is have the driver pend the IRP until there is
> >> new
> >> data, and the application issues either an OVERLAPPED I/O or has the read
> >> done in a thread that can wait.
> >>
> >>
> >> --
> >> Don Burn (MVP, Windows DDK)
> >> Windows 2k/XP/2k3 Filesystem and Driver Consulting
> >> http://www.windrvr.com
> >> Remove StopSpam from the email to reply
> >>
> >>
> >>
> >> <(E-Mail Removed)> wrote in message
> >> news:(E-Mail Removed)...
> >> > Hi,
> >> > Target OS : Windows XP
> >> > I am developing a simple driver which will communicate to ISA based
> >> > card.
> >> > An application written in VB .net will communicate to it.
> >> > I have seen certain machanism to communicate to any device driver
> >> > one of them is using IOCTL.
> >> > My VB.net application hava timer running after every 200 ms or may
> >> > be less than that. and polls for the data to come from driver. I feel
> >> > that IOCTL communication for this may create some performence issue due
> >> > to memory exchanged for every input/output and time taken for it's
> >> > processing.
> >> > Can anybody shade some light on it and suggest me some better
> >> > machanism to implement this ?
> >> >
> >> > Regards
> >> >

> >


 
Reply With Quote
 
Don Burn
Guest
Posts: n/a
 
      5th Sep 2006
This is the inverted call model. You do OVERLAPPED I/O and your application
issues one or more I/O's with an event specified for each. Then when the
driver has something to communicate to the application, it completes the IRP
which will cause the OS to signal the event and return the data to the
application. The application processes the data and reissues the I/O call
to send the request back to the driver for the next time.


--
Don Burn (MVP, Windows DDK)
Windows 2k/XP/2k3 Filesystem and Driver Consulting
http://www.windrvr.com
Remove StopSpam from the email to reply


<(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> Thanks again,
> Let me be more relevant to my application and it's usage. I need a
> machanism through which my driver continuesly sends the data to my
> application. Here in all the suggested mode it is an application which
> either use Readfile or DeviceIOControl to request and wait for
> response and that need to be in loop continuesly.
> My question is can I set any application functions in the driver so
> that when ever event occurs it calls it back and application get
> notify.
>
> Regards,
> Niraj
>
> Don Burn wrote:
>> Well most drivers use this mechanism. Yes people have implemented more
>> complex mechanisms with shared memory, and multiple events, etc. The
>> ironic
>> thing is for low to medium bandwidth applications, which yours sounds
>> like,
>> the complex mechanisms do nothing but take a lot more code.
>>
>>
>> --
>> Don Burn (MVP, Windows DDK)
>> Windows 2k/XP/2k3 Filesystem and Driver Consulting
>> http://www.windrvr.com
>> Remove StopSpam from the email to reply
>>
>>
>>
>> <(E-Mail Removed)> wrote in message
>> news:(E-Mail Removed)...
>> > Thanks a lot...
>> > Following your suggestion I have stiudied on IPR and OVERLAPPED I/O.
>> > I have found that these mechanisms are used for communication bet'n
>> > either two applications or bet'n two drivers. My next problem is how
>> > far it is feasible and advisable to use it for application and driver
>> > communication as both are running different process areas with
>> > different restrictions type (i.e. on is running in kernel space while
>> > other in User space..).
>> > Hope I am not making any child like mistake...
>> > thanks again,
>> > Niraj
>> >
>> > Don Burn wrote:
>> >> Well the first question is how much data are you transferring, if it
>> >> is
>> >> just
>> >> a little this is terrible, but you are doing a lot of system calls. A
>> >> better way of doing this is have the driver pend the IRP until there
>> >> is
>> >> new
>> >> data, and the application issues either an OVERLAPPED I/O or has the
>> >> read
>> >> done in a thread that can wait.
>> >>
>> >>
>> >> --
>> >> Don Burn (MVP, Windows DDK)
>> >> Windows 2k/XP/2k3 Filesystem and Driver Consulting
>> >> http://www.windrvr.com
>> >> Remove StopSpam from the email to reply
>> >>
>> >>
>> >>
>> >> <(E-Mail Removed)> wrote in message
>> >> news:(E-Mail Removed)...
>> >> > Hi,
>> >> > Target OS : Windows XP
>> >> > I am developing a simple driver which will communicate to ISA
>> >> > based
>> >> > card.
>> >> > An application written in VB .net will communicate to it.
>> >> > I have seen certain machanism to communicate to any device driver
>> >> > one of them is using IOCTL.
>> >> > My VB.net application hava timer running after every 200 ms or
>> >> > may
>> >> > be less than that. and polls for the data to come from driver. I
>> >> > feel
>> >> > that IOCTL communication for this may create some performence issue
>> >> > due
>> >> > to memory exchanged for every input/output and time taken for it's
>> >> > processing.
>> >> > Can anybody shade some light on it and suggest me some better
>> >> > machanism to implement this ?
>> >> >
>> >> > Regards
>> >> >
>> >

>



 
Reply With Quote
 
nirajembedded@gmail.com
Guest
Posts: n/a
 
      13th Sep 2006
Hi,
Can I use named Pipe between driver and application instead of IRP ?
Niraj
Don Burn wrote:
> This is the inverted call model. You do OVERLAPPED I/O and your application
> issues one or more I/O's with an event specified for each. Then when the
> driver has something to communicate to the application, it completes the IRP
> which will cause the OS to signal the event and return the data to the
> application. The application processes the data and reissues the I/O call
> to send the request back to the driver for the next time.
>
>
> --
> Don Burn (MVP, Windows DDK)
> Windows 2k/XP/2k3 Filesystem and Driver Consulting
> http://www.windrvr.com
> Remove StopSpam from the email to reply
>
>
> <(E-Mail Removed)> wrote in message
> news:(E-Mail Removed)...
> > Thanks again,
> > Let me be more relevant to my application and it's usage. I need a
> > machanism through which my driver continuesly sends the data to my
> > application. Here in all the suggested mode it is an application which
> > either use Readfile or DeviceIOControl to request and wait for
> > response and that need to be in loop continuesly.
> > My question is can I set any application functions in the driver so
> > that when ever event occurs it calls it back and application get
> > notify.
> >
> > Regards,
> > Niraj
> >
> > Don Burn wrote:
> >> Well most drivers use this mechanism. Yes people have implemented more
> >> complex mechanisms with shared memory, and multiple events, etc. The
> >> ironic
> >> thing is for low to medium bandwidth applications, which yours sounds
> >> like,
> >> the complex mechanisms do nothing but take a lot more code.
> >>
> >>
> >> --
> >> Don Burn (MVP, Windows DDK)
> >> Windows 2k/XP/2k3 Filesystem and Driver Consulting
> >> http://www.windrvr.com
> >> Remove StopSpam from the email to reply
> >>
> >>
> >>
> >> <(E-Mail Removed)> wrote in message
> >> news:(E-Mail Removed)...
> >> > Thanks a lot...
> >> > Following your suggestion I have stiudied on IPR and OVERLAPPED I/O.
> >> > I have found that these mechanisms are used for communication bet'n
> >> > either two applications or bet'n two drivers. My next problem is how
> >> > far it is feasible and advisable to use it for application and driver
> >> > communication as both are running different process areas with
> >> > different restrictions type (i.e. on is running in kernel space while
> >> > other in User space..).
> >> > Hope I am not making any child like mistake...
> >> > thanks again,
> >> > Niraj
> >> >
> >> > Don Burn wrote:
> >> >> Well the first question is how much data are you transferring, if it
> >> >> is
> >> >> just
> >> >> a little this is terrible, but you are doing a lot of system calls. A
> >> >> better way of doing this is have the driver pend the IRP until there
> >> >> is
> >> >> new
> >> >> data, and the application issues either an OVERLAPPED I/O or has the
> >> >> read
> >> >> done in a thread that can wait.
> >> >>
> >> >>
> >> >> --
> >> >> Don Burn (MVP, Windows DDK)
> >> >> Windows 2k/XP/2k3 Filesystem and Driver Consulting
> >> >> http://www.windrvr.com
> >> >> Remove StopSpam from the email to reply
> >> >>
> >> >>
> >> >>
> >> >> <(E-Mail Removed)> wrote in message
> >> >> news:(E-Mail Removed)...
> >> >> > Hi,
> >> >> > Target OS : Windows XP
> >> >> > I am developing a simple driver which will communicate to ISA
> >> >> > based
> >> >> > card.
> >> >> > An application written in VB .net will communicate to it.
> >> >> > I have seen certain machanism to communicate to any device driver
> >> >> > one of them is using IOCTL.
> >> >> > My VB.net application hava timer running after every 200 ms or
> >> >> > may
> >> >> > be less than that. and polls for the data to come from driver. I
> >> >> > feel
> >> >> > that IOCTL communication for this may create some performence issue
> >> >> > due
> >> >> > to memory exchanged for every input/output and time taken for it's
> >> >> > processing.
> >> >> > Can anybody shade some light on it and suggest me some better
> >> >> > machanism to implement this ?
> >> >> >
> >> >> > Regards
> >> >> >
> >> >

> >


 
Reply With Quote
 
Don Burn
Guest
Posts: n/a
 
      13th Sep 2006
Using a pipe is completely undocumented and will likely not pass WHQL
testing if you need it. Driver in Windows are designed to work on IRP's,
this is a very basic operation, using something other than an IRP is just
going to cause you problems in the end.


--
Don Burn (MVP, Windows DDK)
Windows 2k/XP/2k3 Filesystem and Driver Consulting
http://www.windrvr.com
Remove StopSpam from the email to reply



<(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> Hi,
> Can I use named Pipe between driver and application instead of IRP ?
> Niraj
> Don Burn wrote:
>> This is the inverted call model. You do OVERLAPPED I/O and your
>> application
>> issues one or more I/O's with an event specified for each. Then when the
>> driver has something to communicate to the application, it completes the
>> IRP
>> which will cause the OS to signal the event and return the data to the
>> application. The application processes the data and reissues the I/O
>> call
>> to send the request back to the driver for the next time.
>>
>>
>> --
>> Don Burn (MVP, Windows DDK)
>> Windows 2k/XP/2k3 Filesystem and Driver Consulting
>> http://www.windrvr.com
>> Remove StopSpam from the email to reply
>>
>>
>> <(E-Mail Removed)> wrote in message
>> news:(E-Mail Removed)...
>> > Thanks again,
>> > Let me be more relevant to my application and it's usage. I need a
>> > machanism through which my driver continuesly sends the data to my
>> > application. Here in all the suggested mode it is an application which
>> > either use Readfile or DeviceIOControl to request and wait for
>> > response and that need to be in loop continuesly.
>> > My question is can I set any application functions in the driver so
>> > that when ever event occurs it calls it back and application get
>> > notify.
>> >
>> > Regards,
>> > Niraj
>> >
>> > Don Burn wrote:
>> >> Well most drivers use this mechanism. Yes people have implemented
>> >> more
>> >> complex mechanisms with shared memory, and multiple events, etc. The
>> >> ironic
>> >> thing is for low to medium bandwidth applications, which yours sounds
>> >> like,
>> >> the complex mechanisms do nothing but take a lot more code.
>> >>
>> >>
>> >> --
>> >> Don Burn (MVP, Windows DDK)
>> >> Windows 2k/XP/2k3 Filesystem and Driver Consulting
>> >> http://www.windrvr.com
>> >> Remove StopSpam from the email to reply
>> >>
>> >>
>> >>
>> >> <(E-Mail Removed)> wrote in message
>> >> news:(E-Mail Removed)...
>> >> > Thanks a lot...
>> >> > Following your suggestion I have stiudied on IPR and OVERLAPPED
>> >> > I/O.
>> >> > I have found that these mechanisms are used for communication
>> >> > bet'n
>> >> > either two applications or bet'n two drivers. My next problem is how
>> >> > far it is feasible and advisable to use it for application and
>> >> > driver
>> >> > communication as both are running different process areas with
>> >> > different restrictions type (i.e. on is running in kernel space
>> >> > while
>> >> > other in User space..).
>> >> > Hope I am not making any child like mistake...
>> >> > thanks again,
>> >> > Niraj
>> >> >
>> >> > Don Burn wrote:
>> >> >> Well the first question is how much data are you transferring, if
>> >> >> it
>> >> >> is
>> >> >> just
>> >> >> a little this is terrible, but you are doing a lot of system calls.
>> >> >> A
>> >> >> better way of doing this is have the driver pend the IRP until
>> >> >> there
>> >> >> is
>> >> >> new
>> >> >> data, and the application issues either an OVERLAPPED I/O or has
>> >> >> the
>> >> >> read
>> >> >> done in a thread that can wait.
>> >> >>
>> >> >>
>> >> >> --
>> >> >> Don Burn (MVP, Windows DDK)
>> >> >> Windows 2k/XP/2k3 Filesystem and Driver Consulting
>> >> >> http://www.windrvr.com
>> >> >> Remove StopSpam from the email to reply
>> >> >>
>> >> >>
>> >> >>
>> >> >> <(E-Mail Removed)> wrote in message
>> >> >> news:(E-Mail Removed)...
>> >> >> > Hi,
>> >> >> > Target OS : Windows XP
>> >> >> > I am developing a simple driver which will communicate to ISA
>> >> >> > based
>> >> >> > card.
>> >> >> > An application written in VB .net will communicate to it.
>> >> >> > I have seen certain machanism to communicate to any device
>> >> >> > driver
>> >> >> > one of them is using IOCTL.
>> >> >> > My VB.net application hava timer running after every 200 ms
>> >> >> > or
>> >> >> > may
>> >> >> > be less than that. and polls for the data to come from driver. I
>> >> >> > feel
>> >> >> > that IOCTL communication for this may create some performence
>> >> >> > issue
>> >> >> > due
>> >> >> > to memory exchanged for every input/output and time taken for
>> >> >> > it's
>> >> >> > processing.
>> >> >> > Can anybody shade some light on it and suggest me some better
>> >> >> > machanism to implement this ?
>> >> >> >
>> >> >> > Regards
>> >> >> >
>> >> >
>> >

>



 
Reply With Quote
 
Doron Holan [MS]
Guest
Posts: n/a
 
      18th Sep 2006
even if you got a named pipe to work, the underlying transport for the pipe
is a PIRP

d

--
Please do not send e-mail directly to this alias. this alias is for
newsgroup purposes only.
This posting is provided "AS IS" with no warranties, and confers no rights.


"Don Burn" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> Using a pipe is completely undocumented and will likely not pass WHQL
> testing if you need it. Driver in Windows are designed to work on IRP's,
> this is a very basic operation, using something other than an IRP is just
> going to cause you problems in the end.
>
>
> --
> Don Burn (MVP, Windows DDK)
> Windows 2k/XP/2k3 Filesystem and Driver Consulting
> http://www.windrvr.com
> Remove StopSpam from the email to reply
>
>
>
> <(E-Mail Removed)> wrote in message
> news:(E-Mail Removed)...
>> Hi,
>> Can I use named Pipe between driver and application instead of IRP ?
>> Niraj
>> Don Burn wrote:
>>> This is the inverted call model. You do OVERLAPPED I/O and your
>>> application
>>> issues one or more I/O's with an event specified for each. Then when
>>> the
>>> driver has something to communicate to the application, it completes the
>>> IRP
>>> which will cause the OS to signal the event and return the data to the
>>> application. The application processes the data and reissues the I/O
>>> call
>>> to send the request back to the driver for the next time.
>>>
>>>
>>> --
>>> Don Burn (MVP, Windows DDK)
>>> Windows 2k/XP/2k3 Filesystem and Driver Consulting
>>> http://www.windrvr.com
>>> Remove StopSpam from the email to reply
>>>
>>>
>>> <(E-Mail Removed)> wrote in message
>>> news:(E-Mail Removed)...
>>> > Thanks again,
>>> > Let me be more relevant to my application and it's usage. I need a
>>> > machanism through which my driver continuesly sends the data to my
>>> > application. Here in all the suggested mode it is an application which
>>> > either use Readfile or DeviceIOControl to request and wait for
>>> > response and that need to be in loop continuesly.
>>> > My question is can I set any application functions in the driver so
>>> > that when ever event occurs it calls it back and application get
>>> > notify.
>>> >
>>> > Regards,
>>> > Niraj
>>> >
>>> > Don Burn wrote:
>>> >> Well most drivers use this mechanism. Yes people have implemented
>>> >> more
>>> >> complex mechanisms with shared memory, and multiple events, etc. The
>>> >> ironic
>>> >> thing is for low to medium bandwidth applications, which yours sounds
>>> >> like,
>>> >> the complex mechanisms do nothing but take a lot more code.
>>> >>
>>> >>
>>> >> --
>>> >> Don Burn (MVP, Windows DDK)
>>> >> Windows 2k/XP/2k3 Filesystem and Driver Consulting
>>> >> http://www.windrvr.com
>>> >> Remove StopSpam from the email to reply
>>> >>
>>> >>
>>> >>
>>> >> <(E-Mail Removed)> wrote in message
>>> >> news:(E-Mail Removed)...
>>> >> > Thanks a lot...
>>> >> > Following your suggestion I have stiudied on IPR and OVERLAPPED
>>> >> > I/O.
>>> >> > I have found that these mechanisms are used for communication
>>> >> > bet'n
>>> >> > either two applications or bet'n two drivers. My next problem is
>>> >> > how
>>> >> > far it is feasible and advisable to use it for application and
>>> >> > driver
>>> >> > communication as both are running different process areas with
>>> >> > different restrictions type (i.e. on is running in kernel space
>>> >> > while
>>> >> > other in User space..).
>>> >> > Hope I am not making any child like mistake...
>>> >> > thanks again,
>>> >> > Niraj
>>> >> >
>>> >> > Don Burn wrote:
>>> >> >> Well the first question is how much data are you transferring, if
>>> >> >> it
>>> >> >> is
>>> >> >> just
>>> >> >> a little this is terrible, but you are doing a lot of system
>>> >> >> calls. A
>>> >> >> better way of doing this is have the driver pend the IRP until
>>> >> >> there
>>> >> >> is
>>> >> >> new
>>> >> >> data, and the application issues either an OVERLAPPED I/O or has
>>> >> >> the
>>> >> >> read
>>> >> >> done in a thread that can wait.
>>> >> >>
>>> >> >>
>>> >> >> --
>>> >> >> Don Burn (MVP, Windows DDK)
>>> >> >> Windows 2k/XP/2k3 Filesystem and Driver Consulting
>>> >> >> http://www.windrvr.com
>>> >> >> Remove StopSpam from the email to reply
>>> >> >>
>>> >> >>
>>> >> >>
>>> >> >> <(E-Mail Removed)> wrote in message
>>> >> >> news:(E-Mail Removed)...
>>> >> >> > Hi,
>>> >> >> > Target OS : Windows XP
>>> >> >> > I am developing a simple driver which will communicate to ISA
>>> >> >> > based
>>> >> >> > card.
>>> >> >> > An application written in VB .net will communicate to it.
>>> >> >> > I have seen certain machanism to communicate to any device
>>> >> >> > driver
>>> >> >> > one of them is using IOCTL.
>>> >> >> > My VB.net application hava timer running after every 200 ms
>>> >> >> > or
>>> >> >> > may
>>> >> >> > be less than that. and polls for the data to come from driver.
>>> >> >> > I
>>> >> >> > feel
>>> >> >> > that IOCTL communication for this may create some performence
>>> >> >> > issue
>>> >> >> > due
>>> >> >> > to memory exchanged for every input/output and time taken for
>>> >> >> > it's
>>> >> >> > processing.
>>> >> >> > Can anybody shade some light on it and suggest me some better
>>> >> >> > machanism to implement this ?
>>> >> >> >
>>> >> >> > Regards
>>> >> >> >
>>> >> >
>>> >

>>

>
>



 
Reply With Quote
 
 
 
Reply

Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
InterProcess Communication, .Net to C++ communication batista Microsoft Dot NET 4 16th Oct 2006 07:21 AM
InterProcess Communication, .Net to C++ communication batista Microsoft C# .NET 1 12th Oct 2006 02:09 PM
Have problem to install driver for a serial communication board on mY XPE. Jhou Windows XP Embedded 3 15th Apr 2005 11:00 PM
Connecting HP Officejet 590 with windows XP, down loaded driver from HP,but keep getting communication errors =?Utf-8?B?QnVja2V5ZSBCdWNr?= Windows XP Print / Fax 1 24th Mar 2004 08:27 PM
W2K-NT communication slower than NT-NT communication peter.somers.ps@bigfoot.com Microsoft Windows 2000 Networking 0 1st Nov 2003 03:33 PM


Features
 

Advertising
 

Newsgroups
 


All times are GMT +1. The time now is 11:05 AM.