Portál AbcLinuxu, 5. května 2025 23:13
Slashdot informuje, že dlouholetý jaderný hacker Alan Cox se rozhodl opustit vývoj jaderného subsytému TTY. Důvodem je prý ostrá kritika ze strany Linuse Torvaldse. V oznámení Alan prohlásil: "Už toho mám dost."
Tiskni
Sdílej:
jak male deti. pritom obaja mali kus pravdy.
pritom obaja mali kus pravdy.no nevím, nechce se mi to studovat celé, ale připadá mi, že v tomto případě má pravdu pouze Alan ... Linus opět uplatňuje to, co u něj někteří označují jako "pragmatický přístup", a na základě toho Alana úplně nesmyslně napadá, bez hluboké znalosti problému - ale třeba se mýlím a třeba Linus rozumí Alanovu kódu lépe než Alan sám
nicmene to vypada ze se to trochu uklidnilo a diskuze pokracuje uz zase spise na technice urovni, tak snad to nakonec dobre dopadne. linus by si mohl odpustit ty idioty atd a mohlo se to vyresit v klidu...
zrovna Theo de Raat je jeden z tych, co si vzdy davaju pozor na to co povedia/napisu
kdejaky zdivocely polofungujici patch? muzete uvest par prikladu?
Skutočne je to až tak zlé? Ja som sa jadru nikdy nevenoval, ale ako si tak čítam jaderné noviny a pod., tak mi to pripadá, že na linuxovom kerneli pracujú najgeniálnejší ľuďia na planéte. Takže som predpokladal, že aj ten kód je adekvátne kvalitný. To, čo popisuješ ty, znie fakt hrozne
Pôvodne som ti písal obrovskú odpoveď, celý elaborát, ale tesne pred dokončením mi prvý raz tento rok padol firefox úplne z ničoho nič a celé je to v **** Už ma dávno nič tak nenasralo
Takže len: dík za odpoveď. Možno časom to napíšem znovu. Ale už to budem písať do súboru a sem ho len attachnem, haha
Ok, hotovo, napísal som to znova (aj keď je to iné, než to bolo) Slovo filozof nemám rád. Obvykle v kontraste s jeho pôvodným významom znamená v dnešnej dobe ľudí, ktorí vedu nenávidia. A tí, ktorí vedu skutočne milujú sa dnes volajú matfyzáci
Programujem z času na čas jeden webový obchod v PHP, kde je desný framework osCommerce, kde programátori uplatnili pragmatickosť do extrému a podľa toho to aj vyzerá. Je to obrovské neudržateľné monštrum, kde sa nedá rozumne nič spraviť. Takže bugfixy a pridávanie features vyzerajú tak, že sú často úplne nesystémové. Dôvod je jednoduchý, nemáme pol roka na opravu celého systému -- keď nefunguje nejaká sprostosť je oveľa jednoduchšie to tam proste nejak naprasiť za 5 minút Na druhej strane, ja som rovnaký idealista ako ty, takže postupne časti toho systému modularizujem a zapuzdrujem, odstraňujem duplicity, takže už je to teraz úplne inde, ako keď som k tomu prvý raz prišiel (vtedy to bol fakt des) a momentálne mám v pláne vyrobiť automatický SQL->Class mapper pomocou metaclassov, ktorý z sql tabuľky automaticky vyrobí triedy a celé by to malo fungovať tak, že nebude treba písať takmer žiadne SQL (doteraz sa muselo písať skoro všade a nevieš si predstaviť tú prácu, keď sa zmenila náväznosť nejakých tabuliek a pod. -> absolutný des, ručne bolo treba nahradzovať SQL cez celý kód). A dokonca aj PHP vychádza v ústrety pretože vo verzii 5.3, ktorá nedávno vyšla, pridali lambda funkcie a late-static binding, takže sa s tým dajú už robiť celkom srandy konečne (sú to síce úplne klasické veci v normálnych jazykoch, ale že sa to raz dostane do odporného PHP som fakt nečakal)
To bude paráda, až to tam bude. Myslím, že na niečom podobnom funguje ruby on rails, ale o žiadnom podobnom systéme neviem skoro nič, proste ma samého napadlo, že vlastne celé sa to dá naprogramovať rozumne
Takže konečne k tomu linuxu: podľa mňa to nemôže byť zlý systém so zlou architektúrou (a la osCommerce a ďalšie veľké neudržateľné piece of crap softvéry), ale musí to byť veľmi dobre navrhnuté, keď je každý mesiac možné meniť tak rozmanité veci ako správu pamäte, cachce, swap, scheduler a ja neviem čo všetko. V systéme so zlou architektúrou (opäť zoberiem ako príklad ten osCommerce, ktorému som sa venoval najdlhšie) je to totiž tak, že tam nespravíš žiadnu serióznu prácu. Ak ho chceš opraviť tak po 3 rokoch skončíš s tým, že si ho kompletne prepísal A to je len webový obchod, čo je relatívne malá aplikácia (počet riadkov kódu nebudem písať, pretože to nie je relevantné. Ako postupuje čas a ja ten systém vylepšujem totiž počet riadkov neustále klesá
) Takže tak nejak. Inak samozrejme chápem, že si to bral ako nadsádzku, ale očividne si doteraz nemal skúsenosť s poriadne hnusnou neudržiavanou aplikáciou
Btw, spomínam si, že som videl niečo o diskusii medzi Linusom a tvorcom minixu. Autor minixu sa Linusovi vysmieval, že jeho operačný systém je úplne desný, žiadna architektúra, makrojadro s modulmi (minix má mikrojadro) a celé, že to je naprasené a Linus mu na to odpovedal, že až minix budú použivať aspoň traja ľudia, tak nech sa ozve znova Ale toto bolo AFAIK už veľmi dávno, takže odvtedy sa linux asi veľmi zmenil a ja o jeho architektúre nemám ani najmenšiu predstavu a do jadier sa tiež veľmi nevyznám.
OpenBSD som nevidel, ale musí to byť nádherný kód, podľa toho čo hovoríš, keď ti pre mňa (programátora osCommerce) dokonalý linux pripadá ako odpad (nadsádzka! ). Určite sa naňho časom pozriem.
Add Unix: njn, ako to napísal Raymond (dúfam, že to bol on): "It creaks and clanks, but it gets it's job done."
Plan9 som skúšal a pripadal mi navlas rovnaký ako Squeak: Geniálne myšlienky, ale realizácia úplne desivá. Na hranie ok, ale robiť by som v tom nemohol
Presne tak. Skutočné umenie programovania je robiť zložité veci jednoducho
No, tak tiež som ich videl každý len pár dní. Squak + smalltalk možno trochu dlhšie. Skutočne sa mi páčil ten koncept "všetko je objekt" a jeho systém metatried a to, akým spôsobom je urobená tá virtuálna mašina, to že sa systém dá meniť za chodu, veľmi dobre spravený debugger a vyhľadávanie volaní metód, proste paráda, som prečítal kus nejakej knihy Ale inak mi ovládanie toho prostredia veľmi nesadlo. Určite je to dosť o zvyku a kopa ľudí je schopných v tom niečo spraviť. Ale ja potrebujem svoj window manager a vim, alebo aspoň emacs, bez toho som totiž ako bez ruky. Squeak s de facto vlastným operačným systémom, kde nie sú žiadne štandardné nástroje skutočne nie je veľmi použiteľný. A Plan9 sa, ak sa dobre pamätám, sa ovladá podivným mouse chordingom a tiež nemal žiadne poriadne editovacie nástroje ani window manager. Ale možno sa do squeaku aj Plan9 dajú nejako pretlačiť natívne linuxové aplikácie? Ak áno, tak by to bola paráda.
One of my most productive days was throwing away 1000 lines of code.
—Ken Thompson
... samozrejme chápem, že si to bral ako nadsádzku, ale očividne si doteraz nemal skúsenosť s poriadne hnusnou neudržiavanou aplikáciouTo jsem tedy opravdu neměl, upřímně to přiznávám.
Plan9 som skúšal a pripadal mi navlas rovnaký ako Squeak: Geniálne myšlienky, ale realizácia úplne desivá. Na hranie ok, ale robiť by som v tom nemoholNešlo by spíš o nezvyk? Přece jen, unix už je tu sakra dlouho...
To je samozrejme celkom možné, ale ja o tom nič neviem, tak som sa chcel uistiť
No tak to neviem. 15% výkonu je dosť. A ak je nenávratne stratený už len kvôli architektúre, tak je to pre jadro (pre všetko) ako linux veľmi zlé, pretože v niektorých nasadeniach je ten výkon skutočne potrebný. Ale ak je to tak, že by sa v prípade potreby nejako ten výkon dal zvýšiť, tak by som samozrejme bral mikrojadro.
Netuším, kto ťa tu bude žrať, pochybujem, že je moc ľudí, ktorí videli zdrojáky linuxu a zároveň openBSD. Ja osobne som ešte nevidel ani riadok kódu žiadneho skutočného jadra. Len jedného virtuálneho v Jave
Myslím, že sa bavíme každý o trochu niečom inom. Linux vs. GNU/Linux, kernel vs. OS. Aby som to upresnil, tak kernel geniálny, OS nepoužiteľný Pokiaľ viem, tak pre Plan9 (kernel) existuje len oficiálny Plan9 (OS) s nepoužiteľným window managerom, GUI a aplikáciami. Keby niekto zobral jadro Plan9 a na to nabalil pre začiatok linuxové aplikácie (samozrejme, nie tie základné, ktoré odrážajú *nixový filozofiu a nijak nevyužívajú Plan9), tak by som mal skutočnú radosť.
To znie moc dobre, pár tisíc riadkov kódu sa dá ešte kompletne nacpať do hlavy a pochopiť
Jj, procfs je dobrá vec. Nejakú takú myšlienku používalo aj wmii, konfigurovalo a ovládalo sa pomocou zápisu do súborov procesu, vytvorenie novej plochy sa robilo vytvorením súboru (alebo to bol adresár a v ňom sa potom pracoval ďalej? Už si to moc nepamätám, sú to roky) a pod. Fakt paráda
Uau, netušil som, že na minixe sa ešte stále pracuje. Myslel som, že je to len historický pokus. Ja osobne by som asi na tom pracovať prestal, keby to nemalo žiadny úspech
Aby som to upresnil, tak kernel geniálny, OS nepoužiteľnýTo je docela dobře řečeno.
Jj, procfs je dobrá vec. Nejakú takú myšlienku používalo aj wmii, konfigurovalo a ovládalo sa pomocou zápisu do súborov procesu, ...Jo, lidi ze suckless.org se technologiemi kolem Plan 9 nechali docela inspirovat. Pár aplikací na bází 9P protokolu tam vzniklo (a wmii je jednou z nich). Ještě jsem na ně pořádně nekoukal, ale rozhodně to beru jako chvályhodnou činnost.
Uau, netušil som, že na minixe sa ešte stále pracuje. Myslel som, že je to len historický pokus. Ja osobne by som asi na tom pracovať prestal, keby to nemalo žiadny úspechPozor, současný Minix 3 nemá se starými Minixy 1 a 2 používanými čistě pro výuku operačních systémů příliš společného (nejvíc asi jméno
MINIX 3 is a new open-source operating system designed to be highly reliable, flexible, and secure. It is loosely based somewhat on previous versions of MINIX, but is fundamentally different in many key ways. MINIX 1 and 2 were intended as teaching tools; MINIX 3 adds the new goal of being usable as a serious system on resource-limited and embedded computers and for applications requiring high reliability This new OS is extremely small, with the part that runs in kernel mode under 4000 lines of executable code. The parts that run in user mode are divided into small modules, well insulated from one another. For example, each device driver runs as a separate user-mode process so a bug in a driver (by far the biggest source of bugs in any operating system), cannot bring down the entire OS. In fact, most of the time when a driver crashes it is automatically replaced without requiring any user intervention, without requiring rebooting, and without affecting running programs.Byl jsem na Andrewově přednášce loni v Praze, která byla věnována právě novému Minixu, resp. architektuře mikrojader. Vcelku si mě tam pro svou věc získal, musí přiznat.
Nevím přesně, odkud jsem si těch 15% vycucal, snad zaznělo někde v té debatě. Je dost nebezpečné se takhle ohánět číslama a radši jsem to neměl dělat. Podstatné je, že se takové QNX používá ve vysoce kritických hard real-time systémech a je taky postaveno na mikrojádru, takže to nemůže být až tak zlé.Pozor pozor, to je úplně něco jiného. Hard realtime neznamená "rychle", ale "určitě". Realtimové systémy právě obětují propustnost za spolehlivost, neboli: nejsou optimalizované na průměrný případ, ale na nejhorší možný případ. Mít realtimový počítač na hry znamená, že máš jen 10fps, ale zato záruku, že to pod těch deset nikdy neklesne. Čímž nechci říkat, že QNX je pomalý.
Byl jsem na Andrewově přednášce loni v Praze, která byla věnována právě novému Minixu, resp. architektuře mikrojader. Vcelku si mě tam pro svou věc získal, musí přiznat.Osobně si myslím, že tento koncept už je mrtvý. 15% výkonu dnes jen tak někdo neobětuje a monolitické systémy (Win, Lin) jsou dostatečně spolehlivé. Osobně spíš věřím objektovým systémům ala Singularity.
Ad paralelizácia: už ma to napadlo predtým, keď som si všimol niečo o objektovom kerneli, čo spomínal Alblaho, čo je v podstate alternatívny prístup k bežnému (C-like) procedurálnemu, ale nijak extrémne sa to vo výsledku nelíši (len je asi čistejší kód a a rozumnejší kód). O dosť radikálnejší prístup by bol funkcionálny. Takže, existuje nejaký funkcionálny kernel (IMHO pre paralelizáciu najvhodnejší prístup), proof of concept, alebo aspoň článok? Funkcionálne jazyky sú úplne geniálne, ale ešte som nevidel ani jediný poriadny a veľký program v nich napísaný. Takže smelo do mňa; chcem počuť mená nejakých zaujímavých programov. Momentálne ma napadá len darcs, ale ten nie je nijak zvlášť geniálny a má kopu nedostatkov
keď som si všimol niečo o objektovom kerneli, čo spomínal Alblaho, čo je v podstate alternatívny prístup k bežnému (C-like) procedurálnemu, ale nijak extrémne sa to vo výsledku nelíšiNemyslel jsem to tak, že se napíše tradiční kernel třeba v C++. U Singularity běží celý OS a aplikace v jednom adresovém prostoru (tudíž je velmi rychlé přepínání kontextu a dobře se sdílí data). Objekty tam normálně žijí vedle sebe. Objekty z různých aplikací na sebe ale nemají reference (a není způsob, jak ji získat), komunikují mezi sebou přes nějaké předdefinované rozhraní které navíc obsahuje i protokol (state machine).
Samozrejme, že nie v C++, už len preto, že to nie je objektový jazyk Je mi jasné, že by sa to spravilo tak ako píšeš (čiže správne objektovo: nie C++ objekty, ale napríklad smalltalk) a je to pekné riešenie. Len ja objektové programovanie aj tak beriem len ako drobné rozšírenie toho bežného procedurálneho. Na rozdiel od funkcionálneho; preto som bol zvedavý.
Dnes ma zasypávaš odkazmi. Dúfam, že sa tým trochu prehrabem a nie že to len ako obvykle zabookmarkujem a už sa k tomu nikdy nedostanem
Jj, tiež už som dospel do štádia, kedy toho hrania s geniálnymi, ale na prvý pohľad (a druhý a tretí...) nepoužiteľnými myšlienkami bolo trochu moc Takú knihu by som bral všetkými desiatimi
Ale ja našťastie nemusím s informatikou nič riešiť, mám ju len ako koníček
Takmer so všetkých 100% súhlasím Okrem záveru. Napísať interpreter (neviem či je to to správne slovo) ELF binárky predsa nemôže byť tak veľký problém (BSD systémy majú porty pre linux, ktoré fungujú presne takto, nie?). A podľa mňa to už niekto urobil, len sme sa to zatiaľ nepokúšali zistiť (aspoň ja teda nie)
Realtimové systémy právě obětují propustnost za spolehlivost, neboli: nejsou optimalizované na průměrný případ, ale na nejhorší možný případ. Mít realtimový počítač na hry znamená, že máš jen 10fps, ale zato záruku, že to pod těch deset nikdy neklesne.Teď čtu Beautiful Architecture a třetí kapitola je o projektu Darkstar. Je to projekt Sun Labs zabývající se vytvořením "frameworku" pro masivní multiplayerové online hry, které právě něco takového dělají – upřednostňují latenci před propustností. Taková MMO je vlastně (soft) realtime systém, ale kdyby autoři zvládli jenom 10 FPS, asi by je hráči poslali kam slunce nesvítí
Aha, dík za upresnenie. Btw, tie odkazy nefungujú (ale nemusíš ich opravovať, som schopný sa tam dostať aj tak ). Ten minix znie fakt dobre. Veľmi pekná architektúra. Netuším, či a ako je to použiteľné v praxi, ale určite sa na to časom pozriem, už len preto, aby som si trochu rozšíril obzor.
Samoopravitelné nebo alespoň odolné systémy jsou pěkná myšlenka. Já si ale myslím, že než systém šíleně složité logiky to lépe řeší znásobení základní infrastruktury a diverzifikace implementací. Pak je prakticky vždy možné dosáhnout výsledku jinou cestou, takže prostě nemocné prvky se odizolují a na systém jako takový vliv mít nebudou. Spolu s genetickým programováním je možné odizolované prvky nahradit prototypy nové generace a jede se dál.
odborně řečeno se tomu říká regreseZjevně Linux dospěl do takového stádia, že na takové věci musí brát zřetel. A že se to mohlo stát je nejspíš zásluhou toho, že Linus je – no prostě jaký je. Totéž asi s tím OpenBSD a Theem, si myslím – i když ti jsou zase v úplně jiném bodě, výhodném pro jiné účely.
...ale trend je kupodivu rostoucí.
Len je otázka, že trend čoho. Určite počtu riadkov
Jde o přístup obou projektů k vývoji software.Jasně. A já si myslím, že ten je velmi dobře představován jejich vůdčími osobnostmi, možná dokonce utvářen. Se zbytkem souhlasím – Linux určitě není takový piece of crap, aby se zbortil jako domeček z karet
já si myslím, že ten je velmi dobře představován jejich vůdčími osobnostmi, možná dokonce utvářenRozhodně. Je poměrně vypovídající, že oba dva stáli na samotném počátku vzniku open source "hnutí". Každý v trochu jiném táboře, s trochu jinými prioritami. Linus nastartoval Linux, Theo zase stál při zrodu NetBSD. Spojuje je to, že to jsou to oba vynikající softwaroví inženýři a namyšlení klackové přesvědčení o své vlastní pravdě (tak už to u schopných lidí často bývá).
připadá mi, že v tomto případě má pravdu pouze AlanAle je to konzistentní. Dlouhodobě prosazuje, že pokud kvůli změně v jádře přestane fungovat userspace, tak je to špatná změna - i kdyby se ukázalo, že je to kvůli vadnému userspace.
Coz me koneckocu prijde jako jedna z nejpodivnejsich veci na Linuxu. Vzdyt je to koncepcne jenom nejaka pipa z drobnyma upravama posilanych informaci. Obavam se, ze vsechny problemy s tty vychazeji ze snahy udrzovat kompatibilitu z (dnesniho pohledu) nesmyslnym tradicne unixovym rozhranim.
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.