» »

Zgodovina: Kako je Windows 95 izgubil detekcijo diskete

Zgodovina: Kako je Windows 95 izgubil detekcijo diskete

Slashdot - Ena izmed pogostejših nevšečnosti, ki je pestila uporabnike legendarnega Windows 95, je bil šklepetajoči disketnik. Če je uporabnik odprl kakšno datoteko neposredno z diskete, je Windows spravil njeno bližnjico v nedavno uporabljene dokumente v meniju start, kar počne še danes. Žal je to pomenilo, da je računalnik ob vsakem naslednjem zagonu na silo poskušal prebrati vsebino diskete, pa če je ta bila v pogonu ali pa ne. Podobno se je disketnik oglasil, če je uporabnik poskušal dostopati do diska A:, ko v disketniku ni bilo ničesar. Na MSDN blogu je Microsoft pojasnil, kakšne ideje so imeli z implementacijo detekcije prisotnosti diskete v pogonu.

Oseba, ki je pisala 32-bitni gonilnik za disketnik, je ugotovila, da je s pametno izbranimi ukazi moč ugotoviti, ali je disketa dejansko v pogonu, ne da bi se zavrtela. Žal je imela funkcija lepotno napako, da je delovala na približno polovici pogonov diametralno nasprotno. Disketnik iste serije je vedno vrnil 0 ali 1, odvisno od prisotnosti diskete, ni pa se dalo vnaprej napovedati, kakšen bo odgovor posamezne vrste disketnikov (odgovor je bil torej konsistenten, a ne vnaprej napovedljiv). Inženirji so razmišljali, kaj storiti, in ugotovili, da bi bilo najbolje Windows naučiti, s čim ima opraviti. Ideja je bila, da bi med instalacijo uporabnika pozvali, da vstavi disketo, sistem bi nato izvedel rutino za preverjanje prisotnosti in se naučil, kakšen odgovor vrne dani disketnik, ko je poln.

Kasneje so se odločili, da ta funkcionalnost terja preveliko napora za končnega uporabnika za premalo efekta, tako da so jo črtali. Glavni problem je dejstvo, da disketniki niso podpirali Plug & Play, torej ni bilo mogoče ugotoviti, kdaj je bil uporabljen prvikrat ali morebiti nameščen nov. Prav tako mnogi uporabniki niso nameščali sistema sami, ampak so to za njih storili OEM-i ipd. Je pa zgodba zanimiva z vidika porabljenega truda, ki ga je Microsoft investiral v navidez banalno funkcijo, kot je avtodetekcija diskete. Slashdot.

26 komentarjev

PNG ::

phong, ne vidim razloga zakaj hodiš na to stran. Tvoj komentar je neumen, nevmesen in brezpredmeten. Če tebe informacijska tehnologija ne veseli, ne vem zakaj hodiš na to stran. Če te veseli, te to zanima, pa tudi če te slučajno ne, še vedno te nihče ne prosi da komentiraš vse kar vidiš - konec koncev je avtor tudi porabil nekaj časa, da je spisal ta članek.

Meni je članek zanimiv, hvala avtorju, da se je potrudil.

phong ::

Itak, da je trud avtorja vreden.
Sam pisanje o Windows 95 in disketnikih (in kako delujejo skupaj) pa je... del nepomembne zgodovine. Potem imamo tu še ogromno (pra)zgodovinskih zgodb.

Rippy ::

"Je pa zgodba zanimiva z vidika porabljenega truda, ki ga je Microsoft investiral v navidez banalno funkcijo, kot je avtodetekcija diskete."

Sicer nekaterim je mogoče tudi zanimiva s kakšnega drugega pogleda. phong, tvoj komentar je res neprimeren in članek ima zelo malo skupnega s "nepomembno zgodovino".

Brane2 ::

Veliko manjši Commodore je ob svoji Amigi ubral drugo pot- odločil se je za dsketnike, ki so imeli vdelano detekcijo menjave ( in s tem IIRC tudi prisotnosti) diskete.

Ko si vstavil disketo, jo je Amiga sama zavrtela in prebrala direktorij.
On the journey of life, I chose the psycho path.

Brane2 ::

Atari ST pa je AFAIK to imel rešeno softversko. Vsakih parsto milisekund je za milisekundo ali dve prižgal disketar in prechekiral odziv.

Downside je bil ta, da je stvar stalno drkljala disketnik, čeprav ga ni dejanjsko zavrtela.

Upside pa ta, da je delala na kakršnemkoli disketarju.

Če bolj pozorno pogledaš lučko disketarja na STju, lahko vidiš, da utripa z zelo kratkimi interrvali vklopljenosti...
On the journey of life, I chose the psycho path.

Pithlit ::

phong:
Če je uporabnik odprl kakšno datoteko neposredno z diskete, je Windows spravil njeno bližnjico v nedavno uporabljene dokumente v meniju start, kar počne še danes.


Ne vem če je to ravno zgodovina... glede na to da MS vztrajno vleče nekatere bug-e in feature-je skozi vse možne verzije. Sicer pa... ja, je zanimivo prebrat zakaj je skoz ropotal disketnik. In kako je do tega prišlo.
Life is as complicated as we make it...

BigWhale ::

Atari ST pa je AFAIK to imel rešeno softversko. Vsakih parsto milisekund je za milisekundo ali dve prižgal disketar in prechekiral odziv.

Downside je bil ta, da je stvar stalno drkljala disketnik, čeprav ga ni dejanjsko zavrtela.

Upside pa ta, da je delala na kakršnemkoli disketarju.

Če bolj pozorno pogledaš lučko disketarja na STju, lahko vidiš, da utripa z zelo kratkimi interrvali vklopljenosti...


Hmm, tole pa ne vem ce bo drzalo. Kolikor se jaz spomnim STja je prebral disketo takrat, ko si kliknil na ikono.

karagoth ::

Zanimiv tale feature, ker mislim da se je obdržal še do winXP, sem pred kratkim na faksu našel računalnik kateremu se je mal utrgalo zarad disketnika oz poizkusom branja diskete ki je ni bilo. Pa ima winxp z vsemi posodobitvami... se z disketnikom zgleda ni noben ukvarjo :D

alexxxx ::

Disketniki so že izven mode ^^

energetik ::

Še hujši problem je (na XP) če poskusiš prebrat pokvarjeno disketo. Enkrat mi je diketar rožljal dokler je nisem ročno odstranil, seveda se hkrati explorer.exe ni odzival... >:D
Prav tako ne vem, zakaj ne poštimajo tudi DVD pogona, kjer je explorer.exe tudi neodziven, dokler ne zalaufa na novo vstavljen DVD (kaj šele, če je defekten plošček...). A niso mogl lepo nardit enga okna, kjer bi pisalo "Berem DVD" in potem gumb Cancel zraven? Explorer pa hkrati normalno uporaben?

Sicer se pa strinjam, da je disketa praktično uporabna le še za kakšen low level format diska, al pa za RAID driverje za XP (če jih že prej ne integriraš na plošček) in flešanje starejših plat.

Zgodovina sprememb…

MrStein ::

Brane2, glede Amige ni čist tako.

Detektirala je že vstavljeno disketo (in odstranitev tudi). Ni pa prebrala direktorija.

Glede Windows 95. Zakaj pa OS ni preveril prisotnost diskete po starem, potem pa po novem načinu (torej po zamudnem in dejansko implementiranem, potem pa še po tem experimentalnem, ki ni dočakal release-a), po potem po rezultatih prvega testa videl, kaj vrača drugi hitri test ?

To bi lahko med bootom naredil, potem pa bi trajalo, do naslednjega. Med delovanjem ja noben ni menjal disketnika.
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!

Brane2 ::

Brane2, glede Amige ni čist tako.

Detektirala je že vstavljeno disketo (in odstranitev tudi). Ni pa prebrala direktorija.


Možno. Spomnim se, da sem kloegu rihtal Amigo, kjer je originalni disketnik crknil in sem moral manjkajočo logiko implementirati sam...
On the journey of life, I chose the psycho path.

opeter ::

Veliko manjši Commodore je ob svoji Amigi ubral drugo pot- odločil se je za dsketnike, ki so imeli vdelano detekcijo menjave ( in s tem IIRC tudi prisotnosti) diskete.

Ko si vstavil disketo, jo je Amiga sama zavrtela in prebrala direktorij.


A ni bilo nekaj podobnega pri Applovih računalnih?

Disketniki so že izven mode ^^


Žal ne. Vsak teden dobim kar nekaj gradiva ravno na disketah.
Hrabri mišek (od 2015 nova serija!) -> http://tinyurl.com/na7r54l
18. november 2011 - Umrl je Mark Hall, "oče" Hrabrega miška
RTVSLO: http://tinyurl.com/74r9n7j

Zgodovina sprememb…

  • spremenil: opeter ()

r0ker ::

..
Glede Windows 95. Zakaj pa OS ni preveril prisotnost diskete po starem, potem pa po novem načinu (torej po zamudnem in dejansko implementiranem, potem pa še po tem experimentalnem, ki ni dočakal release-a), po potem po rezultatih prvega testa videl, kaj vrača drugi hitri test ?

To bi lahko med bootom naredil, potem pa bi trajalo, do naslednjega. Med delovanjem ja noben ni menjal disketnika.

izgubljen čas IMO. par 10 sekund?

Matako ::

Veliko manjši Commodore je ob svoji Amigi ubral drugo pot- odločil se je za dsketnike, ki so imeli vdelano detekcijo menjave ( in s tem IIRC tudi prisotnosti) diskete.


Hm, no saj pri originalni Amiga disketni enoti je tudi bilo treba narediti "step", da je lahko OS detektiral prisotnost. Posledica je bila znan občasen kratek in jasen klik.

Novejši modeli so imeli možnost detektiranja brez premikanja vendar je bilo treba zaradi kompatibilnosti to eksplicitno vključiti (mislim, da se je pognal nek NoClick, ki je prišel zraven AmigaOS).

Atari ST pa mislim, da je celo uporabljal foro, ki je izvedljiva s standardnimi PC disketniki in sicer, da se pri vstaljanju diskete za trenutek vedno spremeni Write Protect linija... vendar je treba preverjati dokaj pogosto - zato verjetno tisto brlenje lučke, kot je nekdo omenil.
/\/\.K.

Zgodovina sprememb…

  • spremenil: Matako ()

MrStein ::

r0ker:
izgubljen čas IMO. par 10 sekund?

Nak. Tam 2-3 sekunde je. Pa bi se lahko opravilo pri prvi dejanski operaciji z disketnikom.

Ali pa paralelno z drugi opravki. Aja, multitasking ni bila močna stran Win9x >:D
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!

jishiri ::

ja to so bili tisti časi, ki so me spravljali ob živce oz. to so bli tisti časi, ki so me spravljale diskete ob živce:D

BigWhale ::

Veliko manjši Commodore je ob svoji Amigi ubral drugo pot- odločil se je za dsketnike, ki so imeli vdelano detekcijo menjave ( in s tem IIRC tudi prisotnosti) diskete.


Hm, no saj pri originalni Amiga disketni enoti je tudi bilo treba narediti "step", da je lahko OS detektiral prisotnost. Posledica je bila znan občasen kratek in jasen klik.


OS ali Worbench? Amigin OS je bil ena taka hecna zadeva. Pol v romu, pol na disketi. Vsaj pri Amigah 500 je bilo tako. Oziroma v ROMU je imel kernel, ce si pa hotel delovno okolje, shell, si ga pa moral prebrat od nekje.

Ce nisi bil v Workbenchu in si vstavil disketo, se je program (igra :) ) na njej avtomatsko pognal.

Crimson_Shadow ::

Tudi v XP z SP3 mora še vedno obstajat nek glup hrošč, ki ti teži z napako, da manjka dvd v pognu, ko zaženeš kak drug špil.

To se še vedno dogaja, sploh če je medij poškodovan.

Recimo, zaženem WoW nakar mi sistem zateži, da manjka dvd v pogonu za drug špil.
We create worlds

Matako ::

Misliš Kickstart ali Workbench? V bistvu ne bi vedel ampak itak tudi če je bil driver za disketno (DF*) v Kickstart se ga je gotovo dalo dinamično patchati, poleg tega je AmigaOS dokaj napredno naprave implementiral kot neke vrste procese, na ta način tudi stalnega pollanja disketne ni bil nek hud problem.
/\/\.K.

Matako ::

Veliko manjši Commodore je ob svoji Amigi ubral drugo pot- odločil se je za dsketnike, ki so imeli vdelano detekcijo menjave ( in s tem IIRC tudi prisotnosti) diskete.


Hm, no saj pri originalni Amiga disketni enoti je tudi bilo treba narediti "step", da je lahko OS detektiral prisotnost. Posledica je bila znan občasen kratek in jasen klik.


OS ali Worbench? Amigin OS je bil ena taka hecna zadeva. Pol v romu, pol na disketi.


To je res, vendar je bil sistem v resnici bolj sofisticiran. Cel sistem je bil zasnovan na skoraj ekskluzivni uporabi t.i. shared libraries (vsa funkcionalnost OS je bila nekako zapakirana v različne knjižnice brez fiksnih naslovov, razen ene osnovne), podobno Windows DLL vendar pozicijsko nedvisna, reentrant koda. Na ta način se je dalo isto knjižnico ali direktno pognati iz ROM (Kickstart) ali naložiti iz diska (npr. Workbench). Ideja je bila, da je lahko Commodore narediti poljubno konfiguracijo sistema Kickstart/Workbench brez večjih kompatibilnostih težav. Za nameček se je ob odprtju knjižnice vedno naredila tabela funkcij v RAM in je bilo trivialno izvesti "hotfix" oz. dinamično nadgradnjo knjižnic ne glede ali so bile v Kickstart ali na disku.

Kot rečeno, sistem je bil presenetljivo domišljen in dalekoviden glede na dokaj šlampasto kvaliteto softvera za osebne računalnike tistih časov.
/\/\.K.

Zgodovina sprememb…

  • spremenil: Matako ()

driver_x ::

Škoda je edino, da tehnična dovršenost ni v povezavi s komercialnim uspehom.

Matako ::

Eh, kaj hočeš. Dobre stvari pridejo in gredo. Kakšne uspejo, še več jih po mojem ne. To ti je t.i. življenje.
/\/\.K.

kixs ::

Brane2, glede Amige ni čist tako.

Detektirala je že vstavljeno disketo (in odstranitev tudi). Ni pa prebrala direktorija.



Detektirala je disketo in prebrala labelo. Ikona se je nato pojavila na Workbenchu. Ce diskete ni bilo vstavljene, potem tudi ikone ni bilo.

lp

ikeman ::

The title should be "Windows 95 almost got WGA detection scheme built-in but the first step to detect if there's a floppy present was proven to be a challenge" :p

BigWhale ::

Brane2, glede Amige ni čist tako.

Detektirala je že vstavljeno disketo (in odstranitev tudi). Ni pa prebrala direktorija.



Detektirala je disketo in prebrala labelo. Ikona se je nato pojavila na Workbenchu. Ce diskete ni bilo vstavljene, potem tudi ikone ni bilo.

lp


Ja, Atari ST tega ni pocel. Tam si imel skoz ikono disketarja. K si kliknil na disketo je sele zacel z branjem.


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Zakaj je C: še vedno glavni disk?

Oddelek: Operacijski sistemi
385768 (4224) mojster_joni
»

Zgodovina: Kako je Windows 95 izgubil detekcijo diskete

Oddelek: Novice / Operacijski sistemi
264837 (3398) BigWhale
»

Zadnja smrt disketne enote? (strani: 1 2 )

Oddelek: Novice / Diski
528292 (6807) desperados
»

Disketni pogon-ga še sploh kdo uporablja??

Oddelek: Strojna oprema
412327 (1867) vladika
»

Postavitev sistema

Oddelek: Pomoč in nasveti
452378 (1749) BlackHole

Več podobnih tem