Win 7 will HDD rauswerfen

RonnieColeman

Software-Overclocker(in)
Was soll ich als begrüßung schreiben...?

Nach meiner erfolgreichen WIN 7 Prof 64bit installation (endlich) bin ich auf eine merkwürdigkeit gestoßen.
Als ich einen USB-stick eingeworfen wurde der normal erkannt usw. Als ich den rauswerden lassen wollte, klick ich drauf und sehe, dass der auch meine Platten da mit reingebracht hat. Ich kann die theoretisch rauswerfen. Das war mal nicht so. Wie kann ich das ändern?
 
Na ja... das stimmt zwar, aber trotzdem sollte man den MSAHCI-Treiber nur im Notfall einsetzen - soweit ich weiss, unterstützt der kein NCQ (ich lassse mich gerne vom Gegenteil überzeugen), und das ist ja einer der Hauptgründe für AHCI - die reine Datenübertragungsrate ist im alten IDE-Modus kein Stück langsamer.
 
sollte man den MSAHCI-Treiber nur im Notfall einsetzen - soweit ich weiss, unterstützt der kein NCQ

Tut er schon:P, zumindest zeigen das sämtliche Diagnose-Tools an und div. Benchmarks sprechen auch dafür (der MS pciide Treiber macht kein NCQ). Die Perfomance der AHCI Treiber ist nicht sooo unterschiedlich. Hier ein Vergleich meiner OCZ Vertex 2 am Marvell Sata 6 GB/s Controller mit MSAHCI- und Marvell-Treibern.
 

Anhänge

  • OCZ-VERTEX2_3.5_120.0_GB-AS SSD Benchmark-20110514(Marvell SATA 6GBs)-msahci.jpg
    OCZ-VERTEX2_3.5_120.0_GB-AS SSD Benchmark-20110514(Marvell SATA 6GBs)-msahci.jpg
    92,9 KB · Aufrufe: 246
  • OCZ-VERTEX2_3.5_120.0_GB-AS SSD Benchmark-20110514(Marvell SATA 6GBs)-mvs91xx.jpg
    OCZ-VERTEX2_3.5_120.0_GB-AS SSD Benchmark-20110514(Marvell SATA 6GBs)-mvs91xx.jpg
    93,8 KB · Aufrufe: 217
Okay, ich will mich nicht streiten - nichtsdestotrotz haben deine Benches oben nichts mit NCQ zu tun (wie gesagt, NCQ ändert nichts an der Übertragungsrate - mit so einem Standardbench kann man NCQ nicht benchen, denn es gibt dabei schlicht keine Commands zu queuen - denn die kommen sowieso brav hintereinander anmarschiert.
Dafür braucht es Benches ala Sysmark, die verschiedene Programme gleichzeitig auf die Platte zugreifen lassen - da zahlt es sich NCQ auch aus, meist so um die 10%. Bei Magnetplatten - ob sich das bei SSDs in dem Maße überhaupt auswirkt, ist eine andere Sache. Durch die ultrakurzen Zugriffszeiten und die relativ flotten Übertragungsraten stehen sich die Plattenbefehle verschiedener Programme weniger im Weg als bei den klassischen Festplatten. Leider habe ich da noch keinen Vergleich mit/ohne NCQ bei SSDs gesehen.

Was die Tools angeht, ja, die zeigen NCQ auch an, wenn die Platten im IDE-Modus laufen, egal ob HDTune oder Crystal Disk Info. :P

Ansonsten: Ich habe mir die Weisheit zu NCQ nicht aus den Finger gesaugt, es wurde öfter in der c't erwähnt und bei Microsoft selbst kann man es auch lesen.
 
nichtsdestotrotz haben deine Benches oben nichts mit NCQ zu tun

Haben sie doch, vor allem der 4k-64Thrd-Lesen-Wert. Hier mal ein Vergleich der gleichen Platte an NVIDIA-Controller mit nvidia-Treiber (NCQ) und MS pciide (kein NCQ).
 

Anhänge

  • OCZ-VERTEX2_3.5_120.0_GB-AS SSD Benchmark-20110326-2-nvstor64-msupd.jpg
    OCZ-VERTEX2_3.5_120.0_GB-AS SSD Benchmark-20110326-2-nvstor64-msupd.jpg
    93,4 KB · Aufrufe: 191
  • OCZ-VERTEX2_3.5_120.0_GB-AS SSD Benchmark-20110326-2.jpg
    OCZ-VERTEX2_3.5_120.0_GB-AS SSD Benchmark-20110326-2.jpg
    92,8 KB · Aufrufe: 172
Lustig... beide Treiber sind beim Durchsatz unterm Strich gleich (im Rahmen der Messungenauigkeit) - nur das der eine schneller liest, während der andere schneller schreibt. Das ist absolut nichts Ungewöhnliches. Der Endscore gewichtet offensichtlich Lesen stärker.
Unterschiede hast du oben beim Marvell auch. Wenn du geschickt bist, dann kannst du jetzt so argumentieren: Ah, dann unterstützt der MSAHCI wirklich kein NCQ, denn der Marvelltreiber tut das (keine Ahnung, ob der das tut, ich habe JMicron als Zusatzcontroller, die Treiber tuns) - also ist das der Beweis, dass der Bench NCQ nutzt und Vorteil daraus zieht. :D Was nicht hinhaut, besonders nicht bei so einem Bench. Wie NCQ arbeitet wird hier sehr schön erklärt. Und es erklärt auch, dass SSDs bauartbedingt kaum (Edit: besser ausgedrückt wäre wohl, nicht im gleichen Maß) davon profitieren, schon allein weil sie keine mechanischen Latenzen haben und auch nicht darauf warten müssen, dass die richtigen Sektoren unter dem Kopf vorbeiflitzen.

Aber mal zurück zum eigentlichen Thema:
Eigentlich ist das kein Bug mit dem Auswerfen, das ist ein Feature. Es ist für's Hotplugging gedacht - das "Auswerfen" sorgt dafür, dass der Inhalt des Caches auf die Platte geschrieben wird, bevor man die Platte austöpselt. Das vermeidet Datenverluste. Genau wie bei USB-Sticks, bevor man sie abzieht.
Der Tip mit dem TreatAsInternalPort ist interessant. Wenn mich das stören würde, dann würde ich den entsprechenden Eintrag einfach unter dem Serviceeintrag für den AMD-Treiber reinschreiben. Natürlich erst nach einem schnellen Imagebackup der Windowspartition versteht sich. Solche Experimente können heikel werden.
Aber wenn der AMD-treiber sonst keine Mucken macht (der scheint ja nicht immer problemfrei zu sein, wenn man sich mal durch die diversen Foren liest), würde ich die Sache aber einfach auf sich beruhen lassen. Im laufenden betrieb eine Platte wechseln zu können, ist immer eine feine Sache.
 
Zuletzt bearbeitet:
Wie NCQ funktioniert, brauchst Du mir nicht zu erklären.:schief: Dass die beiden letzten Benchmark-Ergebniss die Verfügbarkeit von NCQ beim MSAHCI gegenüber dem MS (!) pciide nachweisen, brauche ich Dir aber scheinbar nicht zu erklären, da Du wohl nicht weißt, was der 4k-64Thrd-Lesen-Wert bedeutet (s. Alex Intelligent Software - Downloads):

Der 4K-64-Thrd-Test entspricht dem 4K-Prozedere nur dass hier die Lese-und Schreiboperationen auf 64 Threads verteilt sind. Dieser Test sollte bei SSDs mit Native Command Queuing (NCQ) Unterschiede zwischen dem IDE-Betriebsmodus, wo NCQ nicht unterstützt wird, und dem AHCI-Modus darstellen.
Aber wie Du schon schreibst, back to topic. Das Problem von RonnieColeman ist wohl eher nicht, dass er die Möglichkeit bemängelt, eine Festplatte im laufenden Betrieb wechseln zu können. Es geht sicher mehr um das Risiko, aus Versehen ("verclickt") auf diesem Wege eine interne Festplatte "auszuwerfen", wenn man z.B. einen USB-Stick ordnungsgemäß auswerfen will. Allerdings kann man ihn dahingehend beruhigen, da Windows das sowieso nicht zulässt, solange irgendwelche Daten von der entsprechenden Festplatte genutzt werden. Bei der Windows-Systemfestplatte ist das ja wohl immer während des laufenden Systems.;)
 
Na, ich behaupte ja nicht, dass MSAHCI kein NCQ kann - das machen Andere. Ich hab's einige Male gelesen, zuletzt in der c't 08/2011 S.181 und zwar auf msahci.sys von Win 7 bezogen. Die c't ist mit Sicherheit nicht die Bibel, aber wenn ich wählen müsste, zwischem dem, was in der c't steht und dem, was so im Web erzählt wird, fiele mir die Entscheidung doch leicht. Wenn mir das irgendwann mal wichtig sein sollte, werde ich einfach mal wieder meinen Account da nutzen und einen der dortigen Redakteure anschreiben - die sollen mal eine konkrete Aussage zu dem Thema machen. Abgesehen davon haben die dort auch die Mittel, um das auszutesten. Ein Sysmark-Benchlauf auf einem Intelsystem mit Msahci.sys und anschließend mit iastore.sys sollte es eigentlich aufzeigen können.
2009 gab es einen Hotfix für Vista und Server 2008 in Zusammenhang mit msahci.sys und NCQ-fähigen SATA-Platten, weil da erhebliche Performance Probleme auftreten konnten. Dabei wurde auch erwähnt, das NCQ nicht geht. Vor allem den deutschen Text (tolle Maschinenübersetzung) könnte man so interpretieren, das nach dem Fix NCQ funktioniert. Allerdings wird das nicht konkret gesagt. Fazit (für mich): DAs Thema hängt irgendwie in der Schwebe, nichts genaues erfährt man nicht und die Informationen dazu sind äußerst widersprüchlich.
Abgesehen davon: AHCI bedeutet nicht automatisch NCQ, genauso wenig, wie es bedeutet, das NCQ ohne AHCI nicht geht. Schon mein altes Nforce-Board (das von AHCI keinen Schimmer hatte) hat mit den nVidia-Treibern NCQ auf meinen IDE(!)-Platten (ja, gab es tatsächlich) erkannt und genutzt.

Das mit den Threads im Bench ist schon klar (zugegeben, nachdem ich den Text gelesen habe - vorher habe ich 4K-64Thread so gelesen: 4K bis 64K Blockgröße Lesethread ;) das fehlende K bei 64 habe ich als Tippfehler interpretiert) - kein Einwand soweit. Bei einem gemischten Read/write-Bench ist da bestimmt was zu sehen - wenn in einem Bench also ständig zwischen Lese- und Schreiboperation gewechselt wird - da kann NCQ richtig auftrumpfen. Wenn aber in einem Lauf nur geschrieben (oder eben gelesen) wird - hm... Bei einer Magnetplatte ist einem logischen Sektor immer der gleiche physikalische Sektor auf der Scheibe zugeordnet, da ist es von Vorteil, wenn Zugriffe so zusammengefasst werden, dass erstmal zusammenhängende Bereiche abgearbeitet werden und nicht wild rumgesteppt werden muss. Bei der SSD gibt es sowas nicht, da wechseln die benutzten Blöcke ja - logisch zusammenhängende Sektorbereiche müssen nicht real zusammenhängen und sind auch nicht ständig an der gleichen Stelle - das regelt der Kontroller intern. Wenn sich da was zeigt, dürfte sich das technisch bedingt beim Schreiben manifestieren, am besten auf einer frischen (leeren) SSD. Beim Lesen ist mir der Vorteil bei SSDs mangels mechanischer Latenzen und wesentlich weniger Aufwand im Vergleich zum Schreiben von der Logik her nicht ganz klar. Wird wohl doch mal Zeit, dass ich mir eine SSD mal über ein Wochenende mit nach hause nehme. :D

Was den Auswurf angeht, hast du vollkommen recht: Windows lässt nicht zu, dass man ihm den Ast absägt, an dem es hängt. Bei Systempartitionen wird im laufenden Betrieb weder gelöscht, formatiert, Buchstaben geändert oder eben ausgeworfen. Außer man zieht einfach das SATA-Kabel - beliebter Bürosport: Wieviel Sekunden braucht Windows, bis es das merkt und die blaue Fahne hisst?
Ich persönlich nutze die Auswurffunktion eigentlich nie - Stick raus und gut ist. Allerdings haben alle meine Sticks noch eine LED, die irgendwelche Aktionen anzeigt. Da sollte sich natürlich nichts tun, wenn man den Stick rausrupft.
 
Zuletzt bearbeitet:
Nach meiner erfolgreichen WIN 7 Prof 64bit installation (endlich) bin ich auf eine merkwürdigkeit gestoßen.
Als ich einen USB-stick eingeworfen wurde der normal erkannt usw. Als ich den rauswerden lassen wollte, klick ich drauf und sehe, dass der auch meine Platten da mit reingebracht hat. Ich kann die theoretisch rauswerfen. Das war mal nicht so. Wie kann ich das ändern?

Das liegt daran, dass du die Platten im AHCI Modus laufen hast, dann werden sie als Wechselmedien behandelt, genauso wie USB Sticks.
Entweder einen AHCI Treiber ausprobieren oder die Festplatten im IDE Modus laufen lassen.
Für die Geschwindigkeit ist es egal ob die Platten in AHCI oder IDE laufen.
 
Zurück