Re: Allocating and accessing physically contiguous memory in user mode in WinCE 6.0 Beta



On the other hands, user mode device driver may not so appealing to me
because it still has too many restrictions and that as you pointed,
because most embedded systems are closed systems, there is little
portion to play a role for 3rd party.
User mode drivers are exactly what we have had for all versions prior to CE
6.0. What is new in V6.0 is Kernel mode drivers, since device.exe no longer
exists and it is now moved into the kernel. From a performance and
conceptual perspective nothing has really changed except that the CEDDK
mapping functions route through a re-director in the kernel and no longer
allow free reign on ALL addresses. Once the address is mapped during driver
init the actual device register I/O access and IST latencies are going to be
the same in kernel mode and user mode. (The IST is, afterall just a thread
running in a process. The scheduler doesn't really care what process context
the thread is running in so scheduling the IST is the same no matter what
process.

Still, kernel mode device driver is the default option and I think it
is still far from reality.
Huh? They are every bit as real as user mode drivers. When correctly written
most drivers can be operated in either kernel or User mode. Some bus
drivers, like USB currently require kernel mode for their client drivers,
however that's not necessarily always going to be true going forward. NDIS
drivers will likely always be located in kernel mode though for performance
reasons.


--
Steve Maillet
EmbeddedFusion
www.EmbeddedFusion.com
smaillet at EmbeddedFusion dot com


.



Relevant Pages

  • Re: WinCE 6.0 Kernel Mode Driver IST
    ... "Dean Ramsier" wrote: ... In CE6 drivers are running in kernel mode because the Device manager ... kernel address space and the IST of a user mode driver ...
    (microsoft.public.windowsce.platbuilder)
  • Re: WinCE 6.0 Kernel Mode Driver IST
    ... In CE6 drivers are running in kernel mode because the Device manager ... kernel address space and the IST of a user mode driver ...
    (microsoft.public.windowsce.platbuilder)
  • Re: Simple USB access, but a Significant Dilemma
    ... Drivers, be it user mode or kernel mode must be written in C possibly mixed with assembly. ... The reason for this is not the language per se, it's most because of the runtime, you don't wan't to load the CLR in kernel space do you? ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: WDM unidrv printer driver, Fontname and bitmap data
    ... user mode driver has no problems using it. ... > used for kernel mode device drivers on W2K and forward. ... > OEMSendPage question, what do you mean by the data is not ...
    (microsoft.public.development.device.drivers)
  • Re: USB performance bug since kernel 2.6.13 (CRITICAL???)
    ... user mode for this sort of thing. ... kernel mode drivers in this regard. ... Recall that each transaction ...
    (Linux-Kernel)