From: Oniel... on
Hello, need a starting point to develop driver to access ring 0 to read/write
MSR. I have VS 2008 and WDK 6001.18002. I am having difficulty finding a
starting point. This would be my first attempt to develop a driver. Any
information would be greatly appreciated to assist me with this project.
Thanks...
From: Maxim S. Shatskih on
KMDF WDK samples.

--
Maxim S. Shatskih
Windows DDK MVP
maxim(a)storagecraft.com
http://www.storagecraft.com

"Oniel..." <Oniel(a)discussions.microsoft.com> wrote in message news:048B3A82-C68A-4937-89C9-DF16488214E9(a)microsoft.com...
> Hello, need a starting point to develop driver to access ring 0 to read/write
> MSR. I have VS 2008 and WDK 6001.18002. I am having difficulty finding a
> starting point. This would be my first attempt to develop a driver. Any
> information would be greatly appreciated to assist me with this project.
> Thanks...
From: alberto on

Depending on what the driver will be used for, I would probably just
write a legacy wdm driver because of the level of user-level control
it gives me. Or maybe I might lift it from Walter Oney's book, he has
a minimal driver in there, just add the code to read and write MSRs
and interface it to a couple of IoControls.

Or, even simpler, maybe write a tiny Linux driver and run it under
Hyper-V, VMWare or VirtualBox if you really want it to work in a
Windows environment. You don't need much more than the few lines of
code in Rubini's book's first driver, and the virtualizers are free.

Alberto.


On Jan 26, 6:10 pm, Oniel... <On...(a)discussions.microsoft.com> wrote:
> Hello, need a starting point to develop driver to access ring 0 to read/write
> MSR.  I have VS 2008 and WDK 6001.18002.  I am having difficulty finding a
> starting point.  This would be my first attempt to develop a driver.  Any
> information would be greatly appreciated to assist me with this project.  
> Thanks...

From: Don Burn on
Since you cannot protect against others using the registers you have a small
problem. Accepting that just use a legacy driver since there is no need to
reserve hardware. Take a look at the example in src\general\event\wdm for a
simple legacy driver to start with.


--
Don Burn (MVP, Windows DKD)
Windows Filesystem and Driver Consulting
Website: http://www.windrvr.com
Blog: http://msmvps.com/blogs/WinDrvr
Remove StopSpam to reply



"Oniel..." <Oniel(a)discussions.microsoft.com> wrote in message
news:048B3A82-C68A-4937-89C9-DF16488214E9(a)microsoft.com...
> Hello, need a starting point to develop driver to access ring 0 to
> read/write
> MSR. I have VS 2008 and WDK 6001.18002. I am having difficulty finding a
> starting point. This would be my first attempt to develop a driver. Any
> information would be greatly appreciated to assist me with this project.
> Thanks...
>
> __________ Information from ESET NOD32 Antivirus, version of virus
> signature database 4808 (20100126) __________
>
> The message was checked by ESET NOD32 Antivirus.
>
> http://www.eset.com
>
>
>



__________ Information from ESET NOD32 Antivirus, version of virus signature database 4810 (20100127) __________

The message was checked by ESET NOD32 Antivirus.

http://www.eset.com




From: Kalle Olavi Niemitalo on
alberto <amoreira(a)ieee.org> writes:

> Or, even simpler, maybe write a tiny Linux driver and run it under
> Hyper-V, VMWare or VirtualBox if you really want it to work in a
> Windows environment.

Linux 2.6 has such a driver already; see arch/x86/kernel/msr.c.
It provides both read and write access.
I don't know though whether those virtualizers pass the MSR
accesses through to the actual CPU.