Automatischer Reset des IDE-Fehlercounters verhindert UDMA => PIO?

  • Ich bin heute in der c't 5/2009 auf einen interessanten Hinweis gestoßen:

    Es gab ja hin und wieder Leute, bei denen wohl wegen häufigeren Fehlerchen im Zugriff auf das Gerät der Fehlerzähler stieg und irgendwann der IDE-Controller von UDMA auf PIO umstieg. Die Folge: Quälend langsames Auslesen. Die bisherige Lösung: IDE-Kanäle deinstallieren und gleich neu starten.

    Anscheinend muss das nicht sein: Es gibt auch einen Registry-Eintrag im Pfad

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96A-E325-11CE-BFC1-08002BE10318}

    (IDE ATA/ATAPI-Controller). Darin sind einige nummerierte Einträge enthalten. Der mit dem Namen "0000" wird wohl meist der IDE-Controller sein, die mit den Namen "0001" und "0002" der primäre bzw. sekundäre Kanal. Allerdings muss das wohl nicht zwangsläufig so sein. Und wer mehrere IDE-Controller hat, für den wird es wohl interessanter - da haben die Controller dann laut Microsoft die Werte 0000 (0002, 003) und 0001 (0004, 0005).

    Jedenfalls soll seit Windows XP SP2 das Setzen eines DWORD-Wertes "ResetErrorCountersOnSuccess" auf den Wert 1 im Registry-Zweig des IDE-Kanals dafür sorgen, dass bei erfolgreichen Operationen dieser Fehlerzähler auch mal wieder zurückgesetzt wird, was das Auflaufen größerer Zahlen und die allmähliche Herabstufung des UDMA-Modus bis zum PIO-Modus nach längerer Zeit vermeiden soll.

    Microsoft hat hierzu auch den Knowledge-Base-Artikel 817472 veröffentlicht.

    Das manuelle Wühlen in der Registry ist nun wohl nicht gerade jedermann's Stärke... Deshalb habe ich das ganze mal programmiert und hoffe, dass es überall zuverlässig funktioniert. Daher ausdrücklich die Warnung:

    Verwendung auf eigene Gefahr! Wer den UDMA-Modus bei defektem Laufwerk oder Kabel wieder aktiviert, muss u.U. mit Datenfehlern rechnen.

    Das Programm durchsucht den angegebenen Registry-Pfad und listet erkannte IDE-Kanäle auf. Hierbei suche ich nach den Gerätekennungen (MatchingDeviceId) "primary_ide_channel" und "secondary_ide_channel". In diesen Zweigen wird dann beim Klick auf "OK" für die Kanäle, die ein Häkchen gesetzt bekommen, der Registry-Eintrag mit Wert 1 eingefügt. Das Löschen des Häkchens bewirkt das Löschen des Eintrages bei Klick auf "OK". Sollte der Eintrag vorhanden sein, aber einen anderen Wert als 1 haben, wird ein graues Feld angezeigt.

    Hat jemand zufällig mehrere IDE-Controller eingebaut (z.B. per PCI-Steckkarte)? Da würde mich interessieren, wie es bei ihm strukturiert ist.

  • Habe hier das Gigabyte EP43-DS3L mit einem IDE-Steckplatz und 6 SATA-Plätzen, die auch als IDE angezeigt werden, da ich AHCI nicht nutze.

    Deine EXE mal ausgeführt, würde sagen, arbeitet richtig. (siehe Anhang)

    Verstehe ich das richtig, wenn der Wert einmal eingetragen ist, brauche ich mich nicht weiter darum kümmern?

    Dateien

    mawi2006

    Intel Q9550@2500 MHz / Motherboard Name Asus P5N-VM WS / Grafikkarte NVIDIA Quattro FX470 / 4x2 GB 800 MHz / DVD-RAM DVR-216DBK / LiteOn IHas 322 / HDD: 500 GB HD502HJ / SSD: Solidata K5 64GB

  • Ich werde es beobachten und hier melden.

    mawi2006

    Intel Q9550@2500 MHz / Motherboard Name Asus P5N-VM WS / Grafikkarte NVIDIA Quattro FX470 / 4x2 GB 800 MHz / DVD-RAM DVR-216DBK / LiteOn IHas 322 / HDD: 500 GB HD502HJ / SSD: Solidata K5 64GB

  • LigH
    Dieser "Patch" ist doch schon bei Win XP SP3 eingebaut?
    Habe gerade im ganzen Haus auf drei Rechnern nach geschaut.
    Bei allen steht der "ResetErrorCountersOnSuccess" auf dem Wert 1.
    Also verstehe ich nicht was du damit bezwecken willst.
    Auf der anderen Seite:
    Ich habe gerade in der letzten Zeit bei mehreren Leuten bei denen das DVD
    oder CD Rom Laufwerk "kaputt" war, mit dem IDE-Kanäle-deinstallieren-Trick,
    ihnen wieder neues Leben eingehaucht ;D

  • Zitat

    Habe gerade im ganzen Haus auf drei Rechnern nach geschaut.


    Und ich auf Zweien nachgeschaut....das sehe ich aber kein "ResetErrorCountersOnSuccess"
    Am neuen frisch aufgesetzten sind da zwar 8 aufgelistet und noch Properties.

    Nachtrag.
    Am alten Arbeitsrechner den Patch ausgeführt...nun ist "ResetErrorCountersOnSuccess" auf dem Wert 1

  • Habe auch XP-SP3 und es war nicht drin.

    mawi2006

    Intel Q9550@2500 MHz / Motherboard Name Asus P5N-VM WS / Grafikkarte NVIDIA Quattro FX470 / 4x2 GB 800 MHz / DVD-RAM DVR-216DBK / LiteOn IHas 322 / HDD: 500 GB HD502HJ / SSD: Solidata K5 64GB

  • Ist ja merkwürdig.
    Habe garantiert nicht an den Registry Werten herum gefummelt.
    Vielleicht sollte ich noch erwähnen, das alle Rechner XP Pro drauf haben.
    Werde Heute oder Morgen mal bei einem Bekannten nach schauen, der die Home drauf hat.
    Trotzdem vielen Dank an LigH. Solche Tools kann man immer gebrauchen.
    Jetzt müsste nur noch geklärt werden, ob es überhaupt funktioniert.
    Wie bringt man denn seinen Rechner dazu sich sechs mal von seinem DVD Laufwerk zu verabschieden?
    Ultra zerkratzte CD's vielleicht? Oder billig gepesste Zeitschriften Beilagen?
    Oder einfach mal verschmutzen?:(:D

  • Mach doch ein bisschen Ketchup auf ne CD und lass es antrocknen^^.

    mawi2006

    Intel Q9550@2500 MHz / Motherboard Name Asus P5N-VM WS / Grafikkarte NVIDIA Quattro FX470 / 4x2 GB 800 MHz / DVD-RAM DVR-216DBK / LiteOn IHas 322 / HDD: 500 GB HD502HJ / SSD: Solidata K5 64GB

  • Knoten und Ketchup lass ich mal...
    Aber auf einem anderen Rechner (XP Home) ist der Eintrag tatsächlich nicht vorhanden.
    Auf Vista Home Premium auch nicht.
    Ich hatte leider noch nie das zweifelhafte Vergnügen einen Reset des Fehler Counters machen zu müssen.
    Pflege meine DVDs und CDs ordentlich.
    Habe aber schon einige Male arg zerkratzte CDs mit Exact Audio aus gelesen.
    Dabei ist das Laufwerk schon mal zum Stillstand gekommen.
    Musste aber noch nie resetten. Vielleicht liegt's ja an dem schon vorhandenen Eintrag in der Registry.
    Wenn ich bloss wüsste, wo der her kommt ;D
    Alzheimer lässt grüssen.

  • Moin,

    ich vermute, daß (wenn vorhanden) der Eintrag vom Installer des IDE-Controllers bzw. der inf-Datei kommt.
    Gibt ergo keine Rückschlüsse auf OS oder Patchlevel, sondern nur auf Controllertreiber und evtl. den Versionsstand.

    Gruß Karl

  • Hola LigH!

    Manchmal frag' ich mich wirklich, wie ich all die Jahre ohne Internet überlebt habe...

    Hatte auf meinem Windows 2003 Server genau das Problem:

    Das Backup auf meinem kleinen HomeServer lief auf einmal total langsam... für das Backup meiner 750 GB Platte brauchten meine Tools auf einmal mehrer Tage...

    Nach Selbstanalyse und Recherche im Netz bin ich auf Dein Posting gestossen und kann Dir mit Erfolgt und strahlendem Gesicht mitteilen, dass Dein Tool auch unter Windows 2003 Server (SP2) läuft und mich wieder glücklich gemacht hat... :)

    Also: Vielen Dank und weiter so!!!

    Ciao + schönen Gruss,
    FuKKes

  • :welcome:

    Freut mich.
    __

    Einen Negativ-Fall hatte ich auch schon. Irgendwie war da wohl das P-ATA-Kabel nicht von optimaler Qualität. Die Platte lief mit UDMA 5 nicht einwandfrei. Kein Wunder, dass der Fehlerzähler hoch war. Mein Tool hat ihn zurückgesetzt - prompt kamen wieder die Fehler beim Zugriff. Also im BIOS den UDMA-Level etwas herabgesetzt, und seitdem kein Ärger mehr (ist nichts extrem wichtiges drauf, da lohnt sich kein größerer Austausch mehr).

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!