msconfig - No more IDE connections?!?!?

Page 2 - Seeking answers? Join the AnandTech community: where nearly half-a-million members share solutions and discuss the latest tech.

Smilin

Diamond Member
Mar 4, 2002
7,357
0
0
Dude. The faster you let go of this Windows running on top of DOS concept the faster you'll ramp up on how the guts of the OS are running. Windows was a DOS shell back in the 3.1 days.

NTLDR starts life in real mode with 640k of memory available to it.

The FIRST thing it does is switch to protected mode so that the full 32bits of memory addressing are available to it. Any type of environment that ANYTHING DOS related could run in is now gone. *poof*

NTLDR then whips up some page tables so it can page memory below 1MB and turns on protected-mode with paging. A bit later in the boot process after NTLDR passes control to ntoskrnl, SMSS.exe will setup the rest of the paged memory environment that NT 4.0/5.x lives in.

The important thing to know is: It ain't DOS, any of it! It's 100% pure 32bit Windows. It is so far removed and alien to DOS that when you run a DOS program in has to run NTVDM (NT Virtual Dos Machine), which is an emulator for a realmode dos environment! To see this happen, simply fire up a DOS program in XP and watch NTVDM appear in your list of running processes.

As for remnants - yeah you can find them. This doesn't quite mean what you think though. Somewhere on your hard drive you can find "progman.exe" remember that bad boy? Yeah, you can still get it to run with some effort but it will launch WOW (Win16 on Win32 that thunks up the 16bit instructions to 32 bit). Further more, WOW will be running inside...you guessed it...NTVDM.

After you ditch this DOS stuff, ditch the "M$ Windoze" crap too. It's so...netscape.

 

CQuinn

Golden Member
May 31, 2000
1,656
0
0
Another needlessly long reply to an otherwise short-answer thread.

Windows 3.0 was the last version that could be considered a "shell" running on top of DOS.
(Which it wasn't either, shells were tools like PCTools, or Norton Commander, or my favorite
Xtree). Windows 1.x - 3.0 were properly called operating environments; they still needed
DOS for the majority of thier system calls, but provided their own set of drivers to connect
to much of the PC hardware of the time, such as sound and video cards.

Windows 3.1, 3.11, and Windows for Workgroups were the first to expand that operating
environment status beyond DOS, by the introduction of 32-bit drivers to allow the system
to bypass both DOS and the BIOS to accomplish rudimentary device and file system access.

At the same time that Windows for Workgroups was being promoted, MS and IBM had
a falling out over the development of a completely new (non-DOS based) operating system
known as OS/2. Both companies took thier respective halves of what was then the OS/2
codebase, and sought to develop newer OSes based on the ideas they had gained from
the project. MS basically rewrote that codebase (and hired developers from Digital who
had worked on VMS) to contribute into what became Windows NT.

NT was not as "user-friendly" as plain Windows, so the old Windows team carried over most of the
Windows 3.1 structure, and applied some ideas they had gained from the Windows NT development
team, to create Windows 95. The first OS that switched (almost completely) from DOS as the OS to
having its own drivers, APIs, and interface for the whole system.

While Windows 9x was considered more of a "consumer" OS, it was obvious that Windows NT was far more
stable and supportive of new technologies. So the goal was set to eventually merge the two codebases into
an OS that would be based on the "non-DOSness" of NT, while keeping the interface user support of Windows9x.
That OS was released as Windows 2000. All OS releases since then (with the exception of Windows ME, the
last gasp of the old DOS-to-Windows codebase) have been based on changes to that release of the NT-originated
code. So the Windows "shell" detractors have been obsolete since 2001.

(and back to topic...)
And for the BIOS needing to read a boot sector to recognize a hard drive, how then would a system be able
to recognize a RAW (unpartitioned) drive, that has no such boot sector information available?
The answer is, it does so by reading the information given by the drive firmware, before the drive surface
is even accessible.







 

Smilin

Diamond Member
Mar 4, 2002
7,357
0
0
Originally posted by: KuJaX
I have a 1210SA Adaptec RAID controller that I use for my main operating system in RAID 0 with two raptors. I recently added a SATA harddrive to the system for backup purposes and plugged directly into "sata1" on my Abit AS8 motherboard. I started the system and it said "cannot boot ......." so I laughed and went into the BIOS and changed the boot priority back to PCI SLOT and not the recent SATA harddrive I put in. Well, I got past "cannot boot....." and where normally Windows XP Professional logo comes up, nothing does. Totally black. I let it sit for a good 10 minutes and didn't boot. Push the power button once and it instantly turns off (basically meaning no response).

I have an adaptec 1210sa RAID controller with RAID 0 setup as main OS. I also have a SCSI controller with SCSI harddrive. This combo has worked flawlessly, but I need more storage. When I added a SATA or even an IDE harddrive, it wouldn't boot properly.

Any help? I swear i've looked everywhere in the BIOS and the boot priority, along with "boot PCI device" is set first, just as it is when I don't have the additional sata/ide harddrive plugged in.

If the exact error is "cannot boot..." that would be the suck cuz I've never heard of that before. :p

If that ain't it, give us the exact error message and let me know everything you see up to that point. Can you get to an F8 boot menu (used to reach safemode typically) for instance??

Just an early guess - That IDE device is getting enumerated before your SCSI and SATA controllers so your arc path in boot.ini is wrong. If this is the case your exact error message would be "Windows could not start because the following file is missing or corrupt: \windows\system32\ntoskrnl.exe"

If that ain't it and it truly is something like "Cannot boot..." then it is a vendor specific BIOS generated error message and BIOS is unable to locate a MBR to boot from. You might be able to get past this with a boot floppy (NT formatted floppy w/ ntldr, boot.ini and ntdetect.com on it). If you can get booted with a floppy then there is hope. We'll need to get a MBR+Bootsector+the boot files onto whatever drive BIOS has settled on booting from. A drive letter shift might try to wreck things (you'll know when it keeps returning to the logon screen) but that can be fixed.

BIOS will often treat SATA or RAID controllers like a PCI SCSI controller. BIOS can boot just fine from these but having more than one at a time might be pushing some limitations. Older BIOS can't select which one to use. Swapping PCI slots may or may not remedy. Pushing the limitations then adding a third controller (the onboard one) might hit the breaking point. That's a pretty complicated boot setup you've got going. :)

Post some more info if you can. I'll check this thread again later today.



 

dphantom

Diamond Member
Jan 14, 2005
4,763
327
126
Originally posted by: Smilin
Dude. The faster you let go of this Windows running on top of DOS concept the faster you'll ramp up on how the guts of the OS are running. Windows was a DOS shell back in the 3.1 days.

NTLDR starts life in real mode with 640k of memory available to it.

The FIRST thing it does is switch to protected mode so that the full 32bits of memory addressing are available to it. Any type of environment that ANYTHING DOS related could run in is now gone. *poof*

NTLDR then whips up some page tables so it can page memory below 1MB and turns on protected-mode with paging. A bit later in the boot process after NTLDR passes control to ntoskrnl, SMSS.exe will setup the rest of the paged memory environment that NT 4.0/5.x lives in.

The important thing to know is: It ain't DOS, any of it! It's 100% pure 32bit Windows. It is so far removed and alien to DOS that when you run a DOS program in has to run NTVDM (NT Virtual Dos Machine), which is an emulator for a realmode dos environment! To see this happen, simply fire up a DOS program in XP and watch NTVDM appear in your list of running processes.

As for remnants - yeah you can find them. This doesn't quite mean what you think though. Somewhere on your hard drive you can find "progman.exe" remember that bad boy? Yeah, you can still get it to run with some effort but it will launch WOW (Win16 on Win32 that thunks up the 16bit instructions to 32 bit). Further more, WOW will be running inside...you guessed it...NTVDM.

After you ditch this DOS stuff, ditch the "M$ Windoze" crap too. It's so...netscape.

You dah man!! :D :thumbsup:
 

imported_KuJaX

Platinum Member
May 29, 2004
2,428
0
0
Originally posted by: Smilin
Originally posted by: KuJaX
I have a 1210SA Adaptec RAID controller that I use for my main operating system in RAID 0 with two raptors. I recently added a SATA harddrive to the system for backup purposes and plugged directly into "sata1" on my Abit AS8 motherboard. I started the system and it said "cannot boot ......." so I laughed and went into the BIOS and changed the boot priority back to PCI SLOT and not the recent SATA harddrive I put in. Well, I got past "cannot boot....." and where normally Windows XP Professional logo comes up, nothing does. Totally black. I let it sit for a good 10 minutes and didn't boot. Push the power button once and it instantly turns off (basically meaning no response).

I have an adaptec 1210sa RAID controller with RAID 0 setup as main OS. I also have a SCSI controller with SCSI harddrive. This combo has worked flawlessly, but I need more storage. When I added a SATA or even an IDE harddrive, it wouldn't boot properly.

Any help? I swear i've looked everywhere in the BIOS and the boot priority, along with "boot PCI device" is set first, just as it is when I don't have the additional sata/ide harddrive plugged in.

If the exact error is "cannot boot..." that would be the suck cuz I've never heard of that before. :p

If that ain't it, give us the exact error message and let me know everything you see up to that point. Can you get to an F8 boot menu (used to reach safemode typically) for instance??

Just an early guess - That IDE device is getting enumerated before your SCSI and SATA controllers so your arc path in boot.ini is wrong. If this is the case your exact error message would be "Windows could not start because the following file is missing or corrupt: \windows\system32\ntoskrnl.exe"

If that ain't it and it truly is something like "Cannot boot..." then it is a vendor specific BIOS generated error message and BIOS is unable to locate a MBR to boot from. You might be able to get past this with a boot floppy (NT formatted floppy w/ ntldr, boot.ini and ntdetect.com on it). If you can get booted with a floppy then there is hope. We'll need to get a MBR+Bootsector+the boot files onto whatever drive BIOS has settled on booting from. A drive letter shift might try to wreck things (you'll know when it keeps returning to the logon screen) but that can be fixed.

BIOS will often treat SATA or RAID controllers like a PCI SCSI controller. BIOS can boot just fine from these but having more than one at a time might be pushing some limitations. Older BIOS can't select which one to use. Swapping PCI slots may or may not remedy. Pushing the limitations then adding a third controller (the onboard one) might hit the breaking point. That's a pretty complicated boot setup you've got going. :)

Post some more info if you can. I'll check this thread again later today.

Thank you very much. I'm going to do some tests today and will update the thread later on.

Basically, when I set the boot priority to the way it has been (PCI DEVICE first) which would be the SATA controller, everythings works fine. But when I add an IDE and still have PCI DEVICE first, it just goes to a blank screen. :(
 

Smilin

Diamond Member
Mar 4, 2002
7,357
0
0
What point are you getting the blank screen?

Does it post?
Get the Windows splash screen?

 

imported_KuJaX

Platinum Member
May 29, 2004
2,428
0
0
Smilin - Yes, it does post. You know when booting up, the point of where it posts, starts booting up, screen goes blank for half a second and the Windows XP splash screen comes up? At that point where it goes black for half a second and windows splash screen SHOULD come up, it goes blank.
 

Smilin

Diamond Member
Mar 4, 2002
7,357
0
0
Do you get the same problem when using a boot floppy? (format a floppy in XP, copy ntldr, boot.ini, ntdetect.com) - if you get a missing ntoskrnl message we'll need to fix your boot.ini arc path. The "map arc" command in recovery console gives you the magic answer.

If boot floppy does the exact same thing you can try moving your SCSI/SATA cards to different slots.

Are you running at the absolute latest BIOS for both your motherboard and all your controllers?


edit: You should be able to run IDE+SATA+SCSI all in the same system just fine. However, you might not have complete free-will about which one you can boot from. BIOS just doesn't get that granular about boot options. You're lucky to even have bios with "PCI slot" as a boot option.