dobrá zajímavost.
ale napsat "chvíly", to je taky moc zajímavé ;-)
+1
0
-1
Je komentář přínosný?
dobrá zajímavost.
kfeksa https://diit.cz/profil/karel-feksa
27. 7. 2021 - 14:38https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskusedobrá zajímavost.
ale napsat "chvíly", to je taky moc zajímavé ;-)https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuse#comment-1347176
+
A na to přesně je v článku odkaz "nahlásit chybu", protože takhle v komentáři to po opravení vypadá vytrženě. Měl jsem omylem ve větě dvakrát slovo "používaly" (což mi právě odkazem někdo hned nahlásil) a to jedno vymazání se mi povedlo opravdu kvalitně, posunuté o pár znaků doleva. Stane se, zvlášť z mobilu.
+1
+2
-1
Je komentář přínosný?
A na to přesně je v článku
logout https://diit.cz/autor/logout
27. 7. 2021 - 14:46https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuseA na to přesně je v článku odkaz "nahlásit chybu", protože takhle v komentáři to po opravení vypadá vytrženě. Měl jsem omylem ve větě dvakrát slovo "používaly" (což mi právě odkazem někdo hned nahlásil) a to jedno vymazání se mi povedlo opravdu kvalitně, posunuté o pár znaků doleva. Stane se, zvlášť z mobilu.https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuse#comment-1347180
+
.... jojo LS-120 tu ještě někde mám zrala jak magnetoopticke 120MB diskety tak i klasické 3,5 palc. diskety a dokonce i o velikosti 2,88 MB. Mechanika se pripojovala už na IDE/PATA...
+1
+1
-1
Je komentář přínosný?
.... jojo LS-120 tu ještě
ANDREW https://diit.cz/profil/andrew
27. 7. 2021 - 14:43https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuse.... jojo LS-120 tu ještě někde mám zrala jak magnetoopticke 120MB diskety tak i klasické 3,5 palc. diskety a dokonce i o velikosti 2,88 MB. Mechanika se pripojovala už na IDE/PATA...
https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuse#comment-1347178
+
Po uvedené opravě nicméně s flagem i bez něj dochází v případě, že disketa není v mechanice nebo je chráněna proti zápisu, k vrácení chyby Read-only file system okamžitě.
to je příšerná věta.. jsem si jí musel přečíst 3x než jsem pochopil obsah.
+1
0
-1
Je komentář přínosný?
Po uvedené opravě nicméně s
Begy https://diit.cz/profil/begy
27. 7. 2021 - 15:30https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskusePo uvedené opravě nicméně s flagem i bez něj dochází v případě, že disketa není v mechanice nebo je chráněna proti zápisu, k vrácení chyby Read-only file system okamžitě.
to je příšerná věta.. jsem si jí musel přečíst 3x než jsem pochopil obsah.https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuse#comment-1347183
+
To vybizi k zajimave diskusi. Je to opravdu bug? A ne treba Fix? Protoze pred tim sla zavolat beztrestne funkce open i v pripade, ze v mechanice nebyla zadna disketa. A az po pristupu k ni uzivatel zjistil, ze tam nic neni. To, ze to ted vraci chybu hned pri pokusu ji "otevrit" me osobne prijde v poradku a spise predchozi stav vnimam jako chybny.
A ted otazka... Prestava byt bug bugem kdyz se s nim nauci vetsina zit? A pak nasledne, kdyz se objevi fix, ktery hazi vidle do toho jak se ta vetsina naucila s tim bugem zit, tak stane se pak ten fix bugem? Nebo vetsina ma smulu?
+1
+4
-1
Je komentář přínosný?
To vybizi k zajimave diskusi.
Bartt https://diit.cz/profil/ondrej-bartik
27. 7. 2021 - 15:51https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuseTo vybizi k zajimave diskusi. Je to opravdu bug? A ne treba Fix? Protoze pred tim sla zavolat beztrestne funkce open i v pripade, ze v mechanice nebyla zadna disketa. A az po pristupu k ni uzivatel zjistil, ze tam nic neni. To, ze to ted vraci chybu hned pri pokusu ji "otevrit" me osobne prijde v poradku a spise predchozi stav vnimam jako chybny.
A ted otazka... Prestava byt bug bugem kdyz se s nim nauci vetsina zit? A pak nasledne, kdyz se objevi fix, ktery hazi vidle do toho jak se ta vetsina naucila s tim bugem zit, tak stane se pak ten fix bugem? Nebo vetsina ma smulu?https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuse#comment-1347185
+
Tohle je dobrá otázka. Vzhledem k tomu, že flag O_NDELAY by měl způsobit, že volání open() nečeká na reálný výsledek a vždy končí s nulou (alespoň co jsem si tak prošel popisy funkce open() při psaní článku) a chyba se řeší jinak, pak bych původní chování označil za vlastnost a jeho změnu za bug. Ale vypadá to, že většina lidí zastává názor přesně opačný :)
+1
0
-1
Je komentář přínosný?
Tohle je dobrá otázka.
logout https://diit.cz/autor/logout
27. 7. 2021 - 16:02https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuseTohle je dobrá otázka. Vzhledem k tomu, že flag O_NDELAY by měl způsobit, že volání open() nečeká na reálný výsledek a vždy končí s nulou (alespoň co jsem si tak prošel popisy funkce open() při psaní článku) a chyba se řeší jinak, pak bych původní chování označil za vlastnost a jeho změnu za bug. Ale vypadá to, že většina lidí zastává názor přesně opačný :)https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuse#comment-1347188
+
V dobre odokumentovanom kode (a v zdravom ekosysteme) typicky plati, ze:
1) ak je dokumentovane chovanie nejake a kod sa chova inac, je kod chybny a je to bug
2) ak sa chovanie kodu zmeni tak, aby bolo v sulade s dokumentaciou a nejaky program sa rozbije, potom tento program bol vadny, lebo zalezal na zjavne nedokumentovanom chovani
3) ak program zalezi na nejakom detaile chovania ineho kodu, ktore nie je zdokumentovane, tak taky kod exploituje API a zalezi na vnutornom chovani volaneho kodu
4) ak sa vnutorne chovanie volaneho kodu zmeni bez toho aby rozbilo dokumentovanu funkciu ale rozbije volajuci kod, ktory na tomto vnutornom chovani zalezi, potom je volajuci kod vadny, lebo zalezal na niecom, co vobec nemal riesit
5) ak sa chovanie zmeni tak, ze kod sa prestane chovat v sulade s dokumentaciou, tak sa jedna o zanesenie bugu a nie opravu
6) v takom pripade je mozne zmenit dokumentaciu API, resp. API samotne, ak je zmena nevyhnutna (dajme tomu, ak ste Microsoft a zistite, ze kvoli mizerne navrhnutemu poradiu loadovania DLL je podpora uzivatelskych symlinkov bezpecnostnym problemom). ale potom sa jedna o nekompatibilnu zmenu API a mala by byt odlisena verziou.
+1
+2
-1
Je komentář přínosný?
V dobre odokumentovanom kode
ventYl https://diit.cz/profil/ventyl-ventyl
27. 7. 2021 - 20:51https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuseV dobre odokumentovanom kode (a v zdravom ekosysteme) typicky plati, ze:
1) ak je dokumentovane chovanie nejake a kod sa chova inac, je kod chybny a je to bug
2) ak sa chovanie kodu zmeni tak, aby bolo v sulade s dokumentaciou a nejaky program sa rozbije, potom tento program bol vadny, lebo zalezal na zjavne nedokumentovanom chovani
3) ak program zalezi na nejakom detaile chovania ineho kodu, ktore nie je zdokumentovane, tak taky kod exploituje API a zalezi na vnutornom chovani volaneho kodu
4) ak sa vnutorne chovanie volaneho kodu zmeni bez toho aby rozbilo dokumentovanu funkciu ale rozbije volajuci kod, ktory na tomto vnutornom chovani zalezi, potom je volajuci kod vadny, lebo zalezal na niecom, co vobec nemal riesit
5) ak sa chovanie zmeni tak, ze kod sa prestane chovat v sulade s dokumentaciou, tak sa jedna o zanesenie bugu a nie opravu
6) v takom pripade je mozne zmenit dokumentaciu API, resp. API samotne, ak je zmena nevyhnutna (dajme tomu, ak ste Microsoft a zistite, ze kvoli mizerne navrhnutemu poradiu loadovania DLL je podpora uzivatelskych symlinkov bezpecnostnym problemom). ale potom sa jedna o nekompatibilnu zmenu API a mala by byt odlisena verziou.https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuse#comment-1347206
+
Tolik teorie, ale v praxi uživatelé za chybu považují tu změnu, která rozbila doposud fungující stav.
A pak jim vysvětlujte, že chyba byl ten předchozí stav (kdy jim to fungovalo dobře) a ten nový stav (kdy to mají rozbité) je oprava :-)
+1
0
-1
Je komentář přínosný?
Tolik teorie, ale v praxi
IT Joker https://diit.cz/profil/it-joker
27. 7. 2021 - 21:54https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuseTolik teorie, ale v praxi uživatelé za chybu považují tu změnu, která rozbila doposud fungující stav.
A pak jim vysvětlujte, že chyba byl ten předchozí stav (kdy jim to fungovalo dobře) a ten nový stav (kdy to mají rozbité) je oprava :-)https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuse#comment-1347213
+
Kym niekomu nieco treba vysvetlovat, je to ok. Sranda nastane, ked sa jedna o korporatny entagled kod a niekto z pouzivatelov zacne opravu cez menezment, ktory o tom vie kulove, blokovat. Potom ma clovek v maile thread s jednym menezerom, ktory sa dozaduje opravy a druhy thread s druhym menezerom, ktory sa dozaduje, aby sa najlepsie nic nemenilo.
+1
0
-1
Je komentář přínosný?
Preto ten prvy riadok ;)
ventYl https://diit.cz/profil/ventyl-ventyl
28. 7. 2021 - 09:59https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskusePreto ten prvy riadok ;)
Kym niekomu nieco treba vysvetlovat, je to ok. Sranda nastane, ked sa jedna o korporatny entagled kod a niekto z pouzivatelov zacne opravu cez menezment, ktory o tom vie kulove, blokovat. Potom ma clovek v maile thread s jednym menezerom, ktory sa dozaduje opravy a druhy thread s druhym menezerom, ktory sa dozaduje, aby sa najlepsie nic nemenilo.https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuse#comment-1347268
+
Pokud to tak bylo před lety specifikováno, OS se podle toho choval a dnes to někdo změnil, aniž by ten úmysl byl nějak diskutován, tak je to chyba. Byť to nové chování může připadat někomu logičtější. A mám pocit, že i ve woknech nebo dosu se to chovalo podobně - systém zkusil na disketu zapsat a až pak dostal hlášku, že to nejde.
+1
0
-1
Je komentář přínosný?
Pokud to tak bylo před lety
Jirka1 https://diit.cz/profil/jirka1
27. 7. 2021 - 21:37https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskusePokud to tak bylo před lety specifikováno, OS se podle toho choval a dnes to někdo změnil, aniž by ten úmysl byl nějak diskutován, tak je to chyba. Byť to nové chování může připadat někomu logičtější. A mám pocit, že i ve woknech nebo dosu se to chovalo podobně - systém zkusil na disketu zapsat a až pak dostal hlášku, že to nejde.https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuse#comment-1347210
+
„Protoze pred tim sla zavolat beztrestne funkce open i v pripade, ze v mechanice nebyla zadna disketa.“
Podle popisu soudím, že to byl právě záměr.
Tj. program mohl volat open předem a případnou chybu řešil až ve chvíli zápisu.
„A ted otazka... Prestava byt bug bugem kdyz se s nim nauci vetsina zit?“
Ona je ještě horší situace: Sice jde o chybu, ale daný produkt se už mezitím rozšířil a spousta jiných programů a uložených dat ne že se s tou chybou naučí žít, ale na takové chování spoléhá.
Takže oprava by naopak spoustu věcí rozbila.
+1
0
-1
Je komentář přínosný?
„Protoze pred tim sla zavolat
IT Joker https://diit.cz/profil/it-joker
27. 7. 2021 - 21:52https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuse„Protoze pred tim sla zavolat beztrestne funkce open i v pripade, ze v mechanice nebyla zadna disketa.“
Podle popisu soudím, že to byl právě záměr.
Tj. program mohl volat open předem a případnou chybu řešil až ve chvíli zápisu.
„A ted otazka... Prestava byt bug bugem kdyz se s nim nauci vetsina zit?“
Ona je ještě horší situace: Sice jde o chybu, ale daný produkt se už mezitím rozšířil a spousta jiných programů a uložených dat ne že se s tou chybou naučí žít, ale na takové chování spoléhá.
Takže oprava by naopak spoustu věcí rozbila.https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuse#comment-1347212
+
"Ona je ještě horší situace: Sice jde o chybu, ale daný produkt se už mezitím rozšířil a spousta jiných programů a uložených dat ne že se s tou chybou naučí žít, ale na takové chování spoléhá.
Takže oprava by naopak spoustu věcí rozbila."
to je prave to zda ma pak vetsina smulu :) Jinak jak pise klega vys, kdyz se zmenou uvnitr rozbije volajici kod nad tim, tak je to pak chyba koho?
+1
0
-1
Je komentář přínosný?
"Ona je ještě horší situace:
Bartt https://diit.cz/profil/ondrej-bartik
28. 7. 2021 - 08:11https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuse"Ona je ještě horší situace: Sice jde o chybu, ale daný produkt se už mezitím rozšířil a spousta jiných programů a uložených dat ne že se s tou chybou naučí žít, ale na takové chování spoléhá.
Takže oprava by naopak spoustu věcí rozbila."
to je prave to zda ma pak vetsina smulu :) Jinak jak pise klega vys, kdyz se zmenou uvnitr rozbije volajici kod nad tim, tak je to pak chyba koho?https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuse#comment-1347241
+
Prosim povedzte mi realne kto opuziva disketovu mechaniku a potrebuje aktulane jadro.
Ak je to nejaky priemyselny equipment co ma disketovku, tak tam sa urcite nemeni OS ale ostava ten co tam bol dodany.
+1
0
-1
Je komentář přínosný?
Prosim povedzte mi realne kto
bager https://diit.cz/profil/bager
27. 7. 2021 - 22:21https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuseProsim povedzte mi realne kto opuziva disketovu mechaniku a potrebuje aktulane jadro.
Ak je to nejaky priemyselny equipment co ma disketovku, tak tam sa urcite nemeni OS ale ostava ten co tam bol dodany.https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuse#comment-1347214
+
Proto taky trvalo tak dlouho než se na to přišlo a chyba se dostala i do LTS.
+1
0
-1
Je komentář přínosný?
Proto taky trvalo tak dlouho
Milan Bačík https://diit.cz/profil/mildaiv
28. 7. 2021 - 00:36https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuseProto taky trvalo tak dlouho než se na to přišlo a chyba se dostala i do LTS.https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuse#comment-1347228
+
Tam bylo i zajímavé mezidobí kolem přelomu století:
Diskety už byly mimo z hlediska objemů přenášených dat (i když ze setrvačnosti byly ještě široce podporované),
nástupci disket (Zip drive apod.) se moc nerozšířili a mechaniky byly drahé,
CD vypalovačky ještě nebyly tak rozšířené a byly drahé,
Internet se taky teprve rozšiřoval a připojení bylo pomalé.
Tehdy fungovaly věci jako šuplík na harddisk a přenášení disků (interních IDE, tehdejší počítače neměly žádný externí konektor, ke kterému by mělo smysl připojovat harddisk).
Technicky zdatnější (či chudší) uživatelé měli prostě odšroubovanou bočnici u PC a vyhozený Molex + IDE konektor ven :-)
+1
+3
-1
Je komentář přínosný?
Tam bylo i zajímavé mezidobí
IT Joker https://diit.cz/profil/it-joker
27. 7. 2021 - 22:29https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuseTam bylo i zajímavé mezidobí kolem přelomu století:
Diskety už byly mimo z hlediska objemů přenášených dat (i když ze setrvačnosti byly ještě široce podporované),
nástupci disket (Zip drive apod.) se moc nerozšířili a mechaniky byly drahé,
CD vypalovačky ještě nebyly tak rozšířené a byly drahé,
Internet se taky teprve rozšiřoval a připojení bylo pomalé.
Tehdy fungovaly věci jako šuplík na harddisk a přenášení disků (interních IDE, tehdejší počítače neměly žádný externí konektor, ke kterému by mělo smysl připojovat harddisk).
Technicky zdatnější (či chudší) uživatelé měli prostě odšroubovanou bočnici u PC a vyhozený Molex + IDE konektor ven :-)https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuse#comment-1347215
+
A nebo upilovaný caplíky u 5 a 1/4 palcové záslepky, a za ní ten Molex s IDE. Ještě se na to sekunďákem lepil nějakej pinčlík, aby se to dalo snadno vytáhnout. Později přišli šuplíky, kde se dovnitř dal ten disk snadno připojit a zastrčit do bedny.
+1
0
-1
Je komentář přínosný?
A nebo upilovaný caplíky u 5
Milan Bačík https://diit.cz/profil/mildaiv
28. 7. 2021 - 00:43https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuseA nebo upilovaný caplíky u 5 a 1/4 palcové záslepky, a za ní ten Molex s IDE. Ještě se na to sekunďákem lepil nějakej pinčlík, aby se to dalo snadno vytáhnout. Později přišli šuplíky, kde se dovnitř dal ten disk snadno připojit a zastrčit do bedny.https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuse#comment-1347229
+
Šuplíky přišly dost brzo, já ho měl asi v roce 1993. Ovšem jejich problém byl občas mizerné kontakty a hlavně vzájemná nekompatibilita. Pokud se přenášel disk, tak na druhé straně musel být šuplík od stejného výrobce. Pokud ne, tak to v tom lepším případě do sebe mechanicky nepasovalo. V tom horším se dal odpravit disk, protože propojovací konektor byl u všech typů stejný, ale jeho zapojení se lišilo. A 12V na IDE sběrnici nebylo moc zdravých...
+1
0
-1
Je komentář přínosný?
Šuplíky přišly dost brzo, já
Jirka1 https://diit.cz/profil/jirka1
28. 7. 2021 - 06:06https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuseŠuplíky přišly dost brzo, já ho měl asi v roce 1993. Ovšem jejich problém byl občas mizerné kontakty a hlavně vzájemná nekompatibilita. Pokud se přenášel disk, tak na druhé straně musel být šuplík od stejného výrobce. Pokud ne, tak to v tom lepším případě do sebe mechanicky nepasovalo. V tom horším se dal odpravit disk, protože propojovací konektor byl u všech typů stejný, ale jeho zapojení se lišilo. A 12V na IDE sběrnici nebylo moc zdravých...https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuse#comment-1347232
+
"nástupci disket (Zip drive apod.) se moc nerozšířili"
Tak ještě že u nás na fakultě měly všechny stroje ZIP mechaniku a já si ještě předtím prozíravě koupil stroj se ZIP mechanikou taky. :)
+1
0
-1
Je komentář přínosný?
"nástupci disket (Zip drive
Gath G https://diit.cz/profil/ggeal
28. 7. 2021 - 01:39https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuse"nástupci disket (Zip drive apod.) se moc nerozšířili"
Tak ještě že u nás na fakultě měly všechny stroje ZIP mechaniku a já si ještě předtím prozíravě koupil stroj se ZIP mechanikou taky. :)https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuse#comment-1347230
+
Pozor, existovaly i pokročilé floppy disky v 3,5" formátu s kapacitou kolem 21MB - mamka je coby EEG laborantka používala ukládání pořízených EEG záznamů. Ten přístroj jel ve Zlínském špitále myslím až někdy do roku 2013-2015.
+1
0
-1
Je komentář přínosný?
Pozor, existovaly i pokročilé
Robin Seina https://diit.cz/profil/robin-seina
28. 7. 2021 - 17:45https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskusePozor, existovaly i pokročilé floppy disky v 3,5" formátu s kapacitou kolem 21MB - mamka je coby EEG laborantka používala ukládání pořízených EEG záznamů. Ten přístroj jel ve Zlínském špitále myslím až někdy do roku 2013-2015.https://diit.cz/clanek/chyba-v-linuxovem-jadre-ovlivnuje-praci-s-disketou/diskuse#comment-1347324
+
dobrá zajímavost.
ale napsat "chvíly", to je taky moc zajímavé ;-)
A na to přesně je v článku odkaz "nahlásit chybu", protože takhle v komentáři to po opravení vypadá vytrženě. Měl jsem omylem ve větě dvakrát slovo "používaly" (což mi právě odkazem někdo hned nahlásil) a to jedno vymazání se mi povedlo opravdu kvalitně, posunuté o pár znaků doleva. Stane se, zvlášť z mobilu.
.... jojo LS-120 tu ještě někde mám zrala jak magnetoopticke 120MB diskety tak i klasické 3,5 palc. diskety a dokonce i o velikosti 2,88 MB. Mechanika se pripojovala už na IDE/PATA...
Po uvedené opravě nicméně s flagem i bez něj dochází v případě, že disketa není v mechanice nebo je chráněna proti zápisu, k vrácení chyby Read-only file system okamžitě.
to je příšerná věta.. jsem si jí musel přečíst 3x než jsem pochopil obsah.
To vybizi k zajimave diskusi. Je to opravdu bug? A ne treba Fix? Protoze pred tim sla zavolat beztrestne funkce open i v pripade, ze v mechanice nebyla zadna disketa. A az po pristupu k ni uzivatel zjistil, ze tam nic neni. To, ze to ted vraci chybu hned pri pokusu ji "otevrit" me osobne prijde v poradku a spise predchozi stav vnimam jako chybny.
A ted otazka... Prestava byt bug bugem kdyz se s nim nauci vetsina zit? A pak nasledne, kdyz se objevi fix, ktery hazi vidle do toho jak se ta vetsina naucila s tim bugem zit, tak stane se pak ten fix bugem? Nebo vetsina ma smulu?
Tohle je dobrá otázka. Vzhledem k tomu, že flag O_NDELAY by měl způsobit, že volání open() nečeká na reálný výsledek a vždy končí s nulou (alespoň co jsem si tak prošel popisy funkce open() při psaní článku) a chyba se řeší jinak, pak bych původní chování označil za vlastnost a jeho změnu za bug. Ale vypadá to, že většina lidí zastává názor přesně opačný :)
V dobre odokumentovanom kode (a v zdravom ekosysteme) typicky plati, ze:
1) ak je dokumentovane chovanie nejake a kod sa chova inac, je kod chybny a je to bug
2) ak sa chovanie kodu zmeni tak, aby bolo v sulade s dokumentaciou a nejaky program sa rozbije, potom tento program bol vadny, lebo zalezal na zjavne nedokumentovanom chovani
3) ak program zalezi na nejakom detaile chovania ineho kodu, ktore nie je zdokumentovane, tak taky kod exploituje API a zalezi na vnutornom chovani volaneho kodu
4) ak sa vnutorne chovanie volaneho kodu zmeni bez toho aby rozbilo dokumentovanu funkciu ale rozbije volajuci kod, ktory na tomto vnutornom chovani zalezi, potom je volajuci kod vadny, lebo zalezal na niecom, co vobec nemal riesit
5) ak sa chovanie zmeni tak, ze kod sa prestane chovat v sulade s dokumentaciou, tak sa jedna o zanesenie bugu a nie opravu
6) v takom pripade je mozne zmenit dokumentaciu API, resp. API samotne, ak je zmena nevyhnutna (dajme tomu, ak ste Microsoft a zistite, ze kvoli mizerne navrhnutemu poradiu loadovania DLL je podpora uzivatelskych symlinkov bezpecnostnym problemom). ale potom sa jedna o nekompatibilnu zmenu API a mala by byt odlisena verziou.
Tolik teorie, ale v praxi uživatelé za chybu považují tu změnu, která rozbila doposud fungující stav.
A pak jim vysvětlujte, že chyba byl ten předchozí stav (kdy jim to fungovalo dobře) a ten nový stav (kdy to mají rozbité) je oprava :-)
Preto ten prvy riadok ;)
Kym niekomu nieco treba vysvetlovat, je to ok. Sranda nastane, ked sa jedna o korporatny entagled kod a niekto z pouzivatelov zacne opravu cez menezment, ktory o tom vie kulove, blokovat. Potom ma clovek v maile thread s jednym menezerom, ktory sa dozaduje opravy a druhy thread s druhym menezerom, ktory sa dozaduje, aby sa najlepsie nic nemenilo.
Pokud to tak bylo před lety specifikováno, OS se podle toho choval a dnes to někdo změnil, aniž by ten úmysl byl nějak diskutován, tak je to chyba. Byť to nové chování může připadat někomu logičtější. A mám pocit, že i ve woknech nebo dosu se to chovalo podobně - systém zkusil na disketu zapsat a až pak dostal hlášku, že to nejde.
„Protoze pred tim sla zavolat beztrestne funkce open i v pripade, ze v mechanice nebyla zadna disketa.“
Podle popisu soudím, že to byl právě záměr.
Tj. program mohl volat open předem a případnou chybu řešil až ve chvíli zápisu.
„A ted otazka... Prestava byt bug bugem kdyz se s nim nauci vetsina zit?“
Ona je ještě horší situace: Sice jde o chybu, ale daný produkt se už mezitím rozšířil a spousta jiných programů a uložených dat ne že se s tou chybou naučí žít, ale na takové chování spoléhá.
Takže oprava by naopak spoustu věcí rozbila.
"Ona je ještě horší situace: Sice jde o chybu, ale daný produkt se už mezitím rozšířil a spousta jiných programů a uložených dat ne že se s tou chybou naučí žít, ale na takové chování spoléhá.
Takže oprava by naopak spoustu věcí rozbila."
to je prave to zda ma pak vetsina smulu :) Jinak jak pise klega vys, kdyz se zmenou uvnitr rozbije volajici kod nad tim, tak je to pak chyba koho?
Prosim povedzte mi realne kto opuziva disketovu mechaniku a potrebuje aktulane jadro.
Ak je to nejaky priemyselny equipment co ma disketovku, tak tam sa urcite nemeni OS ale ostava ten co tam bol dodany.
Proto taky trvalo tak dlouho než se na to přišlo a chyba se dostala i do LTS.
Tam bylo i zajímavé mezidobí kolem přelomu století:
Diskety už byly mimo z hlediska objemů přenášených dat (i když ze setrvačnosti byly ještě široce podporované),
nástupci disket (Zip drive apod.) se moc nerozšířili a mechaniky byly drahé,
CD vypalovačky ještě nebyly tak rozšířené a byly drahé,
Internet se taky teprve rozšiřoval a připojení bylo pomalé.
Tehdy fungovaly věci jako šuplík na harddisk a přenášení disků (interních IDE, tehdejší počítače neměly žádný externí konektor, ke kterému by mělo smysl připojovat harddisk).
Technicky zdatnější (či chudší) uživatelé měli prostě odšroubovanou bočnici u PC a vyhozený Molex + IDE konektor ven :-)
A nebo upilovaný caplíky u 5 a 1/4 palcové záslepky, a za ní ten Molex s IDE. Ještě se na to sekunďákem lepil nějakej pinčlík, aby se to dalo snadno vytáhnout. Později přišli šuplíky, kde se dovnitř dal ten disk snadno připojit a zastrčit do bedny.
Šuplíky přišly dost brzo, já ho měl asi v roce 1993. Ovšem jejich problém byl občas mizerné kontakty a hlavně vzájemná nekompatibilita. Pokud se přenášel disk, tak na druhé straně musel být šuplík od stejného výrobce. Pokud ne, tak to v tom lepším případě do sebe mechanicky nepasovalo. V tom horším se dal odpravit disk, protože propojovací konektor byl u všech typů stejný, ale jeho zapojení se lišilo. A 12V na IDE sběrnici nebylo moc zdravých...
"nástupci disket (Zip drive apod.) se moc nerozšířili"
Tak ještě že u nás na fakultě měly všechny stroje ZIP mechaniku a já si ještě předtím prozíravě koupil stroj se ZIP mechanikou taky. :)
Pozor, existovaly i pokročilé floppy disky v 3,5" formátu s kapacitou kolem 21MB - mamka je coby EEG laborantka používala ukládání pořízených EEG záznamů. Ten přístroj jel ve Zlínském špitále myslím až někdy do roku 2013-2015.
Pro psaní komentářů se, prosím, přihlaste nebo registrujte.