This is the mail archive of the
mailing list for the Cygwin project.
Re: File operations on a Windows Driver (character device)
- From: Alessio Faina <alessiofaina at gmail dot com>
- To: cygwin at cygwin dot com
- Date: Tue, 19 May 2015 16:09:44 +0200
- Subject: Re: File operations on a Windows Driver (character device)
- Authentication-results: sourceware.org; auth=none
- References: <CACs=mWDRGh9KZBT45=8yy4J6h62v0RNYxczV91qRhhb8LcfY4Q at mail dot gmail dot com> <5559FB9E dot 3040200 at cygwin dot com> <CACs=mWCO8ejvsufP3C_HFAiKDrcsanGZ+J_EuQQGOm+u30T_zg at mail dot gmail dot com> <loom dot 20150519T094146-560 at post dot gmane dot org>
Well.....I wrote and answered myself the question you pointed out that
is residing on stackoverflow....
It was my first option I thought of to pass the pointer to the virtual
address to the userland application but
I've been asked to mantain the architecture using open(), ioctl(),
mmap() etc.... so I don't know, it's a kind of
jolly to be played in case I won't be able to use the posix
architecture....but reading on forums/mailing lists...
I think I will be forced to use the kind of implementation I've
described in the SO question.
It seems that no-one ever have got the need to do something like I'm
trying to do.
2015-05-19 9:52 GMT+02:00 Mark Geisert <email@example.com>:
> Alessio Faina writes:
>> Ok thanks, I've been able to find the character device under
>> "/proc/sys/DosDevices/Global/deviceName"; now I'm stuck with the mmap
>> implementation; when I do mmap in the userland program it returns me
>> errno 19 (#define ENODEV 19 /* No such device */) obviously because
>> I haven't set anything in the kernel module; there's a way to make visible a
>> portion of memory to be used by the mmap in the kernel? The memory is Non
>> and allocated with a ExAllocatePoolWithTag in 'win terms'.
> help to answer your question? If it does, you'll still have to decide
> whether to translate the Windows calls there into Cygwin calls or instead
> just localize the Windows calls in one user-level module and leave
> everything else to Cygwin.
> Problem reports: http://cygwin.com/problems.html
> FAQ: http://cygwin.com/faq/
> Documentation: http://cygwin.com/docs.html
> Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple