How To Enable SATA Controller for Windows XP Guests in VirtualBox
Settings > System > Motherboard
Enable IO APIC UNticked
Settings> System > Processor
1 CPU, Enable PAE/NX ticked
Settings> System > Acceleration
Enable VT-x/AMD-V ticked
Enable Nested Paging (not sure about this one, I have it ticked for now)
Settings > Display > Video
64 MB or higher of Video Memory
Enable 3D Acceleration ticked
Enable 2D Acceleration ticked
The new VirtualBox 4.0 seems to work flawlessly with this guide too, with no problems with the SATA controller whatsoever after upgrading.
This is part 2 of how to speed up Windows guests in VirtualBox. Part 1 can be read HERE. Using an SATA Controller in VirtualBox, as compared to VirtualBox's default IDE Controller, has benefits of lower CPU usage / faster performance during high input-output activity in a Windows XP guest. But its tricky to get Windows XP to support an SATA controller, as it has no native SATA drivers, unlike Vista or Win7. But it can be done, and the results are quite nice.
After having completed my previous post, the VirtualBox (3.2.10.r66523) settings for my Windows VM are:
Settings > System > Motherboard
Enable IO APIC UNticked
Settings> System > Processor
1 CPU, Enable PAE/NX ticked
Settings> System > Acceleration
Enable VT-x/AMD-V ticked
Enable Nested Paging (not sure about this one, I have it ticked for now)
Settings > Display > Video
64 MB or higher of Video Memory
Enable 3D Acceleration ticked
Enable 2D Acceleration ticked
Important: all installation and system settings described below will apply to the GUEST Windows, not the host. Or the VirtualBox settings for the Windows Guest VM. Do not install anything or change any settings for your host OS.
Step 1 - Open VirtualBox. Go to File > Virtual Media Manager > New > Next > Dynamically expanding storage > Next > you'll be deleting this temporary drive when you're done, so give it the name DummySATA and leave it at the default 2 GB > Next > Finish. Click OK to close the Virtual Media Manager.
Step 2 - Select your Windows VM, choose Settings, and go to Storage. Right-Click your IDE Controller and choose "Add Hard Disk." Choose DummySATA.vdi that you just created. It should be listed as your Primary Slave, whereas your boot drive should already exist on the controller as your Primary Master. Click OK to close the Settings window.
Step 3 - Start Windows. The new drive (DummySATA) won't show up because its not formatted. Go to Administrative Tools > Computer Management> Disk Management. The "Initialize and Convert Disk Wizard" should appear, to allow Windows to use your new disk, which will have the identity of Disk 1. Once the wizard is finished, right click Disk 1 which will have the status "Unallocated" and choose "New Volume." Format it as NTFS. Once its finished formatting, close Computer Management. Shut down Windows.
Step 4 - In VirtualBox with your VM selected, go to Settings > Storage. Right-click a blank space in the storage tree and choose "Add SATA Controller." Remove DummySATA from the IDE Controller and add it to the SATA Controller. Click OK to close the settings.
Step 5 - Start Windows. Cancel out of the "Found New Hardware" wizard. Now we'll download the Intel SATA drivers. Open a browser, go to the Intel download site, and download the file IATA89ENU.exe, version 8.9.0.1023 which is very stable. Once downloaded, close the browser and run the file.
Step 6 - When the setup is finished, shut down windows. In VirtualBox, go to Settings > Storage for the VM, Remove DummySATA from the SATA controller. Remove your boot drive from the IDE controller. Add your boot drive to the SATA controller and click OK to close the Settings box. Now go to VirtualBox > File > Virtual Media Manager, select DummySATA.vdi and click the "Remove" button. Remove and delete it.
Step 7 - Start Windows again, and you should be able to see a definite improvement in its speed and CPU use.
Step 1 - Open VirtualBox. Go to File > Virtual Media Manager > New > Next > Dynamically expanding storage > Next > you'll be deleting this temporary drive when you're done, so give it the name DummySATA and leave it at the default 2 GB > Next > Finish. Click OK to close the Virtual Media Manager.
Step 2 - Select your Windows VM, choose Settings, and go to Storage. Right-Click your IDE Controller and choose "Add Hard Disk." Choose DummySATA.vdi that you just created. It should be listed as your Primary Slave, whereas your boot drive should already exist on the controller as your Primary Master. Click OK to close the Settings window.
Step 3 - Start Windows. The new drive (DummySATA) won't show up because its not formatted. Go to Administrative Tools > Computer Management> Disk Management. The "Initialize and Convert Disk Wizard" should appear, to allow Windows to use your new disk, which will have the identity of Disk 1. Once the wizard is finished, right click Disk 1 which will have the status "Unallocated" and choose "New Volume." Format it as NTFS. Once its finished formatting, close Computer Management. Shut down Windows.
Step 4 - In VirtualBox with your VM selected, go to Settings > Storage. Right-click a blank space in the storage tree and choose "Add SATA Controller." Remove DummySATA from the IDE Controller and add it to the SATA Controller. Click OK to close the settings.
Step 5 - Start Windows. Cancel out of the "Found New Hardware" wizard. Now we'll download the Intel SATA drivers. Open a browser, go to the Intel download site, and download the file IATA89ENU.exe, version 8.9.0.1023 which is very stable. Once downloaded, close the browser and run the file.
Step 6 - When the setup is finished, shut down windows. In VirtualBox, go to Settings > Storage for the VM, Remove DummySATA from the SATA controller. Remove your boot drive from the IDE controller. Add your boot drive to the SATA controller and click OK to close the Settings box. Now go to VirtualBox > File > Virtual Media Manager, select DummySATA.vdi and click the "Remove" button. Remove and delete it.
Step 7 - Start Windows again, and you should be able to see a definite improvement in its speed and CPU use.
Stuck in 4-bit color @640x480
Updated I think I found the solution for this very annoying problem, finally. At least it works for me and is reproducible.
Inside the XP guest, right-click My Computer > Properties > Advanced > Performance Settings > Advanced Tab > Memory Usage
When this is set to "System cache" the 4-bit color @ 640x480 problem seems to always resurface sooner or later. If video memory is set above 64 megs on my system, its pretty much guaranteed to always happen.
When this is set to "Programs" I can set video memory to the full 128 megs that VB allows on my system, enable nested paging in VB settings, have 2D & 3D acceleration enabled, what have you. Full 32 bit color @ 1680X1040 with no issues.I hope this and the prior post helps you. Good luck and take care.
Inside the XP guest, right-click My Computer > Properties > Advanced > Performance Settings > Advanced Tab > Memory Usage
When this is set to "System cache" the 4-bit color @ 640x480 problem seems to always resurface sooner or later. If video memory is set above 64 megs on my system, its pretty much guaranteed to always happen.
When this is set to "Programs" I can set video memory to the full 128 megs that VB allows on my system, enable nested paging in VB settings, have 2D & 3D acceleration enabled, what have you. Full 32 bit color @ 1680X1040 with no issues.I hope this and the prior post helps you. Good luck and take care.
0 Remarks:
Post a Comment