SATA not working correctly on XP guest

Discussions about using Windows guests in VirtualBox.
Post Reply
Sublimation
Posts: 14
Joined: 10. Aug 2009, 19:19
Primary OS: Ubuntu other
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Windows XP Professional

SATA not working correctly on XP guest

Post by Sublimation »

Hello everyone,

let me start off by mentioning that I've already followed the instructions listed here:
http://forums.virtualbox.org/viewtopic.php?f=2&t=9575

Now, to clarify, Windows XP boots just fine when I'm running the virtual disk off of SATA port 0 with IDE set on channel ICH6. However, when running off of SATA port 0 I do not receive the typical SATA read/write speed. In fact, my read/write speed never exceeded 70MB ever since I reinstalled Windows XP using the SATA drivers listed in the thread linked above. Upon scanning through documentation I noticed the following information:
Like a real SATA controller, VirtualBox's virtual SATA controller operates faster and also consumes less CPU resources than the virtual IDE controller. Also, this allows you to connect up to 30 virtual hard disks to one machine instead of just three, as with IDE. Of these, the first four (numbered 0-3 in the graphical user interface) are operated in IDE compatibility mode by default.
Having read that information, I immediately switched the virtual disk to SATA port 4. Upon booting, as expected, I received a boot error. No problem, I simply opted to reinstall windows. After installation was completed I was surprised to notice that instead of booting as normal, my system was booting from LAN. Upon entering the Boot Utility (F12 for selecting which boot device to use) I noticed a message telling me there was no suitable hard-drive detected. No suitable hard drive?! That was quite strange since Windows XP just installed to the hard-drive which is now considered, "not suitable." So, once again, I opt to reinstall Windows XP. Once again it installs and once again I receive the same error of not having a suitable hard-drive. At this point I'm flat-down frustrated. I tried a few more SATA ports (10 and 30 I believe) all producing the same results.

Now I turn to this forum for assistance. Howcome when I leave SATA port 0-3 and switch to SATA port 4-30 do I receive these strange error messages produced by VirftualBox itself? I don't think Windows has anything to do with it since it runs just fine in IDE and SATA IDE compatibility modes. Yes, the SATA drivers were installed correctly (confirmed through Device Manager). During Windows installation I only encountered one error where a file named, "unknown.sys" failed to install. Upon retrying it once again failed to install. Eventually I just skipped installing the file and Windows continued happily. I believe the error was caused by the SATA drivers that I used from the thread linked above. If it means they didn't install correctly or if they were simply trying to add an unnecessary driver file I do not know.

Any ideas on what might be happening? Keep in mind that VirtualBox not Windows produced the error mentioning that I did not have a suitable hard-drive.

Thanks in advance!

Host OS: Linux Mint (Gloria)
Virtual Box Version: 3.0.12 r54655
Last edited by Sublimation on 21. Dec 2009, 22:18, edited 1 time in total.
Entegy
Posts: 160
Joined: 6. Sep 2008, 23:59
Primary OS: MS Windows 7
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Ubuntu 10.04 x64, XP SP3, Server 2008 R2, Fedora 13 x86/x64
Location: Montreal, Quebec, Canada

Re: SATA not working correctly on XP host

Post by Entegy »

I do believe to get the full SATA speed in XP, you would have to install XP with SATA from the beginning. Also, I do believe VB can only boot from SATA port 0 unless a bootloader (on port 0) specifies otherwise, which is why you're not seeing a bootable disk. I've had the same problem.
Sublimation
Posts: 14
Joined: 10. Aug 2009, 19:19
Primary OS: Ubuntu other
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Windows XP Professional

Re: SATA not working correctly on XP host

Post by Sublimation »

I already installed XP with SATA support (fresh install, format and all). I might try an experiment of making a few extra virtual disks, assigning them to SATA ports 0-3 then assigning my XP disc to SATA port 4.

EDIT: Well, I made 4 additional virtual disks and attached them to SATA ports 0-3, my XP virtual disk is now on SATA port 4. Upon booting and pressing F12 only the 4 drives located on ports 0-3 are displayed while the drive on port 4 doesn't show. This is quite strange....
Sublimation
Posts: 14
Joined: 10. Aug 2009, 19:19
Primary OS: Ubuntu other
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Windows XP Professional

Re: SATA not working correctly on XP guest

Post by Sublimation »

Wow, this is really really strange...

I managed to insert another virtual disk on which I installed GRUB via a Linux Mint installer. When I installed GRUB it also detected my Windows XP installation, which was inserted into startup options automatically. After selecting Windows XP then pressing ENTER to boot, I received an error that the hard-drive doesn't exist... So I launch the Mint installer again to ensure GRUB was booting the proper disk and partition. It was... So upon restart I insert the Windows installer CD, mount the SATA driver, and choose to repair my Windows installation (command screen not automatic repair). Immediately the installer finds my C:\Windows\ path on the "E:" drive. I select it, and sure enough it prompts for a password before allowing me to execute any commands. Right now I'm performing a FIXBOOT, FIXMBR, CHKDSK /p and CHKDSK /r in hopes somehow this problem is resolved. Additionally, BOOTCFG /SCAN reports there is only one Windows installation on the designated Windows virtual disk.

What I find strange about this is that both Linux Mint (installer and the actual OS) manage to see the Hard-drive on which the windows installation resides (they even detected the windows installation, asking if I wanted to import user account files). However, when attempting to boot from the Hard-Drive (F12 or GRUB) I immediately receive the "Hard Drive does not exist" error. It seems this is no longer a driver issue.

EDIT: Now I receive an error reporting the following, "NTLDR is missing."
Martin
Volunteer
Posts: 2562
Joined: 30. May 2007, 18:05
Primary OS: Fedora other
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: XP, Win7, Win10, Linux, OS/2

Re: SATA not working correctly on XP guest

Post by Martin »

If I remember correctly only SATA ports 0-3 support the IDE compatibility mode required by the BIOS to boot from them.
Sublimation
Posts: 14
Joined: 10. Aug 2009, 19:19
Primary OS: Ubuntu other
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Windows XP Professional

Re: SATA not working correctly on XP guest

Post by Sublimation »

Are there any methods which would allow me to "reveal" the extra SATA virtual disks on ports 4-30 to the BIOS for booting? The reason I'm finding this strange is because OS installers can locate the disk, yet the BIOS can't...?
Sublimation
Posts: 14
Joined: 10. Aug 2009, 19:19
Primary OS: Ubuntu other
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Windows XP Professional

Re: SATA not working correctly on XP guest

Post by Sublimation »

Problem Solved!

Alanbir managed to solve my issue with the following article:
http://forums.virtualbox.org/viewtopic.php?f=2&t=26132

No more errors during XP installation. While I doubt I will be able to boot from SATA slots 4-30, I at least now have SATA support. Thank you all for your support.
Post Reply