SATA är den nya standarden för kommunikation mellan en dator och hårddiskar, CD-och DVD-enheter, osv, och ersätter den långsammare IDE standard. Dock inser många människor inte att SATA finns i två smaker: AHCI-läge, eller "riktiga" SATA-läge, och en form av IDE emulering via SATA bussen. Windows XP har inte inbyggt stöd för AHCI. Starta upp Windows XP Professional x64 CD faktiskt bluescreens när AHCI-läge är aktiverat från BIOS.
När AHCI är aktiverad i BIOS, starta Windows fungerar alldeles utmärkt, men så fort du försöker installera AHCI drivrutiner för ditt chipset de misslyckas - eftersom ingen AHCI stöd upptäcks, eftersom den är inaktiverad. När du startar och aktivera AHCI stöd i BIOS, dör Windows tidigt i startprocessen, eftersom det inte längre kan läsas från dess installation partition, eftersom det inte har AHCI drivrutiner.
Den fula och olyckliga sanningen: det enda sättet att korrekt installera AHCI stöd för många styrkretsar innebär registret redigering. I själva verket, du gör ett hackjob tillfällig manuell installation av drivrutiner för Windows att ladda så att du kan ha drivrutinerna installeras korrekt.
OBS: Dessa instruktioner är förmodligen rätt för XP och Vista. Men för Windows 7 verkar det finnas en annan metod, åtminstone för x64 Win 7. Problemet med att använda denna metod som beskrivs här med Windows 7 är att AMD inte gör ett ahcix64.sys drivrutin för SB600 chipset i Windows 7. De gör en AHCI drivrutin, som kallas amdsata.sys, utan istället att anpassa denna procedur för att föraren, ett enklare förfarande fungerar. Det finns ett behov av en separat sida för Windows 7 installationer på detta chip.
Steg
- 1Säkerhetskopiera dina viktiga data, och speciellt ditt register. Det finns massor av program där ute för att göra det. Förhoppningsvis kommer du inte behöva använda din backup, och proceduren är ganska säkert, men anser själv varnade ändå.
- 2Se till AHCI är inaktiverat i BIOS. Om den är aktiverad och du kan starta upp windows, behöver du inte den här genomgången.
- 3Ladda ner drivrutinerna för m3a/ati SB600 härifrån: http://support.asus.com/download/download.aspx?SLanguage=en-us&model=M3A
- 4Extrahera zip-filen.
- 5Kopiera lämpliga sys (i mitt fall, ahcix64.sys) till C:. \ Windows \ System32 \ drivers \.
- 6Kopiera följande text, klistra in den i notepad och spara den till en reg-fil (t.ex. ahci.reg).:
Windows Registry Editor Version 5.00
[ HKEY_LOCAL_MACHINE \SYSTEM\ControlSet001\Control\CriticalDeviceDatabase\pci#ven_1002&dev_4380&subsys_82311043 ] "Service" = "ahcix64" "ClassGUID" = " { 4D36E97B-E325-11CE-BFC1-08002BE10318 } " [ HKEY_LOCAL_MACHINE \SYSTEM\CurrentControlSet\Services\ahcix64 ] "Type" = dword:00000001 "Start" = dword:00000000 "Group" = "SCSI miniport" "ErrorControl" = dword:00000001 "ImagePath" = "system32\\drivers\\ahcix64.sys" "tag" = dword:00000019 "DisplayName" = "ATI AHCI Compatible RAID Controller" [ HKEY_LOCAL_MACHINE \SYSTEM\CurrentControlSet\Services\ahcix64\Parameters\PnpInterface ] "5" = dword:0x00000001 [ HKEY_LOCAL_MACHINE \SYSTEM\CurrentControlSet\Services\ahcix64\Settings\CAM ] "EnableALPEDisableHotplug" = dword:0 "EnableCCC" = dword:1 "CCCTimeoutValue" = dword:10 "CCCCompletionValue" = dword:32 "NCQEnableDiskIDBits" = dword:0 "EnableHIPM" = dword:0 "EnableDIPM" = dword:0 [ HKEY_LOCAL_MACHINE \SYSTEM\CurrentControlSet\Services\ahcix64\Enum ] "0" = "PCI\\VEN_1002&DEV_4380&SUBSYS_82311043\\3&13c0b0c5&0&FA" "Count" = dword:00000001 "NextInstance" = dword:00000001
[ HKEY_LOCAL_MACHINE \SYSTEM\ControlSet001\Control\CriticalDeviceDatabase\pci#ven_1002&dev_4380&subsys_82311043 ] "Service" = "ahcix64" "ClassGUID" = " { 4D36E97B-E325-11CE-BFC1-08002BE10318 } " [ HKEY_LOCAL_MACHINE \SYSTEM\CurrentControlSet\Services\ahcix64 ] "Type" = dword:00000001 "Start" = dword:00000000 "Group" = "SCSI miniport" "ErrorControl" = dword:00000001 "ImagePath" = "system32\\drivers\\ahcix64.sys" "tag" = dword:00000019 "DisplayName" = "ATI AHCI Compatible RAID Controller" [ HKEY_LOCAL_MACHINE \SYSTEM\CurrentControlSet\Services\ahcix64\Parameters\PnpInterface ] "5" = dword:0x00000001 [ HKEY_LOCAL_MACHINE \SYSTEM\CurrentControlSet\Services\ahcix64\Settings\CAM ] "EnableALPEDisableHotplug" = dword:0 "EnableCCC" = dword:1 "CCCTimeoutValue" = dword:10 "CCCCompletionValue" = dword:32 "NCQEnableDiskIDBits" = dword:0 "EnableHIPM" = dword:0 "EnableDIPM" = dword:0 [ HKEY_LOCAL_MACHINE \SYSTEM\CurrentControlSet\Services\ahcix64\Enum ] "0" = "PCI\\VEN_1002&DEV_4380&SUBSYS_82311043\\3&13c0b0c5&0&FA" "Count" = dword:00000001 "NextInstance" = dword:00000001
- 1Hämta en praktisk linux-baserade live-cd (eller ännu bättre, dual-boot med linux), starta den och köra något till effekten av
sudo lspci -vvnn | less
att se till att enheten och siffror delsystemet är korrekta. Detta kommer att lista, i detalj, alla dina PCI-enheter och deras egenskaper. Din AHCI controller kommer att vara där någonstans, och dess delsystem och enhetsnummer kommer att listas. Redigera registret fil som behövs. - 2Dubbelklicka på registret fil för att lägga sina poster i ditt register.
- Efter att ändra i registret, måste du göra detta på nästa start. Om du inte gör det, är det troligt att dina ändringar kommer att försvinna och du måste installera. REG-filen igen. Starta om, gå in i BIOS och aktivera AHCI. Sedan kisa, be, och låt Windows starta.
- Efter att ändra i registret, måste du göra detta på nästa start. Om du inte gör det, är det troligt att dina ändringar kommer att försvinna och du måste installera. REG-filen igen. Starta om, gå in i BIOS och aktivera AHCI. Sedan kisa, be, och låt Windows starta.
- 3Inaktivera AHCI i bios, om Windows bluescreens och omstarter ditt system. Om det misslyckas, tweak registret filen lite och försök igen.
- 4Byt fula hackjob av en förare "installation" med en riktig installation genom att köra asussetup. Exe (eller liknande) från föraren zip. och låt den officiella drivrutinen installeras på datorn.
- 5Starta om datorn, för att få föraren att ta kraft.
Tips
- Jag har kontrollerat framgång med samma förfarande, som ersätter alla förekomster av * 64 med * 86 för Windows XP Professional (32-bitars).
- Försök att gå in i registret och ställa EnableHIPM och EnableDIPM till 1. HIPM och DIPM står för Host Initierad-Power Management och Enhet-Initierad Power Management resp. Om SATA-styrenheten finns i en bärbar dator, kan du förbättra strömförbrukningen eller beteende vilolägen.
- Fungerade bra på SB700 på MSI KA790GX enda är att Linux inte visar delsystemet i omvänd ordning. som mitt visades som delsystemet 1462:7510 i Linux och i regfile det ska vara 75.101.462.
- Du kan dubbelkolla den rätta kombinationen i TXTSETUP.OEM fil som i drivrutinen paketet. Gruvan var listad som:
- id = "PCI \ VEN_1002 & DEV_4391 & SUBSYS_75011462", "ahcix86"
- Först efter jag matchade VEN DEV och delsystem siffror Windows XP startas. Jag var tvungen att försöka igen exakt 4 gånger. Först jag in bara reg som det är. 2nd jag rättat PCI-ID, 3rd jag rättat delsystemet men hade det i fel ordning, än jag läste TXTSETUP.OEM och hittade min delsystem som matchade linux utgång. Tack så mycket.
Varningar
- Som en disclaimer, har detta prövats på ett Asus M3A moderkort med Windows XP Professional x64 Edition och en SATA / AHCI-kapabla hårddisk. Tack och lov, det fungerade första gången. Det finns ingen garanti för att detta kommer att fungera alls, än mindre att det kommer att fungera om din inställning är annorlunda.