PC Review


Reply
Thread Tools Rate Thread

Boot from SCSI drive: Driver?

 
 
DWalker
Guest
Posts: n/a
 
      21st May 2007
If a SCSI or a SATA driver is required to read data from a SCSI or SATA
disk that is the boot disk (and the C drive), where is this driver
stored... and how does Windows know enough to read the SCSI or SATA disk in
order to read the code from this driver file?

It seems that Windows would need the driver code loaded before it can read
the driver code off of the disk, which is a catch-22.

Does the same apply to the NTBOOTDD.SYS file (or is this just the SCSI
version of the driver file)? If NTBOOTDD.SYS is required on the C drive of
a SCSI drive, and it contains the code to read the SCSI drive, how does a
Windows system load this SYS file?

My system has a SATA drive as the C drive, and I don't have an NTBOOTDD.SYS
file in the root of C (and I can see hidden and system files). I also
don't see the SATA driver anywhere, but it's probably buried in System32 or
somewhere like that.

Still, I am confused how Windows can read a disk to get a driver that it
needs to have in order to read the disk.


David
 
Reply With Quote
 
 
 
 
Jerry
Guest
Posts: n/a
 
      21st May 2007
Usually, the necessary driver for the SATA drive is installed during the
installtion of Windows itself, when the user is asked/required to press F6
and have the floppy in the floppy drive from which the Windows install
routine reads the floppy and installs the drives. This is how Windows knows
about and loads the driver when it starts.

"DWalker" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> If a SCSI or a SATA driver is required to read data from a SCSI or SATA
> disk that is the boot disk (and the C drive), where is this driver
> stored... and how does Windows know enough to read the SCSI or SATA disk
> in
> order to read the code from this driver file?
>
> It seems that Windows would need the driver code loaded before it can read
> the driver code off of the disk, which is a catch-22.
>
> Does the same apply to the NTBOOTDD.SYS file (or is this just the SCSI
> version of the driver file)? If NTBOOTDD.SYS is required on the C drive
> of
> a SCSI drive, and it contains the code to read the SCSI drive, how does a
> Windows system load this SYS file?
>
> My system has a SATA drive as the C drive, and I don't have an
> NTBOOTDD.SYS
> file in the root of C (and I can see hidden and system files). I also
> don't see the SATA driver anywhere, but it's probably buried in System32
> or
> somewhere like that.
>
> Still, I am confused how Windows can read a disk to get a driver that it
> needs to have in order to read the disk.
>
>
> David



 
Reply With Quote
 
DWalker
Guest
Posts: n/a
 
      21st May 2007
All of Windows resides on the disk; none of it resides in the
motherboard or anywhere in the ether, as far as I know.

Windows has to load the driver OFF OF the disk that contains the DLL or
SYS file *for the driver itself*. If Windows can read the SATA or SCSI
disk to GET the driver, why does Windows need the driver?

Can you see what I'm asking? If the SATA or SCSI disk is the only disk
in the system, then Windows couldn't read THAT DISK to read the driver,
even if that driver was available when Windows was installed (with the
F6 option).


David Walker



"Jerry" <(E-Mail Removed)> wrote in
news:e70Z86#(E-Mail Removed):

> Usually, the necessary driver for the SATA drive is installed during
> the installtion of Windows itself, when the user is asked/required to
> press F6 and have the floppy in the floppy drive from which the
> Windows install routine reads the floppy and installs the drives. This
> is how Windows knows about and loads the driver when it starts.
>
> "DWalker" <(E-Mail Removed)> wrote in message
> news:(E-Mail Removed)...
>> If a SCSI or a SATA driver is required to read data from a SCSI or
>> SATA disk that is the boot disk (and the C drive), where is this
>> driver stored... and how does Windows know enough to read the SCSI or
>> SATA disk in
>> order to read the code from this driver file?
>>
>> It seems that Windows would need the driver code loaded before it can
>> read the driver code off of the disk, which is a catch-22.
>>
>> Does the same apply to the NTBOOTDD.SYS file (or is this just the
>> SCSI version of the driver file)? If NTBOOTDD.SYS is required on the
>> C drive of
>> a SCSI drive, and it contains the code to read the SCSI drive, how
>> does a Windows system load this SYS file?
>>
>> My system has a SATA drive as the C drive, and I don't have an
>> NTBOOTDD.SYS
>> file in the root of C (and I can see hidden and system files). I
>> also don't see the SATA driver anywhere, but it's probably buried in
>> System32 or
>> somewhere like that.
>>
>> Still, I am confused how Windows can read a disk to get a driver that
>> it needs to have in order to read the disk.
>>
>>
>> David

>
>
>



 
Reply With Quote
 
Jim
Guest
Posts: n/a
 
      21st May 2007

"DWalker" <(E-Mail Removed)> wrote in message
news:uI%23c4Y$(E-Mail Removed)...
> All of Windows resides on the disk; none of it resides in the
> motherboard or anywhere in the ether, as far as I know.
>
> Windows has to load the driver OFF OF the disk that contains the DLL or
> SYS file *for the driver itself*. If Windows can read the SATA or SCSI
> disk to GET the driver, why does Windows need the driver?
>
> Can you see what I'm asking? If the SATA or SCSI disk is the only disk
> in the system, then Windows couldn't read THAT DISK to read the driver,
> even if that driver was available when Windows was installed (with the
> F6 option).

No, you don't understand. When you press F6 (or whatever) you insert a
floppy disk in the drive.
This floppy disk contains the missing driver and associated files. The
installation software loads the driver into
memory so that the installation can proceed.
Jim
>
>
> David Walker
>
>
>
> "Jerry" <(E-Mail Removed)> wrote in
> news:e70Z86#(E-Mail Removed):
>
>> Usually, the necessary driver for the SATA drive is installed during
>> the installtion of Windows itself, when the user is asked/required to
>> press F6 and have the floppy in the floppy drive from which the
>> Windows install routine reads the floppy and installs the drives. This
>> is how Windows knows about and loads the driver when it starts.
>>
>> "DWalker" <(E-Mail Removed)> wrote in message
>> news:(E-Mail Removed)...
>>> If a SCSI or a SATA driver is required to read data from a SCSI or
>>> SATA disk that is the boot disk (and the C drive), where is this
>>> driver stored... and how does Windows know enough to read the SCSI or
>>> SATA disk in
>>> order to read the code from this driver file?
>>>
>>> It seems that Windows would need the driver code loaded before it can
>>> read the driver code off of the disk, which is a catch-22.
>>>
>>> Does the same apply to the NTBOOTDD.SYS file (or is this just the
>>> SCSI version of the driver file)? If NTBOOTDD.SYS is required on the
>>> C drive of
>>> a SCSI drive, and it contains the code to read the SCSI drive, how
>>> does a Windows system load this SYS file?
>>>
>>> My system has a SATA drive as the C drive, and I don't have an
>>> NTBOOTDD.SYS
>>> file in the root of C (and I can see hidden and system files). I
>>> also don't see the SATA driver anywhere, but it's probably buried in
>>> System32 or
>>> somewhere like that.
>>>
>>> Still, I am confused how Windows can read a disk to get a driver that
>>> it needs to have in order to read the disk.
>>>
>>>
>>> David

>>
>>
>>

>
>



 
Reply With Quote
 
DL
Guest
Posts: n/a
 
      21st May 2007
The driver is loaded/installed, during the install process, via F6 before
win starts to load or install on the disk
Win cannot see any hd untill the driver is loaded

"DWalker" <(E-Mail Removed)> wrote in message
news:uI%23c4Y$(E-Mail Removed)...
> All of Windows resides on the disk; none of it resides in the
> motherboard or anywhere in the ether, as far as I know.
>
> Windows has to load the driver OFF OF the disk that contains the DLL or
> SYS file *for the driver itself*. If Windows can read the SATA or SCSI
> disk to GET the driver, why does Windows need the driver?
>
> Can you see what I'm asking? If the SATA or SCSI disk is the only disk
> in the system, then Windows couldn't read THAT DISK to read the driver,
> even if that driver was available when Windows was installed (with the
> F6 option).
>
>
> David Walker
>
>
>
> "Jerry" <(E-Mail Removed)> wrote in
> news:e70Z86#(E-Mail Removed):
>
> > Usually, the necessary driver for the SATA drive is installed during
> > the installtion of Windows itself, when the user is asked/required to
> > press F6 and have the floppy in the floppy drive from which the
> > Windows install routine reads the floppy and installs the drives. This
> > is how Windows knows about and loads the driver when it starts.
> >
> > "DWalker" <(E-Mail Removed)> wrote in message
> > news:(E-Mail Removed)...
> >> If a SCSI or a SATA driver is required to read data from a SCSI or
> >> SATA disk that is the boot disk (and the C drive), where is this
> >> driver stored... and how does Windows know enough to read the SCSI or
> >> SATA disk in
> >> order to read the code from this driver file?
> >>
> >> It seems that Windows would need the driver code loaded before it can
> >> read the driver code off of the disk, which is a catch-22.
> >>
> >> Does the same apply to the NTBOOTDD.SYS file (or is this just the
> >> SCSI version of the driver file)? If NTBOOTDD.SYS is required on the
> >> C drive of
> >> a SCSI drive, and it contains the code to read the SCSI drive, how
> >> does a Windows system load this SYS file?
> >>
> >> My system has a SATA drive as the C drive, and I don't have an
> >> NTBOOTDD.SYS
> >> file in the root of C (and I can see hidden and system files). I
> >> also don't see the SATA driver anywhere, but it's probably buried in
> >> System32 or
> >> somewhere like that.
> >>
> >> Still, I am confused how Windows can read a disk to get a driver that
> >> it needs to have in order to read the disk.
> >>
> >>
> >> David

> >
> >
> >

>
>



 
Reply With Quote
 
John John
Guest
Posts: n/a
 
      22nd May 2007
It's done by the Nt Boot Loader, ntldr.

John

DWalker wrote:

> All of Windows resides on the disk; none of it resides in the
> motherboard or anywhere in the ether, as far as I know.
>
> Windows has to load the driver OFF OF the disk that contains the DLL or
> SYS file *for the driver itself*. If Windows can read the SATA or SCSI
> disk to GET the driver, why does Windows need the driver?
>
> Can you see what I'm asking? If the SATA or SCSI disk is the only disk
> in the system, then Windows couldn't read THAT DISK to read the driver,
> even if that driver was available when Windows was installed (with the
> F6 option).
>
>
> David Walker
>
>
>
> "Jerry" <(E-Mail Removed)> wrote in
> news:e70Z86#(E-Mail Removed):
>
>
>>Usually, the necessary driver for the SATA drive is installed during
>>the installtion of Windows itself, when the user is asked/required to
>>press F6 and have the floppy in the floppy drive from which the
>>Windows install routine reads the floppy and installs the drives. This
>>is how Windows knows about and loads the driver when it starts.
>>
>>"DWalker" <(E-Mail Removed)> wrote in message
>>news:(E-Mail Removed)...
>>
>>>If a SCSI or a SATA driver is required to read data from a SCSI or
>>>SATA disk that is the boot disk (and the C drive), where is this
>>>driver stored... and how does Windows know enough to read the SCSI or
>>>SATA disk in
>>>order to read the code from this driver file?
>>>
>>>It seems that Windows would need the driver code loaded before it can
>>>read the driver code off of the disk, which is a catch-22.
>>>
>>>Does the same apply to the NTBOOTDD.SYS file (or is this just the
>>>SCSI version of the driver file)? If NTBOOTDD.SYS is required on the
>>>C drive of
>>>a SCSI drive, and it contains the code to read the SCSI drive, how
>>>does a Windows system load this SYS file?
>>>
>>>My system has a SATA drive as the C drive, and I don't have an
>>>NTBOOTDD.SYS
>>>file in the root of C (and I can see hidden and system files). I
>>>also don't see the SATA driver anywhere, but it's probably buried in
>>>System32 or
>>>somewhere like that.
>>>
>>>Still, I am confused how Windows can read a disk to get a driver that
>>>it needs to have in order to read the disk.
>>>
>>>
>>>David

>>
>>
>>

>
>

 
Reply With Quote
 
DWalker
Guest
Posts: n/a
 
      24th May 2007
"Jim" <(E-Mail Removed)> wrote in
news:xnp4i.4126$(E-Mail Removed):

>
> "DWalker" <(E-Mail Removed)> wrote in message
> news:uI%23c4Y$(E-Mail Removed)...
>> All of Windows resides on the disk; none of it resides in the
>> motherboard or anywhere in the ether, as far as I know.
>>
>> Windows has to load the driver OFF OF the disk that contains the DLL
>> or SYS file *for the driver itself*. If Windows can read the SATA or
>> SCSI disk to GET the driver, why does Windows need the driver?
>>
>> Can you see what I'm asking? If the SATA or SCSI disk is the only
>> disk in the system, then Windows couldn't read THAT DISK to read the
>> driver, even if that driver was available when Windows was installed
>> (with the F6 option).

> No, you don't understand. When you press F6 (or whatever) you insert
> a floppy disk in the drive.
> This floppy disk contains the missing driver and associated files.
> The installation software loads the driver into
> memory so that the installation can proceed.
> Jim


I understand this part DURING INSTALLATION, but during the next reboot,
how can Windows read the SCSI hard drive that contains the SCSI driver
code, without having already read the SCSI driver code off of the SCSI
hard drive?

David
 
Reply With Quote
 
DWalker
Guest
Posts: n/a
 
      24th May 2007
"DL" <address@invalid> wrote in news:exKPZv$(E-Mail Removed):

> The driver is loaded/installed, during the install process, via F6 before
> win starts to load or install on the disk
> Win cannot see any hd untill the driver is loaded
>


You have said the same thing that Jim said.

If Windows cannot see any HD until the driver is loaded, then how can it
boot THE NEXT TIME after the install? Especially if it needs the driver
code for the SCSI disk, in order to read the SCSI disk that contains the
SCSI driver?

David
 
Reply With Quote
 
DWalker
Guest
Posts: n/a
 
      24th May 2007
John John <(E-Mail Removed)> wrote in news:#hbs7SAnHHA.4896
@TK2MSFTNGP02.phx.gbl:

> It's done by the Nt Boot Loader, ntldr.
>
> John
>


John: ntldr might be on the SCSI disk drive. Especially if that is the
only disk in the system.

How can Windows read the SCSI disk without a SCSI driver? And if the SCSI
driver resides inside ntldr, which is on a SCSI disk, how can Windows boot?

Is the motherboard smart enough to read ntldr off of a SCSI disk (during
the next reboot, not during Windows install) without needing the SCSI
driver itself?

If that's the case, why is the SCSI driver needed at all?


David


P.S. I don't understand why my question is so hard to understand... It's
like in the old days, where if you accidentally compressed the DLL file
that contained Windows 95's decompression code, Windows 95 couldn't read
the code to know how to uncompress the DLL.

Or if you send someone a Zipped file that contains an unzipper program...
you need to unzip the file to install the program.
 
Reply With Quote
 
John John
Guest
Posts: n/a
 
      25th May 2007
The question isn't hard to understand. Very quickly here is the
(condensed) low down on how it happens.

1- The boot order and boot device is set in the BIOS of the computer.
Even if it's a SATA or RAID controller the BIOS *has* to be able to see
and read from the device to boot the computer. That is not specific to
Windows, it applies to any operating system.

2- With regards to booting fixed MBR disks the BIOS reads the Master
Boot Record on the disk and loads it into memory then the BIOS passes
the boot process to the Master Boot Code. The MBR contains the
partition table for the disk and a small amount of executable code
called the Master Boot Code, the Master Boot Code contains the necessary
instructions to continue the boot process.

3- The Master Boot Code scans the partition table and locates the
active or system partition and loads sector 0 (Partition Boot Sector) of
the active partition into memory and then executes the partition boot
sector code.

4- The partition boot sector code locates the operating system loader
and loads it into memory and launches the execution of the operating
system loader. Up to this point the BIOS, Master Boot Code and
Partition Boot Sector Code have been responsible for the boot process.
This happens regardless of the file system on the disk and regardless of
the type of disk controller (IDE, SATA, RAID) and regardless of the
operating system to be loaded.

5- As stated in step 4, the partition boot sector code executes the
operating system loader, in the case of Windows NT/2000/XP the operating
system loader is ntldr (short for nt loader). Ntldr contains a mini
file system driver that enables it to read the file system on the disk
and enables it to load the necessary files to load Windows. Although it
is universally accepted that ntldr is a part of Windows, in a pure sense
it really isn't. Ntldr is a DOS type program that is responsible for
*loading* Windows. While it is doing its job Windows is not yet
started, Windows will be started *by* ntldr.

6- Ntldr calls on NTDETECT.COM, another DOS type program, to gather
information about the computer hardware. NTDETECT.COM will gather a
list and that list will be used to create the HKEY_LOCAL_MACHINE\
HARDWARE key. At this point Windows is not yet started, the boot
process is still being handled by ntldr.

*Here is the answer to your question* :

"At this time Ntldr scans all of the services in the Registry subkey
HKEY_LOCAL_MACHINE \SYSTEM \CurrentControlSet \Services for device
drivers with a Start value of 0x0, which indicates that they should be
loaded but not initialized. Device drivers with these values are
typically low-level hardware device drivers, such as hard disk device
drivers."

7- At the same time as events in step 6 were happening Ntldr began
loading NTOSKRNL.EXE but the boot process has not yet been passed on to
Windows. Ntldr will only pass the boot process after it has finished
loading drivers with an 0x0 value.

And that is why Windows knows how to use SCSI/SATA/RAID drivers, it
knows because ntldr loads boot device drivers (0x0) for Windows before
it actually loads Windows.

John

DWalker wrote:

> John John <(E-Mail Removed)> wrote in news:#hbs7SAnHHA.4896
> @TK2MSFTNGP02.phx.gbl:
>
>
>>It's done by the Nt Boot Loader, ntldr.
>>
>>John
>>

>
>
> John: ntldr might be on the SCSI disk drive. Especially if that is the
> only disk in the system.
>
> How can Windows read the SCSI disk without a SCSI driver? And if the SCSI
> driver resides inside ntldr, which is on a SCSI disk, how can Windows boot?
>
> Is the motherboard smart enough to read ntldr off of a SCSI disk (during
> the next reboot, not during Windows install) without needing the SCSI
> driver itself?
>
> If that's the case, why is the SCSI driver needed at all?
>
>
> David
>
>
> P.S. I don't understand why my question is so hard to understand... It's
> like in the old days, where if you accidentally compressed the DLL file
> that contained Windows 95's decompression code, Windows 95 couldn't read
> the code to know how to uncompress the DLL.
>
> Or if you send someone a Zipped file that contains an unzipper program...
> you need to unzip the file to install the program.

 
Reply With Quote
 
 
 
Reply

Thread Tools
Rate This Thread
Rate This Thread:

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
xp scsi driver for travan cartridge drive =?Utf-8?B?QWxsYW4gQmFlcg==?= Windows XP Help 4 7th Sep 2004 05:07 AM
Is a SATA driver conciderd a SCSI drive ? Jake Smith Computer Hardware 1 28th Jun 2004 06:23 AM
Replacing SCSI drive (boot) with EIDE drive =?Utf-8?B?UmF5RHJlYWQ=?= Windows XP Hardware 6 16th Jun 2004 10:21 PM
componentizing SCSI driver for boot drive Ann Adamson Windows XP Embedded 7 8th Mar 2004 07:54 PM
XP Pro boot.ini: boot to win98 on separate scsi card/drive? Mike Windows XP Customization 3 13th Nov 2003 12:50 PM


Features
 

Advertising
 

Newsgroups
 


All times are GMT +1. The time now is 11:18 AM.