Windows Vista Tips

Windows Vista Tips > Newsgroups > Windows Vista Drivers > Re: Disk drive order

Reply
Fix Vista Errors
Thread Tools Display Modes

Re: Disk drive order

 
 
Maxim S. Shatskih
Guest
Posts: n/a

 
      11-30-2009



> How to make my disk driver appear as C: (Its a virtual boot drive)

Please tell us more details about "virtual boot drive". Are you making something like Win7's boot from .vhd file?

Drive letters are persistent, and not assigned on each boot based on init order.

Drive letters are assigned based on the MountedDevices registry and the disk's MBR signature.

--
Maxim S. Shatskih
Windows DDK MVP

http://www.storagecraft.com

 
Reply With Quote
 
Ivan Brugiolo [MSFT]
Guest
Posts: n/a

 
      12-01-2009
Maybe the original poster is trying to make a disk-less machine
booting from a network-backed disk, such as an iSCSI target or the such.


--
This posting is provided "AS IS" with no warranties, and confers no rights.
Use of any included script samples are subject to the terms specified at
http://www.microsoft.com/info/cpyright.htm


"Maxim S. Shatskih" <> wrote in message
news:##...
>> How to make my disk driver appear as C: (Its a virtual boot drive)

>
> Please tell us more details about "virtual boot drive". Are you making
> something like Win7's boot from .vhd file?
>
> Drive letters are persistent, and not assigned on each boot based on init
> order.
>
> Drive letters are assigned based on the MountedDevices registry and the
> disk's MBR signature.
>
> --
> Maxim S. Shatskih
> Windows DDK MVP
>
> http://www.storagecraft.com
>

 
Reply With Quote
 
Maxim S. Shatskih
Guest
Posts: n/a

 
      12-01-2009
>secondary store.. but windows keep trying to boot from the hard disk
>when it reach the protected mode.


What Windows version?

What is the BIOS (int 13h) number of your disk?

--
Maxim S. Shatskih
Windows DDK MVP

http://www.storagecraft.com

 
Reply With Quote
 
m
Guest
Posts: n/a

 
      12-02-2009
Support for this is BIOS dependent. The HBA must present itself as a boot
device and your BIOS must be configured to boot from that device. After the
boot device is chosen, there is little else that you need to do to support
this paradigm

"Guilherme Moro" <> wrote in message
news:0d331579-1637-4c2e-abc9-...
> exactly !
> Is a network-backed disk, not iSCSI, but very similar .. so when
> booting from the network I need Windows to see the physical disk as a
> secondary store.. but windows keep trying to boot from the hard disk
> when it reach the protected mode.
>
> Guilherme Moro
>
> On Nov 30, 10:48 pm, "Ivan Brugiolo [MSFT]"
> <ivanb...@online.microsoft.com> wrote:
>> Maybe the original poster is trying to make a disk-less machine
>> booting from a network-backed disk, such as an iSCSI target or the such.
>>
>> --
>> This posting is provided "AS IS" with no warranties, and confers no
>> rights.
>> Use of any included script samples are subject to the terms specified
>> athttp://www.microsoft.com/info/cpyright.htm
>>
>> "Maxim S. Shatskih" <ma...@storagecraft.com.no.spam> wrote in
>> messagenews:##. ..
>>
>> >> How to make my disk driver appear as C: (Its a virtual boot drive)

>>
>> > Please tell us more details about "virtual boot drive". Are you making
>> > something like Win7's boot from .vhd file?

>>
>> > Drive letters are persistent, and not assigned on each boot based on
>> > init
>> > order.

>>
>> > Drive letters are assigned based on the MountedDevices registry and the
>> > disk's MBR signature.

>>
>> > --
>> > Maxim S. Shatskih
>> > Windows DDK MVP
>> > ma...@storagecraft.com
>> >http://www.storagecraft.com

>>
>>

>

 
Reply With Quote
 
Maxim S. Shatskih
Guest
Posts: n/a

 
      12-02-2009
> Support for this is BIOS dependent. The HBA must present itself as a boot
> device and your BIOS must be configured to boot from that device.


Also note that pre-Vista uses boot.ini, which must a) reside on the initial BIOS's boot disk b) the boot.ini entry uses the BIOS (int 13h) disk number. The OP must ensure that this number is correct.

Vista+ use BCD database, which keeps the mountdev IDs of the disk volumes instead (for non-Dynamic disk volume, mountdev ID is 4byte MBR signature + 8 byte StartingOffset of the partition).

"bcdedit" show these volume references as drive letters, but they are kept in \boot\bcd as mountdev IDs.

In this latter case, the BIOS disk numbering is not important. What is important is that a) the correct boot disk is known to BIOS, probably to the extension BIOS on the controller itself b) the driver for its controller is installed to Windows OS which will be booted. That's all for Vista+.

--
Maxim S. Shatskih
Windows DDK MVP

http://www.storagecraft.com

 
Reply With Quote
 
Don Burn
Guest
Posts: n/a

 
      12-02-2009
The only way I know of to make this enumerate early enough is to have the
BIOS (such as ACPI) enumerate the device and have your INF file it tied to
that BIOS entry.


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




"Guilherme Moro" <> wrote in message
news:c2f7c6ec-c3f2-4583-8e98-...
My drive is configured as the first disk in the bios ( int 13h ).
I save a table in memory for the windows driver(in protected mode), so
it reads this table when it starts, this table contains some
information of the net boot, and the Windows driver continues the boot
process.
But for now I can only boot if I disconnect the physical disk.

I was looking around and found some iSCSI and AoE drivers that can
boot with the disk connected, as I wanted. I had take a look at winaoe
(winaoe.org) code, but can find where exactly it tells windows who is
the first disk (perhaps it wont tell).
But anyway winaoe needs to boot the machine 1 time with the physical
disk disconnected for the subsequent boots to work correctly.

Anyway I can force windows to look at my disk as the first disk ?
Perhaps messing with the registry? Or maybe is there a way to make my
driver init before the physical disk enumeration?

many thanks

Guilherme


On Dec 2, 1:40 am, "Maxim S. Shatskih"
<ma...@storagecraft.com.no.spam> wrote:
> > Support for this is BIOS dependent. The HBA must present itself as a
> > boot
> > device and your BIOS must be configured to boot from that device.

>
> Also note that pre-Vista uses boot.ini, which must a) reside on the
> initial BIOS's boot disk b) the boot.ini entry uses the BIOS (int 13h)
> disk number. The OP must ensure that this number is correct.
>
> Vista+ use BCD database, which keeps the mountdev IDs of the disk volumes
> instead (for non-Dynamic disk volume, mountdev ID is 4byte MBR signature +
> 8 byte StartingOffset of the partition).
>
> "bcdedit" show these volume references as drive letters, but they are kept
> in \boot\bcd as mountdev IDs.
>
> In this latter case, the BIOS disk numbering is not important. What is
> important is that a) the correct boot disk is known to BIOS, probably to
> the extension BIOS on the controller itself b) the driver for its
> controller is installed to Windows OS which will be booted. That's all for
> Vista+.
>
> --
> Maxim S. Shatskih
> Windows DDK MVP
> ma...@storagecraft.comhttp://www.storagecraft.com



__________ Information from ESET NOD32 Antivirus, version of virus signature
database 4655 (20091202) __________

The message was checked by ESET NOD32 Antivirus.

http://www.eset.com





__________ Information from ESET NOD32 Antivirus, version of virus signature database 4655 (20091202) __________

The message was checked by ESET NOD32 Antivirus.

http://www.eset.com




 
Reply With Quote
 
Maxim S. Shatskih
Guest
Posts: n/a

 
      12-02-2009
>But for now I can only boot if I disconnect the physical disk.

What Windows version?

--
Maxim S. Shatskih
Windows DDK MVP

http://www.storagecraft.com

 
Reply With Quote
 
Maxim S. Shatskih
Guest
Posts: n/a

 
      12-02-2009
>Perhaps messing with the registry? Or maybe is there a way to make my
>driver init before the physical disk enumeration?


I think init order was only important in NT4 timeframe. For now, it is only important to have the driver - and all dependent drivers - being Boot start type.

At what time the boot stops? what is the MountedDevices registry on your Windows installation? does it match your disk's MBR signature?

--
Maxim S. Shatskih
Windows DDK MVP

http://www.storagecraft.com

 
Reply With Quote
 
Maxim S. Shatskih
Guest
Posts: n/a

 
      12-03-2009
>perhaps MountedDevices is not the only place to dig around.

Correct, the BOOT.INI entry must contain a valid proper BIOS disk number.

Maybe it is wrong, and BOOT.INI entry contains the BIOS disk number of a physical disk.

--
Maxim S. Shatskih
Windows DDK MVP

http://www.storagecraft.com

 
Reply With Quote
 
Don Burn
Guest
Posts: n/a

 
      12-03-2009
Changing the MBR of a device you don't own will get you branded as MALWARE.
Even the iSCSI stuff requires BIOS changes to support it, so get a clue you
need to modify the BIOS or forget this rat's nest.


--
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



"Guilherme Moro" <> wrote in message
news:96ed925f-db29-47e9-a3d3-...
This driver must support windows 2k, XP, vista and 7 .. and the
respective server versions...

But I can do one different method to support which one, this tests is
running in a win XP SP2 machine...

Following some ideas that came from your emails, I tried to change the
MBR diskID( position 01B8h of MBR) and deleted the registry keys from
MountedDevices and then boot the machine with the physical drive
disconnected, and then reconnect at the next boot, this works,
somewhat, my drive is now C: in MountedDevices , but Windows look
somewhere else to define where to pick up his files, and with the
original disk (from where come the net image) attached I got a strange
error (access violation in svchost) and I can see that windows is now
picking the files from E: ( phy disk).
If I connect a different disk, with nothing inside, I got a
unmountable boot device BSOD.

perhaps MountedDevices is not the only place to dig around.

I got a iSCSI driver (proprietary, no sources) , that make a lot of
changes in the ServiceGroupOrder key in the registry, and rearrange
the List subkey, is there a chance of this change make my drive to be
enumerated correct?

Many thanks.


Guilherme

On Dec 2, 5:53 pm, "Maxim S. Shatskih"
<ma...@storagecraft.com.no.spam> wrote:
> >But for now I can only boot if I disconnect the physical disk.

>
> What Windows version?
>
> --
> Maxim S. Shatskih
> Windows DDK MVP
> ma...@storagecraft.comhttp://www.storagecraft.com



__________ Information from ESET NOD32 Antivirus, version of virus signature
database 4658 (20091203) __________

The message was checked by ESET NOD32 Antivirus.

http://www.eset.com





__________ Information from ESET NOD32 Antivirus, version of virus signature database 4658 (20091203) __________

The message was checked by ESET NOD32 Antivirus.

http://www.eset.com




 
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Windows Vista and Hard drive recognition. 1maintenance Windows Vista Hardware 5 01-20-2008 02:52 PM
installing vista on a computer with no OS jpotts818 Windows Vista Installation 24 09-28-2007 06:58 AM
Active or logical partition Paul Windows Vista Installation 12 09-07-2007 04:04 AM
Low on Disk Space Barbara Windows Vista File Management 17 04-19-2007 10:22 PM
How to make system boot drive (removing dualboot setup) Rich Windows Vista Hardware 4 03-13-2007 07:20 PM



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59