This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: File operations on a Windows Driver (character device)


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 Paged
and allocated with a ExAllocatePoolWithTag in 'win terms'.

2015-05-18 16:47 GMT+02:00 Larry Hall (Cygwin)
<reply-to-list-only-lh@cygwin.com>:
> On 05/18/2015 05:42 AM, Alessio Faina wrote:
>>
>> Hello everyone,
>>
>> I'm developing a port of a FreeBSD/Linux application that consists of
>> two parts: a kernel and a user land part.
>> The kernel part is build as a WDM driver and is compiled with VS2013
>> and WDK 8.1: the userspace is going to
>> be compiled under Cygwin for compatibility with user land programs
>> already written for other OSs.
>>
>> My problem is that the user space program invokes Open(), ioctl(),
>> mmap/munmap(), select() and poll().
>>
>> I've build a test Win32 app to open with CreateFile the DosDevice with
>> the "\\\\.\\uniioctl" name and everything goes fine,
>> but I've tried to do the same thing with Open(...) with a lot of
>> variants (\\DosDevice\\uniioctl, \dev\uniioctl....) but I'm
>> unable to open the character device. There is some way to do this?
>
>
> Sorry I can't help with allot of specifics on your questions but I can
> say that when using Cygwin, you are best off if you stick to POSIX syntax
> and semantics and don't mix in Windows code and Windowisms.  That includes
> path separators (i.e. use '/', not '\').  See this page in the User's Guide
> for information on how Cygwin handles device emulation too:
>
> <https://cygwin.com/cygwin-ug-net/using-specialnames.html#pathnames-posixdevices>
>
>
>
> --
> Larry
>
> _____________________________________________________________________
>
> A: Yes.
>> Q: Are you sure?
>>> A: Because it reverses the logical flow of conversation.
>>>> Q: Why is top posting annoying in email?
>
> --
> 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
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]