How well does kernel mode testing work within a VM like XP Pro in Virtual PC
2007.
Can anyone point me to some material regarding this and/or some material
testing such in
a VM with any OS. I would like to test things regarding Ring 0 and User-mode
for my own
gain of knowledge.
Any help is really appreciated.
Kromag.
__________ Information from ESET Smart Security, version of virus signature database 4153 (20090613) __________
The message was checked by ESET Smart Security.
http://www.eset.com
The answer varies from “quite well” to “doesn’t work at all” depending
on what sort of kernel mode component you are trying to test. If you
just want to poke around inside a windows guest using windbg - virtual
pc’s windbg setup is pretty easy - just google (or even bing
virtual pc 2007 windbg.
Mark Roddy
On Sun, Jun 14, 2009 at 4:48 PM, Kromag wrote: > How well does kernel mode testing work within a VM like XP Pro in Virtual PC > 2007. > > Can anyone point me to some material regarding this and/or some material > testing such in > a VM with any OS. I would like to test things regarding Ring 0 and User-mode > for my own > gain of knowledge. > > Any help is really appreciated. > > ~~~ > Kromag. > > Information from ESET Smart Security, version of virus signature > database 4153 (20090613) > > The message was checked by ESET Smart Security. > > http://www.eset.com > > > > > — > NTDEV is sponsored by OSR > > For our schedule of WDF, WDM, debugging and other seminars visit: > http://www.osr.com/seminars > > To unsubscribe, visit the List Server section of OSR Online at > http://www.osronline.com/page.cfm?name=ListServer >
Well do you know of a compendium of sorts that will list the do’s and don’ts
of doing VM testing?
Kromag
"Mark Roddy" <xxxxx> wrote in message news:xxxxx@ntdev...<br>> The answer varies from "quite well" to "doesn't work at all" depending<br>> on what sort of kernel mode component you are trying to test. If you<br>> just want to poke around inside a windows guest using windbg - virtual<br>> pc's windbg setup is pretty easy - just google (or even bing :-)<br>> virtual pc 2007 windbg.<br>><br>><br>><br>> Mark Roddy<br>><br>><br>><br>> On Sun, Jun 14, 2009 at 4:48 PM, Kromag<xxxxx> wrote:<br>>> How well does kernel mode testing work within a VM like XP Pro in Virtual <br>>> PC<br>>> 2007.<br>>><br>>> Can anyone point me to some material regarding this and/or some material<br>>> testing such in<br>>> a VM with any OS. I would like to test things regarding Ring 0 and <br>>> User-mode<br>>> for my own<br>>> gain of knowledge.<br>>><br>>> Any help is really appreciated.<br>>><br>>> ~~~<br>>> Kromag.<br>>><br>>> __________Information from ESET Smart Security, version of virus <br>>> signature<br>>> database 4153 (20090613)__________<br>>><br>>> The message was checked by ESET Smart Security.<br>>><br>>> http://www.eset.com<br>>><br>>><br>>><br>>><br>>> ---<br>>> NTDEV is sponsored by OSR<br>>><br>>> For our schedule of WDF, WDM, debugging and other seminars visit:<br>>> http://www.osr.com/seminars<br>>><br>>> To unsubscribe, visit the List Server section of OSR Online at<br>>> http://www.osronline.com/page.cfm?name=ListServer<br>>><br>><br>><br>> __________Information from ESET Smart Security, version of virus <br>> signature database 4153 (20090613)__________<br>><br>> The message was checked by ESET Smart Security.<br>><br>> http://www.eset.com<br>><br>><br>> <br><br>__________Information from ESET Smart Security, version of virus signature database 4153 (20090613)__________<br><br>The message was checked by ESET Smart Security.<br><br>http://www.eset.com</xxxxx></xxxxx>
> How well does kernel mode testing work within a VM like XP Pro in Virtual PC 2007.
As long as your driver does not touch the actual hardware VM is a good option. However, if you try to access
emulated hardware things may work a little bit differently from the physical one.Therefore, everything depends on what your driver’s functionality is all about…
> How well does kernel mode testing work within a VM like XP Pro in
Virtual PC
> 2007.
As long as your driver does not touch the actual hardware VM is a good
option.
However, if you try to access
emulated hardware things may work a little bit differently from the
physical
one.Therefore, everything depends on what your driver’s functionality
is all
about…
You can pass through PCI devices under Xen. I assume that other
virtualisation solutions support the same sort of things.
Obviously it’s still possible to crash the physical machine via doing
something bad to the PCI bus, and it would not be safe to assume “my
driver works on a VM with the PCI device passed through to it, so it is
ready for use in the real world”, but it can still be a big time saver.
"James Harper" <xxxxx> wrote in message <br>news:xxxxx@ntdev...<br>><br>> > How well does kernel mode testing work within a VM like XP Pro in<br>Virtual PC<br>> > 2007.<br>><br>> As long as your driver does not touch the actual hardware VM is a good<br>option.<br>> However, if you try to access<br>> emulated hardware things may work a little bit differently from the<br>physical<br>> one.Therefore, everything depends on what your driver's functionality<br>is all<br>> about...<br>><br><br>You can pass through PCI devices under Xen. I assume that other<br>virtualisation solutions support the same sort of things.<br><br>Obviously it's still possible to crash the physical machine via doing<br>something bad to the PCI bus, and it would not be safe to assume "my<br>driver works on a VM with the PCI device passed through to it, so it is<br>ready for use in the real world", but it can still be a big time saver.<br><br>James<br><br>__________Information from ESET Smart Security, version of virus signature <br>database 4153 (20090613)__________<br><br>The message was checked by ESET Smart Security.<br><br>http://www.eset.com<br><br>__________Information from ESET Smart Security, version of virus signature database 4153 (20090613)__________<br><br>The message was checked by ESET Smart Security.<br><br>http://www.eset.com</xxxxx>
I have never tried, but I am certain that earlier versions of VMWare did not
support access to most hardware that Windows recognized in the host
partition. If you were trying to support a 10Gb Ethernet controller that
not only did normal TCP/IP traffic, but maybe iSCSI and even booting I don’t
think the virtualization would permit it to function very well. It should
be possible, but I am doubtful that the hardware and the VM software has
been written for such a small market task. Many use AMD, which I believe
has better hardware virtualization than Intel CPUs, but I still wonder if it
can work.
That said, if you can get the host/parent virtual partition to not claim or
disable the devices ports, memory, and interrupts (MSI, MSI-X, or legacy) it
might be possible in some environments. For decent performance you want
your driver and its resources to remain resident even if your VM happens to
be suspended. AFAIK, there are no other devices used on typical servers,
workstations, desktops, or notebooks (other than maybe fiber channel) that
require as much in the way of resources as network controllers. Storage
runs much slower since no current hard driver exceeds even SATA I speeds by
much if anything. A 10Gb Ethernet controller will require at least 4 lanes
in PCIe or two in the latest PCIe spec and they can saturate all of those
lanes if used in a chariot testing environment.
In any case, just make sure you have a good snapshot of the VM and backup of
the host if/when it fails. I would start with VMWare first, then Virtual
Server (or Hyper-V if 2k8), and then maybe a good port of Xen if those fail.
At least with the source code you may be able to fix the problem if you have
the skills.
“James Harper” wrote in message news:xxxxx@ntdev… > > > How well does kernel mode testing work within a VM like XP Pro in Virtual PC > > 2007. > > As long as your driver does not touch the actual hardware VM is a good option. > However, if you try to access > emulated hardware things may work a little bit differently from the physical > one.Therefore, everything depends on what your driver’s functionality is all > about… >
You can pass through PCI devices under Xen. I assume that other virtualisation solutions support the same sort of things.
Obviously it’s still possible to crash the physical machine via doing something bad to the PCI bus, and it would not be safe to assume “my driver works on a VM with the PCI device passed through to it, so it is ready for use in the real world”, but it can still be a big time saver.
I figured I will utilize the VM for some and I am using VPC 2007 for that.
It seems to have too many restrictions for what I really want to be able to
push to.
I also have a Laptop I can take advantage of using Teamviewer and remoting
in to test it all from my station.
Albeit, this currently only has XP on it.
Thanks for the responses folks.
Kromag.
__________ Information from ESET Smart Security, version of virus signature database 4153 (20090613) __________
The message was checked by ESET Smart Security.
http://www.eset.com
> You can pass through PCI devices under Xen. I assume that other virtualisation solutions support
the same sort of things.
Which still does not imply VM==physical machine…
For example, try to raise kbd interrupt by writing to IO port under VMWare, and you will see that VM behavior may be sometimes a bit different from the physical one(actually, I did it around 6 years ago, so that probably they fixed it now)…
> How well does kernel mode testing work within a VM like XP Pro in Virtual
> PC 2007.
As long as your driver does not touch the actual hardware VM is a good
option. However, if you try to access emulated hardware things may work
a little bit differently from the physical one.Therefore, everything
depends on what your driver's functionality is all about...
Well, I will say that I tried one of my USB 2.0 video cameras inside
the new "Windows XP Mode" virtual machine in Windows 7's "Windows
Virtual PC", and it worked flawlessly, even with a maximum-throughput
isochronous pipe.
> You can pass through PCI devices under Xen. I assume that other
> virtualisation solutions support
> the same sort of things.
Which still does not imply VM==physical machine…
For example, try to raise kbd interrupt by writing to IO port under
VMWare,
and you will see that VM behavior may be sometimes a bit different
from the
physical one(actually, I did it around 6 years ago, so that probably
they
fixed it now)…
Which is why I included disclaimers in my email (that you then cut out
in your reply, making it look like I implied that it was the same
thing).