How to debug driver on single machine?

Hey Don,

Buy a second machine, trying to do any file system work in a single machine
configuration is idiocy of the highest level. You are way to likely to
corrupt your build tree, and the time wasted in boot to run the dev
environment, reboot to test cycle will more than pay the cost.

Don Burn (MVP, Windows DDK)
Windows 2k/XP/2k3 Filesystem and Driver Consulting

I’m sorry but I have to respectfully disagree with this. In the
traditional sense you are correct (coding and testing on the same
“session”) but you can VERY easily use one machine and a virtual emulator
to do this, as some others have pointed out on the list already.

To be honest, I think its pure idiocy to use multiple machines if you are
doing any heavy work on a machine that you feel may “corrupt” your
environment. As someone who has had to write a low level encryption driver
and some security drivers in the past and do his fair bit of corrupting…
I would NEVER move to a second machine environment until I was comfortable
and sure most of the kinks were worked out. Having to rebuild your test
image (be it some networked ghost/mirroring or even an automated raw CD
install) is such an unproductive task, its not worth the effort. (I should
admit I saw some neat setup automation tactics from Fargo Nelson over in
Microsoft’s Windows Kernel Platforms group… but I find even that to be
very time consuming to roll a new platform out quickly. I want to code,
not rebuild machines)

About a year ago I got exposed to doing kernelmode development with the
use of VMWare, and I have never turned back. I even wrote a simple HOWTO
for using WinDbg with VMWare over a named pipe to emulate a serial over
at:

http://silverstr.ufies.org/lotr0/windbg-vmware.html

Its kinda dated now… but still works on VMWare 4. The key reason this
environment works great is you can use real time snapshots of the OS at
any given moment, and roll back as needed. I have like 10 different
snapshots of various flavours of Windows in different states. I can
QUICKLY flip to any given session in a few clicks, and I find it is MUCH
faster than having to deal with most machine boot up times of a secondary
test host. Note: If you ever do use VMWare make sure you use SCSI
drives… the write times are ENORMOUSLY faster when taking snapshots and
rolling back.

To give you an example where this is useful… I have one snapshot used
for testing my INF install which has the mouse ready to click on the
install script. When its revived it immediately starts the installation
from diskette. I can restart the session over and over again, stepping
through it at leisure without having to wait for reboots. Its a poor mans
way of doing the loading and unloading that the new Filter Manager does
for the older driver framework.

When I was at the latest Driver DevCon at the Microsoft Campus back in
November I got to talk to the lead for VirtualPC to see how they were
doing with the virtual debugging. They do have named pipe support… but
they do NOT have in-session snapshots. That apparently is one of their
biggest requests and one of the big things they expect to add in the next
version… which won’t be out for a few years. One cavet of using VMWare
is that it only has one snapshot per image. (Although rumor has it they
are looking at doing something like an image diff to allow for multiples).
This means you have to use multiple images to have different in-session
snapshots… which is fine by me. I just wrote a quick perl script to
basically copy the image and rename it with the info I want, and then
reload it in VMWare as another session as needed.

YMMV of course. And there is NOTHING WRONG with using two machines. But
using a virtual environment DOES work WELL if you know what you’re
doing… you might want to consider giving it another look.


Regards,
Dana M. Epp
[Blog: http://silverstr.ufies.org/blog/]

Having had a virtual environment crash badly a few times, I repeat my IDIOCY
comment. If you do not isolate your testbed from your dev machine you are
likely to corrupt both, and that is pure STUPIDITY ON YOUR PART.

Don Burn (MVP, Windows DDK)
Windows 2k/XP/2k3 Filesystem and Driver Consulting

----- Original Message -----
From: “Dana Epp”
To: “Windows File Systems Devs Interest List”
Sent: Friday, December 26, 2003 6:54 PM
Subject: [ntfsd] Re: How to debug driver on single machine?

> Hey Don,
>
> > Buy a second machine, trying to do any file system work in a single
machine
> > configuration is idiocy of the highest level. You are way to likely to
> > corrupt your build tree, and the time wasted in boot to run the dev
> > environment, reboot to test cycle will more than pay the cost.
> >
> > Don Burn (MVP, Windows DDK)
> > Windows 2k/XP/2k3 Filesystem and Driver Consulting
>
> I’m sorry but I have to respectfully disagree with this. In the
> traditional sense you are correct (coding and testing on the same
> “session”) but you can VERY easily use one machine and a virtual emulator
> to do this, as some others have pointed out on the list already.
>
> To be honest, I think its pure idiocy to use multiple machines if you are
> doing any heavy work on a machine that you feel may “corrupt” your
> environment. As someone who has had to write a low level encryption driver
> and some security drivers in the past and do his fair bit of corrupting…
> I would NEVER move to a second machine environment until I was comfortable
> and sure most of the kinks were worked out. Having to rebuild your test
> image (be it some networked ghost/mirroring or even an automated raw CD
> install) is such an unproductive task, its not worth the effort. (I should
> admit I saw some neat setup automation tactics from Fargo Nelson over in
> Microsoft’s Windows Kernel Platforms group… but I find even that to be
> very time consuming to roll a new platform out quickly. I want to code,
> not rebuild machines)
>
> About a year ago I got exposed to doing kernelmode development with the
> use of VMWare, and I have never turned back. I even wrote a simple HOWTO
> for using WinDbg with VMWare over a named pipe to emulate a serial over
> at:
>
> http://silverstr.ufies.org/lotr0/windbg-vmware.html
>
> Its kinda dated now… but still works on VMWare 4. The key reason this
> environment works great is you can use real time snapshots of the OS at
> any given moment, and roll back as needed. I have like 10 different
> snapshots of various flavours of Windows in different states. I can
> QUICKLY flip to any given session in a few clicks, and I find it is MUCH
> faster than having to deal with most machine boot up times of a secondary
> test host. Note: If you ever do use VMWare make sure you use SCSI
> drives… the write times are ENORMOUSLY faster when taking snapshots and
> rolling back.
>
> To give you an example where this is useful… I have one snapshot used
> for testing my INF install which has the mouse ready to click on the
> install script. When its revived it immediately starts the installation
> from diskette. I can restart the session over and over again, stepping
> through it at leisure without having to wait for reboots. Its a poor mans
> way of doing the loading and unloading that the new Filter Manager does
> for the older driver framework.
>
> When I was at the latest Driver DevCon at the Microsoft Campus back in
> November I got to talk to the lead for VirtualPC to see how they were
> doing with the virtual debugging. They do have named pipe support… but
> they do NOT have in-session snapshots. That apparently is one of their
> biggest requests and one of the big things they expect to add in the next
> version… which won’t be out for a few years. One cavet of using VMWare
> is that it only has one snapshot per image. (Although rumor has it they
> are looking at doing something like an image diff to allow for multiples).
> This means you have to use multiple images to have different in-session
> snapshots… which is fine by me. I just wrote a quick perl script to
> basically copy the image and rename it with the info I want, and then
> reload it in VMWare as another session as needed.
>
> YMMV of course. And there is NOTHING WRONG with using two machines. But
> using a virtual environment DOES work WELL if you know what you’re
> doing… you might want to consider giving it another look.
>
> —
> Regards,
> Dana M. Epp
> [Blog: http://silverstr.ufies.org/blog/]
>
> —
> Questions? First check the IFS FAQ at
https://www.osronline.com/article.cfm?id=17
>
> You are currently subscribed to ntfsd as: xxxxx@acm.org
> To unsubscribe send a blank email to xxxxx@lists.osr.com

I liked the long and difficult time to restore a test system comment.
The poor man’s method is to use a good backup of the entire physical
drive to a DVD, USB 2.0, or 1394 device. Then when it is corrupted,
restore it quickly from a bootable CD running DOS. To get enough data
space on the bootable CD, just use the 2.88MB image. You can do it even
without having a 2.88MB floppy drive or even the diskettes. I use Total
Commander with one of the add-ons that allows me to create images. I
had to take a 1.44MB floppy’s boot sector and edit its BPB to match
2.88, but it wasn’t hard. I can restore a test system in just a few
minutes.

Another method is to use a second hard drive in a drive tray where you
copy all allocated sectors from the primary to the secondary. Just
reverse the process to restore it and always remove the 2nd hard drive
when testing so it can’t be corrupted. I have used that method for
years before support for USB 2.0 & 1394 became available.

“Don Burn” wrote in message news:xxxxx@ntfsd…
>
> Having had a virtual environment crash badly a few times, I repeat my
IDIOCY
> comment. If you do not isolate your testbed from your dev machine you
are
> likely to corrupt both, and that is pure STUPIDITY ON YOUR PART.
>
> Don Burn (MVP, Windows DDK)
> Windows 2k/XP/2k3 Filesystem and Driver Consulting
>
> ----- Original Message -----
> From: “Dana Epp”
> To: “Windows File Systems Devs Interest List”
> Sent: Friday, December 26, 2003 6:54 PM
> Subject: [ntfsd] Re: How to debug driver on single machine?
>
>
> > Hey Don,
> >
> > > Buy a second machine, trying to do any file system work in a
single
> machine
> > > configuration is idiocy of the highest level. You are way to
likely to
> > > corrupt your build tree, and the time wasted in boot to run the
dev
> > > environment, reboot to test cycle will more than pay the cost.
> > >
> > > Don Burn (MVP, Windows DDK)
> > > Windows 2k/XP/2k3 Filesystem and Driver Consulting
> >
> > I’m sorry but I have to respectfully disagree with this. In the
> > traditional sense you are correct (coding and testing on the same
> > “session”) but you can VERY easily use one machine and a virtual
emulator
> > to do this, as some others have pointed out on the list already.
> >
> > To be honest, I think its pure idiocy to use multiple machines if
you are
> > doing any heavy work on a machine that you feel may “corrupt” your
> > environment. As someone who has had to write a low level encryption
driver
> > and some security drivers in the past and do his fair bit of
corrupting…
> > I would NEVER move to a second machine environment until I was
comfortable
> > and sure most of the kinks were worked out. Having to rebuild your
test
> > image (be it some networked ghost/mirroring or even an automated raw
CD
> > install) is such an unproductive task, its not worth the effort. (I
should
> > admit I saw some neat setup automation tactics from Fargo Nelson
over in
> > Microsoft’s Windows Kernel Platforms group… but I find even that
to be
> > very time consuming to roll a new platform out quickly. I want to
code,
> > not rebuild machines)
> >
> > About a year ago I got exposed to doing kernelmode development with
the
> > use of VMWare, and I have never turned back. I even wrote a simple
HOWTO
> > for using WinDbg with VMWare over a named pipe to emulate a serial
over
> > at:
> >
> > http://silverstr.ufies.org/lotr0/windbg-vmware.html
> >
> > Its kinda dated now… but still works on VMWare 4. The key reason
this
> > environment works great is you can use real time snapshots of the OS
at
> > any given moment, and roll back as needed. I have like 10 different
> > snapshots of various flavours of Windows in different states. I can
> > QUICKLY flip to any given session in a few clicks, and I find it is
MUCH
> > faster than having to deal with most machine boot up times of a
secondary
> > test host. Note: If you ever do use VMWare make sure you use SCSI
> > drives… the write times are ENORMOUSLY faster when taking
snapshots and
> > rolling back.
> >
> > To give you an example where this is useful… I have one snapshot
used
> > for testing my INF install which has the mouse ready to click on the
> > install script. When its revived it immediately starts the
installation
> > from diskette. I can restart the session over and over again,
stepping
> > through it at leisure without having to wait for reboots. Its a poor
mans
> > way of doing the loading and unloading that the new Filter Manager
does
> > for the older driver framework.
> >
> > When I was at the latest Driver DevCon at the Microsoft Campus back
in
> > November I got to talk to the lead for VirtualPC to see how they
were
> > doing with the virtual debugging. They do have named pipe support…
but
> > they do NOT have in-session snapshots. That apparently is one of
their
> > biggest requests and one of the big things they expect to add in the
next
> > version… which won’t be out for a few years. One cavet of using
VMWare
> > is that it only has one snapshot per image. (Although rumor has it
they
> > are looking at doing something like an image diff to allow for
multiples).
> > This means you have to use multiple images to have different
in-session
> > snapshots… which is fine by me. I just wrote a quick perl script
to
> > basically copy the image and rename it with the info I want, and
then
> > reload it in VMWare as another session as needed.
> >
> > YMMV of course. And there is NOTHING WRONG with using two machines.
But
> > using a virtual environment DOES work WELL if you know what you’re
> > doing… you might want to consider giving it another look.
> >
> > —
> > Regards,
> > Dana M. Epp
> > [Blog: http://silverstr.ufies.org/blog/]
> >
> > —
> > Questions? First check the IFS FAQ at
> https://www.osronline.com/article.cfm?id=17
> >
> > You are currently subscribed to ntfsd as: xxxxx@acm.org
> > To unsubscribe send a blank email to xxxxx@lists.osr.com
>
>
>

VMWare RULZ!

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of David J. Craig
Sent: Friday, December 26, 2003 4:55 PM
To: Windows File Systems Devs Interest List
Subject: [ntfsd] Re: How to debug driver on single machine?

I liked the long and difficult time to restore a test system comment.
The poor man’s method is to use a good backup of the entire physical
drive to a DVD, USB 2.0, or 1394 device. Then when it is corrupted,
restore it quickly from a bootable CD running DOS. To get enough data
space on the bootable CD, just use the 2.88MB image. You can do it even
without having a 2.88MB floppy drive or even the diskettes. I use Total
Commander with one of the add-ons that allows me to create images. I
had to take a 1.44MB floppy’s boot sector and edit its BPB to match
2.88, but it wasn’t hard. I can restore a test system in just a few
minutes.

Another method is to use a second hard drive in a drive tray where you
copy all allocated sectors from the primary to the secondary. Just
reverse the process to restore it and always remove the 2nd hard drive
when testing so it can’t be corrupted. I have used that method for
years before support for USB 2.0 & 1394 became available.

“Don Burn” wrote in message news:xxxxx@ntfsd…
>
> Having had a virtual environment crash badly a few times, I repeat my
IDIOCY
> comment. If you do not isolate your testbed from your dev machine you
are
> likely to corrupt both, and that is pure STUPIDITY ON YOUR PART.
>
> Don Burn (MVP, Windows DDK)
> Windows 2k/XP/2k3 Filesystem and Driver Consulting
>
> ----- Original Message -----
> From: “Dana Epp”
> To: “Windows File Systems Devs Interest List”
> Sent: Friday, December 26, 2003 6:54 PM
> Subject: [ntfsd] Re: How to debug driver on single machine?
>
>
> > Hey Don,
> >
> > > Buy a second machine, trying to do any file system work in a
single
> machine
> > > configuration is idiocy of the highest level. You are way to
likely to
> > > corrupt your build tree, and the time wasted in boot to run the
dev
> > > environment, reboot to test cycle will more than pay the cost.
> > >
> > > Don Burn (MVP, Windows DDK)
> > > Windows 2k/XP/2k3 Filesystem and Driver Consulting
> >
> > I’m sorry but I have to respectfully disagree with this. In the
> > traditional sense you are correct (coding and testing on the same
> > “session”) but you can VERY easily use one machine and a virtual
emulator
> > to do this, as some others have pointed out on the list already.
> >
> > To be honest, I think its pure idiocy to use multiple machines if
you are
> > doing any heavy work on a machine that you feel may “corrupt” your
> > environment. As someone who has had to write a low level encryption
driver
> > and some security drivers in the past and do his fair bit of
corrupting…
> > I would NEVER move to a second machine environment until I was
comfortable
> > and sure most of the kinks were worked out. Having to rebuild your
test
> > image (be it some networked ghost/mirroring or even an automated raw
CD
> > install) is such an unproductive task, its not worth the effort. (I
should
> > admit I saw some neat setup automation tactics from Fargo Nelson
over in
> > Microsoft’s Windows Kernel Platforms group… but I find even that
to be
> > very time consuming to roll a new platform out quickly. I want to
code,
> > not rebuild machines)
> >
> > About a year ago I got exposed to doing kernelmode development with
the
> > use of VMWare, and I have never turned back. I even wrote a simple
HOWTO
> > for using WinDbg with VMWare over a named pipe to emulate a serial
over
> > at:
> >
> > http://silverstr.ufies.org/lotr0/windbg-vmware.html
> >
> > Its kinda dated now… but still works on VMWare 4. The key reason
this
> > environment works great is you can use real time snapshots of the OS
at
> > any given moment, and roll back as needed. I have like 10 different
> > snapshots of various flavours of Windows in different states. I can
> > QUICKLY flip to any given session in a few clicks, and I find it is
MUCH
> > faster than having to deal with most machine boot up times of a
secondary
> > test host. Note: If you ever do use VMWare make sure you use SCSI
> > drives… the write times are ENORMOUSLY faster when taking
snapshots and
> > rolling back.
> >
> > To give you an example where this is useful… I have one snapshot
used
> > for testing my INF install which has the mouse ready to click on the
> > install script. When its revived it immediately starts the
installation
> > from diskette. I can restart the session over and over again,
stepping
> > through it at leisure without having to wait for reboots. Its a poor
mans
> > way of doing the loading and unloading that the new Filter Manager
does
> > for the older driver framework.
> >
> > When I was at the latest Driver DevCon at the Microsoft Campus back
in
> > November I got to talk to the lead for VirtualPC to see how they
were
> > doing with the virtual debugging. They do have named pipe support…
but
> > they do NOT have in-session snapshots. That apparently is one of
their
> > biggest requests and one of the big things they expect to add in the
next
> > version… which won’t be out for a few years. One cavet of using
VMWare
> > is that it only has one snapshot per image. (Although rumor has it
they
> > are looking at doing something like an image diff to allow for
multiples).
> > This means you have to use multiple images to have different
in-session
> > snapshots… which is fine by me. I just wrote a quick perl script
to
> > basically copy the image and rename it with the info I want, and
then
> > reload it in VMWare as another session as needed.
> >
> > YMMV of course. And there is NOTHING WRONG with using two machines.
But
> > using a virtual environment DOES work WELL if you know what you’re
> > doing… you might want to consider giving it another look.
> >
> > —
> > Regards,
> > Dana M. Epp
> > [Blog: http://silverstr.ufies.org/blog/]
> >
> > —
> > Questions? First check the IFS FAQ at
> https://www.osronline.com/article.cfm?id=17
> >
> > You are currently subscribed to ntfsd as: xxxxx@acm.org
> > To unsubscribe send a blank email to
xxxxx@lists.osr.com
>
>
>


Questions? First check the IFS FAQ at
https://www.osronline.com/article.cfm?id=17

You are currently subscribed to ntfsd as: xxxxx@storagecraft.com
To unsubscribe send a blank email to xxxxx@lists.osr.com

Preach on brother. VM technology is creating a revolution in how many
companies view their computing resources because it severs the ties
between a given installation of an OS image and the hardware it was
installed upon. Why should an OS not be able to flow seamlessly on top
of a landscape of virtualized computing resources?



Microsoft frankly missed the boat on this one and is facing several
years of catch-up with VirtualPC and Virtual Server, along with concerns
about its willingness to support virtualization of competing products
that it will never be able to allay. Whatever lip service Microsoft may
pay to its willingness to support independent ISVs, it has never yet
seen a successful software product that it didn’t think it couldn’t
develop and market better in-house, while using any means necessary to
do so. Why should Microsoft not develop all software in the world if
they’re so good at it?

I honestly believe there is a fighting chance that they ARE good enough
at it that the quality of the world’s software would see an overall
dramatic improvement if this was to happen - for a short while. In the
end the inertia that overtakes all monopolies eventually will consume
Microsoft, and the world will miss out on 15-20 years of software
innovations that could have happened but didn’t. I am not optimistic
that Bill Gates has the maturity to appreciate an argument like this,
but maybe as he nears retirement he will begin to see (not just THINK)
with greater wisdom.

In the meantime, I will continue to appreciate the abilities of and work
happily with those at Microsoft trusted with the coding and support of
their products. My only advice to you is to try to do whatever you can
to get your senior leadership to see the light and make decisions that
will be advantageous to the software community as a whole in the
long-term, not just for Microsoft in the short-term.

Jamey Kirby wrote:

> VMWare RULZ!
>
> -----Original Message-----
> From: xxxxx@lists.osr.com
> [mailto:xxxxx@lists.osr.com] On Behalf Of David J. Craig
> Sent: Friday, December 26, 2003 4:55 PM
> To: Windows File Systems Devs Interest List
> Subject: [ntfsd] Re: How to debug driver on single machine?
>
> I liked the long and difficult time to restore a test system comment.
> The poor man’s method is to use a good backup of the entire physical
> drive to a DVD, USB 2.0, or 1394 device. Then when it is corrupted,
> restore it quickly from a bootable CD running DOS. To get enough data
> space on the bootable CD, just use the 2.88MB image. You can do it even
> without having a 2.88MB floppy drive or even the diskettes. I use Total
> Commander with one of the add-ons that allows me to create images. I
> had to take a 1.44MB floppy’s boot sector and edit its BPB to match
> 2.88, but it wasn’t hard. I can restore a test system in just a few
> minutes.
>
> Another method is to use a second hard drive in a drive tray where you
> copy all allocated sectors from the primary to the secondary. Just
> reverse the process to restore it and always remove the 2nd hard drive
> when testing so it can’t be corrupted. I have used that method for
> years before support for USB 2.0 & 1394 became available.
>
> “Don Burn” wrote in message news:xxxxx@ntfsd…
>
>>Having had a virtual environment crash badly a few times, I repeat my
>
> IDIOCY
>
>>comment. If you do not isolate your testbed from your dev machine you
>
> are
>
>>likely to corrupt both, and that is pure STUPIDITY ON YOUR PART.
>>
>>Don Burn (MVP, Windows DDK)
>>Windows 2k/XP/2k3 Filesystem and Driver Consulting
>>
>>----- Original Message -----
>>From: “Dana Epp”
>>To: “Windows File Systems Devs Interest List”
>>Sent: Friday, December 26, 2003 6:54 PM
>>Subject: [ntfsd] Re: How to debug driver on single machine?
>>
>>
>>
>>>Hey Don,
>>>
>>>
>>>>Buy a second machine, trying to do any file system work in a
>
> single
>
>>machine
>>
>>>>configuration is idiocy of the highest level. You are way to
>
> likely to
>
>>>>corrupt your build tree, and the time wasted in boot to run the
>
> dev
>
>>>>environment, reboot to test cycle will more than pay the cost.
>>>>
>>>>Don Burn (MVP, Windows DDK)
>>>>Windows 2k/XP/2k3 Filesystem and Driver Consulting
>>>
>>>I’m sorry but I have to respectfully disagree with this. In the
>>>traditional sense you are correct (coding and testing on the same
>>>“session”) but you can VERY easily use one machine and a virtual
>
> emulator
>
>>>to do this, as some others have pointed out on the list already.
>>>
>>>To be honest, I think its pure idiocy to use multiple machines if
>
> you are
>
>>>doing any heavy work on a machine that you feel may “corrupt” your
>>>environment. As someone who has had to write a low level encryption
>
> driver
>
>>>and some security drivers in the past and do his fair bit of
>
> corrupting…
>
>>>I would NEVER move to a second machine environment until I was
>
> comfortable
>
>>>and sure most of the kinks were worked out. Having to rebuild your
>
> test
>
>>>image (be it some networked ghost/mirroring or even an automated raw
>
> CD
>
>>>install) is such an unproductive task, its not worth the effort. (I
>
> should
>
>>>admit I saw some neat setup automation tactics from Fargo Nelson
>
> over in
>
>>>Microsoft’s Windows Kernel Platforms group… but I find even that
>
> to be
>
>>>very time consuming to roll a new platform out quickly. I want to
>
> code,
>
>>>not rebuild machines)
>>>
>>>About a year ago I got exposed to doing kernelmode development with
>
> the
>
>>>use of VMWare, and I have never turned back. I even wrote a simple
>
> HOWTO
>
>>>for using WinDbg with VMWare over a named pipe to emulate a serial
>
> over
>
>>>at:
>>>
>>>http://silverstr.ufies.org/lotr0/windbg-vmware.html
>>>
>>>Its kinda dated now… but still works on VMWare 4. The key reason
>
> this
>
>>>environment works great is you can use real time snapshots of the OS
>
> at
>
>>>any given moment, and roll back as needed. I have like 10 different
>>>snapshots of various flavours of Windows in different states. I can
>>>QUICKLY flip to any given session in a few clicks, and I find it is
>
> MUCH
>
>>>faster than having to deal with most machine boot up times of a
>
> secondary
>
>>>test host. Note: If you ever do use VMWare make sure you use SCSI
>>>drives… the write times are ENORMOUSLY faster when taking
>
> snapshots and
>
>>>rolling back.
>>>
>>>To give you an example where this is useful… I have one snapshot
>
> used
>
>>>for testing my INF install which has the mouse ready to click on the
>>>install script. When its revived it immediately starts the
>
> installation
>
>>>from diskette. I can restart the session over and over again,
>
> stepping
>
>>>through it at leisure without having to wait for reboots. Its a poor
>
> mans
>
>>>way of doing the loading and unloading that the new Filter Manager
>
> does
>
>>>for the older driver framework.
>>>
>>>When I was at the latest Driver DevCon at the Microsoft Campus back
>
> in
>
>>>November I got to talk to the lead for VirtualPC to see how they
>
> were
>
>>>doing with the virtual debugging. They do have named pipe support…
>
> but
>
>>>they do NOT have in-session snapshots. That apparently is one of
>
> their
>
>>>biggest requests and one of the big things they expect to add in the
>
> next
>
>>>version… which won’t be out for a few years. One cavet of using
>
> VMWare
>
>>>is that it only has one snapshot per image. (Although rumor has it
>
> they
>
>>>are looking at doing something like an image diff to allow for
>
> multiples).
>
>>>This means you have to use multiple images to have different
>
> in-session
>
>>>snapshots… which is fine by me. I just wrote a quick perl script
>
> to
>
>>>basically copy the image and rename it with the info I want, and
>
> then
>
>>>reload it in VMWare as another session as needed.
>>>
>>>YMMV of course. And there is NOTHING WRONG with using two machines.
>
> But
>
>>>using a virtual environment DOES work WELL if you know what you’re
>>>doing… you might want to consider giving it another look.
>>>
>>>—
>>>Regards,
>>>Dana M. Epp
>>>[Blog: http://silverstr.ufies.org/blog/]
>>>
>>>—
>>>Questions? First check the IFS FAQ at
>>
>>https://www.osronline.com/article.cfm?id=17
>>
>>>You are currently subscribed to ntfsd as: xxxxx@acm.org
>>>To unsubscribe send a blank email to
>
> xxxxx@lists.osr.com
>
>>
>>
>
>
>
> —
> Questions? First check the IFS FAQ at
> https://www.osronline.com/article.cfm?id=17
>
> You are currently subscribed to ntfsd as: xxxxx@storagecraft.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com
>
>
>


Nick Ryan (MVP for DDK)

This is exactly what EFI is supposed to do at the BIOS level; BIOS
drivers create the abstraction to the OS. No more specialized OS drivers
for each new video card or SCSI controller. I suspect Microsoft is
banking on EFI for the future or the OS HAL.

With EFI, products like VMWare will also be more robust.

Let’s hope EMC does not screw the pooch.

I am too hung over to pontificate :slight_smile:

Jamey

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Nick Ryan
Sent: Saturday, December 27, 2003 9:40 PM
To: Windows File Systems Devs Interest List
Subject: [ntfsd] Re: How to debug driver on single machine?

Preach on brother. VM technology is creating a revolution in how many
companies view their computing resources because it severs the ties
between a given installation of an OS image and the hardware it was
installed upon. Why should an OS not be able to flow seamlessly on top
of a landscape of virtualized computing resources?



Microsoft frankly missed the boat on this one and is facing several
years of catch-up with VirtualPC and Virtual Server, along with concerns

about its willingness to support virtualization of competing products
that it will never be able to allay. Whatever lip service Microsoft may
pay to its willingness to support independent ISVs, it has never yet
seen a successful software product that it didn’t think it couldn’t
develop and market better in-house, while using any means necessary to
do so. Why should Microsoft not develop all software in the world if
they’re so good at it?

I honestly believe there is a fighting chance that they ARE good enough
at it that the quality of the world’s software would see an overall
dramatic improvement if this was to happen - for a short while. In the
end the inertia that overtakes all monopolies eventually will consume
Microsoft, and the world will miss out on 15-20 years of software
innovations that could have happened but didn’t. I am not optimistic
that Bill Gates has the maturity to appreciate an argument like this,
but maybe as he nears retirement he will begin to see (not just THINK)
with greater wisdom.

In the meantime, I will continue to appreciate the abilities of and work

happily with those at Microsoft trusted with the coding and support of
their products. My only advice to you is to try to do whatever you can
to get your senior leadership to see the light and make decisions that
will be advantageous to the software community as a whole in the
long-term, not just for Microsoft in the short-term.

Jamey Kirby wrote:

> VMWare RULZ!
>
> -----Original Message-----
> From: xxxxx@lists.osr.com
> [mailto:xxxxx@lists.osr.com] On Behalf Of David J. Craig
> Sent: Friday, December 26, 2003 4:55 PM
> To: Windows File Systems Devs Interest List
> Subject: [ntfsd] Re: How to debug driver on single machine?
>
> I liked the long and difficult time to restore a test system comment.
> The poor man’s method is to use a good backup of the entire physical
> drive to a DVD, USB 2.0, or 1394 device. Then when it is corrupted,
> restore it quickly from a bootable CD running DOS. To get enough data
> space on the bootable CD, just use the 2.88MB image. You can do it
even
> without having a 2.88MB floppy drive or even the diskettes. I use
Total
> Commander with one of the add-ons that allows me to create images. I
> had to take a 1.44MB floppy’s boot sector and edit its BPB to match
> 2.88, but it wasn’t hard. I can restore a test system in just a few
> minutes.
>
> Another method is to use a second hard drive in a drive tray where you
> copy all allocated sectors from the primary to the secondary. Just
> reverse the process to restore it and always remove the 2nd hard drive
> when testing so it can’t be corrupted. I have used that method for
> years before support for USB 2.0 & 1394 became available.
>
> “Don Burn” wrote in message news:xxxxx@ntfsd…
>
>>Having had a virtual environment crash badly a few times, I repeat my
>
> IDIOCY
>
>>comment. If you do not isolate your testbed from your dev machine you
>
> are
>
>>likely to corrupt both, and that is pure STUPIDITY ON YOUR PART.
>>
>>Don Burn (MVP, Windows DDK)
>>Windows 2k/XP/2k3 Filesystem and Driver Consulting
>>
>>----- Original Message -----
>>From: “Dana Epp”
>>To: “Windows File Systems Devs Interest List”
>>Sent: Friday, December 26, 2003 6:54 PM
>>Subject: [ntfsd] Re: How to debug driver on single machine?
>>
>>
>>
>>>Hey Don,
>>>
>>>
>>>>Buy a second machine, trying to do any file system work in a
>
> single
>
>>machine
>>
>>>>configuration is idiocy of the highest level. You are way to
>
> likely to
>
>>>>corrupt your build tree, and the time wasted in boot to run the
>
> dev
>
>>>>environment, reboot to test cycle will more than pay the cost.
>>>>
>>>>Don Burn (MVP, Windows DDK)
>>>>Windows 2k/XP/2k3 Filesystem and Driver Consulting
>>>
>>>I’m sorry but I have to respectfully disagree with this. In the
>>>traditional sense you are correct (coding and testing on the same
>>>“session”) but you can VERY easily use one machine and a virtual
>
> emulator
>
>>>to do this, as some others have pointed out on the list already.
>>>
>>>To be honest, I think its pure idiocy to use multiple machines if
>
> you are
>
>>>doing any heavy work on a machine that you feel may “corrupt” your
>>>environment. As someone who has had to write a low level encryption
>
> driver
>
>>>and some security drivers in the past and do his fair bit of
>
> corrupting…
>
>>>I would NEVER move to a second machine environment until I was
>
> comfortable
>
>>>and sure most of the kinks were worked out. Having to rebuild your
>
> test
>
>>>image (be it some networked ghost/mirroring or even an automated raw
>
> CD
>
>>>install) is such an unproductive task, its not worth the effort. (I
>
> should
>
>>>admit I saw some neat setup automation tactics from Fargo Nelson
>
> over in
>
>>>Microsoft’s Windows Kernel Platforms group… but I find even that
>
> to be
>
>>>very time consuming to roll a new platform out quickly. I want to
>
> code,
>
>>>not rebuild machines)
>>>
>>>About a year ago I got exposed to doing kernelmode development with
>
> the
>
>>>use of VMWare, and I have never turned back. I even wrote a simple
>
> HOWTO
>
>>>for using WinDbg with VMWare over a named pipe to emulate a serial
>
> over
>
>>>at:
>>>
>>>http://silverstr.ufies.org/lotr0/windbg-vmware.html
>>>
>>>Its kinda dated now… but still works on VMWare 4. The key reason
>
> this
>
>>>environment works great is you can use real time snapshots of the OS
>
> at
>
>>>any given moment, and roll back as needed. I have like 10 different
>>>snapshots of various flavours of Windows in different states. I can
>>>QUICKLY flip to any given session in a few clicks, and I find it is
>
> MUCH
>
>>>faster than having to deal with most machine boot up times of a
>
> secondary
>
>>>test host. Note: If you ever do use VMWare make sure you use SCSI
>>>drives… the write times are ENORMOUSLY faster when taking
>
> snapshots and
>
>>>rolling back.
>>>
>>>To give you an example where this is useful… I have one snapshot
>
> used
>
>>>for testing my INF install which has the mouse ready to click on the
>>>install script. When its revived it immediately starts the
>
> installation
>
>>>from diskette. I can restart the session over and over again,
>
> stepping
>
>>>through it at leisure without having to wait for reboots. Its a poor
>
> mans
>
>>>way of doing the loading and unloading that the new Filter Manager
>
> does
>
>>>for the older driver framework.
>>>
>>>When I was at the latest Driver DevCon at the Microsoft Campus back
>
> in
>
>>>November I got to talk to the lead for VirtualPC to see how they
>
> were
>
>>>doing with the virtual debugging. They do have named pipe support…
>
> but
>
>>>they do NOT have in-session snapshots. That apparently is one of
>
> their
>
>>>biggest requests and one of the big things they expect to add in the
>
> next
>
>>>version… which won’t be out for a few years. One cavet of using
>
> VMWare
>
>>>is that it only has one snapshot per image. (Although rumor has it
>
> they
>
>>>are looking at doing something like an image diff to allow for
>
> multiples).
>
>>>This means you have to use multiple images to have different
>
> in-session
>
>>>snapshots… which is fine by me. I just wrote a quick perl script
>
> to
>
>>>basically copy the image and rename it with the info I want, and
>
> then
>
>>>reload it in VMWare as another session as needed.
>>>
>>>YMMV of course. And there is NOTHING WRONG with using two machines.
>
> But
>
>>>using a virtual environment DOES work WELL if you know what you’re
>>>doing… you might want to consider giving it another look.
>>>
>>>—
>>>Regards,
>>>Dana M. Epp
>>>[Blog: http://silverstr.ufies.org/blog/]
>>>
>>>—
>>>Questions? First check the IFS FAQ at
>>
>>https://www.osronline.com/article.cfm?id=17
>>
>>>You are currently subscribed to ntfsd as: xxxxx@acm.org
>>>To unsubscribe send a blank email to
>
> xxxxx@lists.osr.com
>
>>
>>
>
>
>
> —
> Questions? First check the IFS FAQ at
> https://www.osronline.com/article.cfm?id=17
>
> You are currently subscribed to ntfsd as: xxxxx@storagecraft.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com
>
>
>


Nick Ryan (MVP for DDK)


Questions? First check the IFS FAQ at
https://www.osronline.com/article.cfm?id=17

You are currently subscribed to ntfsd as: xxxxx@storagecraft.com
To unsubscribe send a blank email to xxxxx@lists.osr.com

I haven’t developed for EFI but folks I know who do consider it the worst
piece of dog shit Intel ever invented (considering they also did Itanium
this is pretty bad). I do know that an EFI system can’t seem to get out of
its way on a boot. Hopefully, EFI will remain Itanium only and the two bad
ideas can die together.

Don Burn (MVP, Windows DDK)
Windows 2k/XP/2k3 Filesystem and Driver Consulting
Remove StopSpam from the email to reply

----- Original Message -----
From: “Jamey Kirby”
To: “Windows File Systems Devs Interest List”
Sent: Sunday, December 28, 2003 6:58 PM
Subject: [ntfsd] Re: How to debug driver on single machine?

> This is exactly what EFI is supposed to do at the BIOS level; BIOS
> drivers create the abstraction to the OS. No more specialized OS drivers
> for each new video card or SCSI controller. I suspect Microsoft is
> banking on EFI for the future or the OS HAL.
>
> With EFI, products like VMWare will also be more robust.
>
> Let’s hope EMC does not screw the pooch.
>
> I am too hung over to pontificate :slight_smile:
>
> Jamey
>

Hi All,

Thanks for your reply.

rgds
GP.

Use SoftIce

Jamey Kirby, Windows DDK MVP
StorageCraft Inc.
xxxxx@storagecraft.com
http://www.storagecraft.com

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of GnanaPrakash.R
Sent: Tuesday, December 30, 2003 1:21 AM
To: Windows File Systems Devs Interest List
Subject: Re: [ntfsd] Re: How to debug driver on single machine?

Hi All,

Thanks for your reply.

rgds
GP.


Questions? First check the IFS FAQ at
https://www.osronline.com/article.cfm?id=17

You are currently subscribed to ntfsd as: xxxxx@storagecraft.com
To unsubscribe send a blank email to xxxxx@lists.osr.com

Just a mention…
While it’s hard to pinpoint any “tweaky” bugs this way, you can just use the
crash dump and non active WinDBG.
That’s how I found out that EXACTLY 4 FS filters would cause a crash on Windows
2000/2003 at startup. I didn’t find out why, just how to fix it:-)

From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of GnanaPrakash.R
Sent: Tuesday, December 30, 2003 1:21 AM
To: Windows File Systems Devs Interest List
Subject: Re: [ntfsd] Re: How to debug driver on single machine?

Hi All,

Thanks for your reply.


Kind regards, Dejan M. MVP for DDK
http://www.alfasp.com E-mail: xxxxx@alfasp.com
Alfa Transparent File Encryptor - Transparent file encryption services.
Alfa File Protector - File protection and hiding library for Win32 developers.
Alfa File Monitor - File monitoring library for Win32 developers.

Well, seeing the discussion, back to the original question.
I have experienced similar problems with SoftIce 2.7 and Service Pack
4 for Win2000. This required an upgrade, which was also available
on compuware.com.

I don’t know how on XP, but there are upgrades for newer OSes too.

L.