Re: Mirror Driver Architecture

Tech-Archive recommends: Speed Up your PC by fixing your registry



"Ronny S" <RonnyS@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote:

I am building a mirror driver that needs to compress, encrypt and transmit
bytes over a network. I believe it would be more efficient to do this from
within the driver rather than requesting the user-mode application to
perform these tasks every time there is a modification to the UI.

My understanding is that these kernel to user-mode context switches are
costly...

Compared to what? You're talking about compressing, encrypting, and
transmitting over a network here. The overhead of a couple of user/kernel
transition will be lost in the noise.

Before you embark on a multimonth development effort, have you checked out
the various VNCs, which do exactly what you are asking, and come with
source code?

(as are the synchronizations on shared memory, etc.) - not to mention
the additional headache of managing the shared memory in the driver - so I
opted for doing everything in the driver.

You need to weigh the "headache of managing the shared memory" to the
headache of compression and encryption in the driver, plus the risks of
kernel debugging versus the ease of user debugging, PLUS the headache of
mucking with TDI versus the ease of socket programming.

I've been doing Windows drivers for 16 years, but given the choice, I'll
always push the work to user-mode.
--
- Tim Roberts, timr@xxxxxxxxx
Providenza & Boekelheide, Inc.
.



Relevant Pages

  • Re: USB device driver
    ... My requirement is to encrypt the data that is written to usb only. ... If I write a file system filter driver wont data being written to local hard ...
    (microsoft.public.development.device.drivers)
  • Re: driver level encryption or application level encryption
    ... doing encryption in your app means its not put int hte LSP or driver ... ... You could simply encrypt your messages and toss em over the wire .. ... What will be the pros and cons in LSP and driver level approach? ...
    (microsoft.public.win32.programmer.networks)
  • Stop Error F4 and Unknown Hard Error
    ... encrypt my old drive, so they just encrypted the new drive and then copied ... HD Tune: ST980815A Health ... driver for the new hard drive needs to be updated (the driver is dated ...
    (microsoft.public.windowsxp.hardware)
  • Re: USB device driver
    ... I am new to driver development. ... I would like to experiment by writing a USB ... My requirement is to encrypt the data that will be written to the USB ...
    (microsoft.public.development.device.drivers)
  • Re: I want to compress packet go out from my machine
    ... are you looking for a way to compress ALL communication across a network ... link (between two machines) regardless of the sender and receiver of the ... driver newsgroups for help in building this kind of driver. ... There's no magic place that you can insert some compression code to make ...
    (microsoft.public.dotnet.languages.csharp)