Vi tog fejl om læsefejl på floppyer
For over femogtyve år siden, rodede jeg med FreeBSD's floppy disk device driver.
Floppydiske fejler, det vidste vi allerede dengang, men vi vidste ikke ret meget om hvordan de fejlede og derfor blev fejlhåndteringen i FreeBSD den samme som alle andre brugte: Prøv at rekalibrer drevet.
Det er det der laver den karakteristiske "RRRRRRRRR-klunk-RRRRRRRRRR" lyd når der er læsefejl.
Igår læste jeg ca. 150 gamle 3½" disketter ind med det jeg skrev til brug i datamuseum.dk for ti år siden og et par år senere commit'ede til FreeBSD: recoverdisk(1)
I forhold til dengang, gav det mig et meget større datagrundlag for at studere læsefejl på floppydiske og min konklusion er nu at rekalibrering ved læsefejl er spild af tid, for det hjælper ikke.
Det er ikke uvæsentlig spild af tid, en rekalibrering kan tage en stor del af et sekund, fordi man stepper hovedet langsommere end ellers, fordi antagelsen er at man ikke er over det spor man tror.
På samme tid har skiven roteret en håndfuld gange, hvor man kunne have prøvet at læse den samme sektor igen og rigtig mange dårlige sektorer blev læst i mindre end ti forsøg.
En anden observation der forbavsede mig, var det kunne betale sig at prøve op til ca. 500 læseforsøg før man giver op.
Læsefejl på floppydiske har med andre ord en helt anden natur end det vi troede for 25 år siden.
Hvis jeg skulle designe en ny fejlhåndtering idag, ville jeg for det første kun lave rekalibrering hvis jeg slet ikke kunne læse nogen sektorer på den nuværende cylinder og ellers bare blive ved med at prøve at læse den vrangvillige sektor en gang per omdrening i op til 10-20 sekunder. Man kunne overveje at steppe hovedet 5 spor i den ene retning og derefter fem spor tilbage igen, hvert 5-10 sekund, for at ryste lidt med mekanikken.
Jeg ved ikke hvor "traditionen" med at lave en rekalibrering stammer fra, men alle gjorde det, så jeg formoder at der engang har været floppydrev med lidt for svage step-motorer som kunne springe steps over og derefter er det bare cargo-cultet ud over det hele.
Retfærdigvis skal siges at RRRRRRR-klunk-RRRRRRRR ikke er nogen dårlig måde at gøre brugeren opmærksom på læsefejl på floppydiske.
phk

...men det er dyrt at lave god journalistik. Derfor beder vi dig overveje at tegne abonnement på Version2.
Digitaliseringen buldrer derudaf, og it-folkene tegner fremtidens Danmark. Derfor er det vigtigere end nogensinde med et kvalificeret bud på, hvordan it bedst kan være med til at udvikle det danske samfund og erhvervsliv.
Og der har aldrig været mere akut brug for en kritisk vagthund, der råber op, når der tages forkerte it-beslutninger.
Den rolle har Version2 indtaget siden 2006 - og det bliver vi ved med.