Internet Info, s.r.o. Lupa Měšec Podnikatel Root Zdroják DigiZone Slunečnice Vitalia TopDrive KupDnes Navrcholu NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

Hlavní navigace

Názory k článku
HelenOS nikdy nebude dokončený, říká jeho autor Jakub Jermář

JaGa
JaGa (neregistrovaný) ---.anetliberec.cz
3. 5. 2011 1:25 Nový

Pěkný rozhovor!

celé vlákno

Pěkný rozhovor.
Jen mě zaujalo:
,,Když havaruje VFS, tak je konec. Vy sice můžete pořád přepínat mezi konzolemi, ale už nejste schopni vůbec nic podstatného udělat."

A co takhle ten havarovaný ,modul zresetovat?

Pindal
Pindal (neregistrovaný) ---.151.broadband12.iol.cz
3. 5. 2011 7:02 Nový

Re: Pěkný rozhovor!

celé vlákno

Hm, a nedělá se to tak že se znovu zavede z úložného zařízení? A když nejde VFS... :)

Martin Děcký aura:100
3. 5. 2011 8:24 Nový

Re: Pěkný rozhovor!

celé vlákno

A co takhle ten havarovaný modul zresetovat?

Ano, tohle je něco, co třeba lidé kolem MINIXu uvádějí jako univerzální všelék a opakují to téměř jako svou mantru :)

Samozřejmě restart spadlého serveru může krátkodobě pomoci, ale problém to ve skutečnosti neodstraní. Pokud je třeba ve VFS serveru nějaká chyba nebo neošetřený stav, tak je velmi pravděpodobné, že se po restartu projeví znovu — dříve či později.

V současné době v HelenOSu tedy spadlé servery nerestartujeme, i když jsme o tom už párkrát uvažovali alespoň jako o jakémsi prostředku poslední záchrany (potřebovali bychom k tomu zřejmě nějaký session manager, který zatím nemáme).

Chceme, aby VFS ani jiný esenciálně důležitý systémový server prostě nepadal, a toho se snažíme dosáhnout jak kvalitním kódem a správným "softwarově-inženýrským" přístupem, tak různými pokusy o formální verifikaci správnosti kódu.

Miroslav Prýmek aura:58
3. 5. 2011 8:29 Nový

Re: Pěkný rozhovor!

celé vlákno

>> různými pokusy o formální verifikaci správnosti kódu.

Můžeš se o tom trochu rozepsat (nebo odkázat na nějaké vaše texty)?

Martin Děcký aura:100
3. 5. 2011 8:49 Nový

Re: Pěkný rozhovor!

celé vlákno

Stav asi před rokem jsem popsal v tomto článku:

Martin Děcký: A Road to a Formally Verified General-Purpose Operating System, in Proceeding of the 1st International Symposium on Architecting Critical Systems (federated with CompArch 2010), LNCS 6150, Jun 2010

Aktuálně pracujeme na dvou dalších článcích s konkrétními výsledky. Vše je samozřejmě stále work-in-progress, ostatně jako celý HelenOS :)

M
M (neregistrovaný) ---.net.upcbroadband.cz
7. 5. 2012 1:52 Nový

Re: Pěkný rozhovor!

celé vlákno

Největší problém je např. selhání komunikace se záznamovým HW, u kterého se kvůli poruše zařízení nebo rušení komunikační cesty prodlouží doba odezvy nebo sníží rychlost komunikace (zmetek USB kabel), uvolnění konektoru (častý případ u SATA a eSATA), rušení komunikace bezdrátovým vysílačem (WIFI, kabely (někdo přiskřípl kabel nebo ho přejel kolečkovou židlí),.. ).
To není dodnes ošetřené ani na Windows, ani na Linuxu, ani na MacOS,...
Řeší to jen tím, že když vyprší timeout, tak to zkusí znovu, třeba ještě párkrát a pak konec a data jsou nepřístupná, ty co se měly uložit většinou ztracená, program co je ukládal přestane komunikovat s OS a ten ho na timeout ukončí nebo dokonce spadne VFS nebo více částí OS apod.
Přitom uživatele vůbec neupozorní, že došlo k problému s komunikací se zařízením XY, nezeptají se zařízení na jeho aktuální SMART stav, nebo že došlo ke snížení přenosové rychlosti kvůli chybám a tak se začaly přenosy opakovat, ..
a nevypíšou ten stav a tu chybu na obrozaovku se zvýrazněním překročených nebo chybných parametrů.

A uživatel marně čeká co se bude dít a doufá, že se to snad rozběhne, že jen nějakej proces zrovna zaměstnal víc procesor,...
Pak nastane chvíle, kdy na to zařízení má zapsat jinej proces nebo dokonce přímo z OS a výtuh a nebo zas jen zpomalené reakce.

Uživatel po dlouhém čekání zvolí restart, a musí jak inspektor procházet logy co se stalo a když se ani ty logy neuložily, tak je nahranej a detektivka začíná. Přitom by stačilo napsat na obrazovku srozumitelnou řečí co se děje, proč se reakce systému zpomalily, co nastalo za chybu, případně to zkusit i odeslat třeba po síti nebo uložit na jinej HW v lokálním počítači nebo v síti(parametry serveru na chyby by byly přednastavené a uložené v paměti už od načítání OS),...

belzebub
belzebub (neregistrovaný) ---.net.upcbroadband.cz
3. 5. 2011 14:53 Nový

Re: Pěkný rozhovor!

celé vlákno

Obavam se ze pokud bude projekt psan v C/C++, tak "pokusy o formalni verifikaci spravnosti kodu" zustanou jenom pokusy.. (za predpokladu ze neplacam blbosti a stale pouzivate C/C++)

Neuvazovali jste treba o nejakem kulturnejsim (rekneme funkcionalnim) jazyku?

Osobne jsem presvedcen ze pokud je cilem spolehlivost a stabilita, funkcionalnim jazykum se nic nevyrovna

Martin Děcký aura:100
3. 5. 2011 15:20 Nový

Re: Pěkný rozhovor!

celé vlákno

Obavam se ze pokud bude projekt psan v C/C++, tak "pokusy o formalni verifikaci spravnosti kodu" zustanou jenom pokusy

Problém není v programovacím jazyku, ale v množství abstrakce a sémantické informace, která je v kódu nějak implicitně nebo explicitně obsažena. Souhlasim, že lze asi s jistou básnickou licencí obecně říci, že Java se verifikuje snadněji než C a funkcionální jazyky se verifikuji snadnějí než imperativní jazyky, ale v praxi jde vždy o to, jaké vlastnosti a jakým způsobem chcete verifikovat, jak se poperete s nerozhodnutelností a state space explosion apod.

Nástroje pro formální verifikaci céčka existuji, např. Frama-C, VCC.

Neuvazovali jste treba o nejakem kulturnejsim (rekneme funkcionalnim) jazyku?

Nevidím na céčku nic nekulturního. Každý programovací jazyk lze používat kulturním i nekulturním způsobem.

Ovšem budoucímu použití nějakého funkcionálního jazyka nebo alespoň imperativního jazyka s funkcionálními prvky (typu Groovy) se rozhodně nebráníme. Až budeme umět chodit, můžeme se učit běhat :)

BostX
BostX (neregistrovaný) 80.149.229.---
3. 5. 2011 15:50 Nový

Re: Pěkný rozhovor!

celé vlákno

Opakovane mam dojem ze ludia nechapu co je to 'reset' naco je to dobre a ako by to malo fungovat. Komplexne zariadenia a mechanizmy (ako napr. software) vzdy obsajuhu chyby, t.j padali, padaju a budu padat. Formalna verifikacia nezastavi tsunami co sa ruti na moj pocitac! To co pri operacnom systeme potrebujem je rychle a lacne error recovery, 100% formalna verifikacia je zbytocna.
Je _uplne_ jedno ci cakam 1 minutu na znovu-nacitanie konfiguracneho suboru (nap. defaultne nastavenie JBoss-su) a nasledne start/stop-nem databazovy sever, alebo ci rychlo vypnem/zapnem poistky.

Zdenek - aura:41
3. 5. 2011 19:03 Nový

Re: Pěkný rozhovor!

celé vlákno

To mi přijde jako pevná víra ve widlí filosofii. Autoři HelenOSu viditelně aspirují na kvalitu místo kvantity. Restart služeb třetí strany ostatně nevyloučili, pouze se snaží maximálně odladit životně důležité části svého systému.

azmod
azmod (neregistrovaný) ---.kolej.mff.cuni.cz
8. 5. 2011 13:01 Nový

Re: Pěkný rozhovor!

celé vlákno

nemate pravdu a vasa predstava je na urovni uzivatelskeho pohladu (nic v zlom)
ale pozrite si situaciu kedy si restart nemozete dovolit - napriklad pri riadeni kritickych systemov - tam pravidelny restart ala windows nieje jednoducho mozny a je nutna verifikacia - napriklad ak vase komponenty su vzajomne zavisle a maju zlozity vnutorny stav.

Miloslav Ponkrác aura:59
3. 5. 2011 1:31 Nový

Viděl autor HelenOS někdy opravdový microkernel?

celé vlákno

Proč výrobci v poslední době tak moc o ty mikrokernely stojí?

Minix, Hurd i HelenOS jsou salónní teoretické projekty, u kterých není drajv na nasazení od praxe. Autoři si s tím hračičkují, miliskují se, ale prioritou není praktické nasazení a snaha to rychle prakticky co nejdříve nasadit.

Naproti tomu existuje řada skutečných mikrokernelových systémů. Leckde je to i nezbytné z důvodu spolehlivosti, kterou takový systém může nabídnout. PLus řadu dalších vlastností.

Ale Linus jednou řekl, že mikrokernel je blbost, tak prostě je. A všichni budou tvrdit jak je špatný, protože to řekl Linus. Jiný důvod není.

rtwert
rtwert (neregistrovaný) ---.customer.poda.cz
3. 5. 2011 6:50 Nový

Re: Viděl autor HelenOS někdy opravdový microkernel?

celé vlákno

i linus zacal s linuxem jen pro zabavu.
ale byl prvni tak ma nejvetsi pozornost a slavu.

verim, ze jednou i ten slavny hurd bude pouzivan v produkcnim systemu.

co rekl linus o mikrojadru vychazi z dosavadni prakticke zkusenosti,
myslim, ze jeho slova budou platit jeste maximalne 10 let.
pak bude mikrojadro skoro vsude.

haplo602
haplo602 (neregistrovaný) ---.austin.hp.com
3. 5. 2011 7:43 Nový

Re: Viděl autor HelenOS někdy opravdový microkernel?

celé vlákno

zaujimave ... takze to ze winNT architektura je v podstate mikrokernel (resp urcity hybrid) je nepodstatne :-)

anyway mikrokernel je skvela vec na implementaciu hypervisora. a myslim ze tam vyvoj aktualne aj smeruje.

Zdenek - aura:41
3. 5. 2011 19:23 Nový

Re: Viděl autor HelenOS někdy opravdový microkernel?

celé vlákno

>>winNT architektura je v podstate mikrokernel

Slůvko .reloc v mých 344 ovladačích v adresáři Drivers říká něco jiného.
NT nesplňuje žádné z kritérií pro mikrokernel. Zkuste nějaké jmenovat.
P.S. Že to řekl Balmer s vyplazeným jazykem se nepočítá. XD

Zdenek - aura:41
3. 5. 2011 19:42 Nový

Re: Viděl autor HelenOS někdy opravdový microkernel?

celé vlákno

NT jádro obsahuje:
• Podporované FS, na kteých smí být OS, vč. práv
• Podporované způsoby rozdělení disku (MBR, GPT)
• Kompletní práci s registrem
• Uspávací režimy včetně obcházení errat některého HW
• Ad-hoc rozhraní pro některé důležité ovladače (pci, ntfs, tcpip...) - falešná modularita

haplo602
haplo602 (neregistrovaný) ---.austin.hp.com
3. 5. 2011 21:51 Nový

Re: Viděl autor HelenOS někdy opravdový microkernel?

celé vlákno
Zdenek - aura:41
3. 5. 2011 19:18 Nový

Re: Viděl autor HelenOS někdy opravdový microkernel?

celé vlákno

Problém mikrojádra je výkon. Přepínání mezi procesy a přiřazování stránek paměti je zátěž. Dokud jsou jen desítky user procesů a celý systém jede v reálu, výkon je v pohodě a systém je tak výkonný, jak ho všichni známe. Ale jakmile se masově nasadí user-space na všechno, tak najednou poběží tisíce, ne-li desetitisíce modůlů, každý s vlastním adresním prostorem. X86 podporuje hardwarově jen 128 procesů, nepletu-li se, při vyšším počtu musí OS vyměňovat položky v tabulce procesů s těmi uloženými jinde. S takovou superzátěží může systém masově užívající user-space zapomenout na výkonnou síť, editaci hudby a vlastně na celé komerční využití. Vždyť i ta fréza se zláme o sklíčidlo dřív, než mikrojádro ráčí přesypat 4000 služeb, jak si možná žádá plánovač, a popoběhnout s naší aplikací. (Tady trochu přeháním, systém můžeme ořezat o grafické rozhraní, vypnout si na chvíli přerušení a je to :-)
Jedině že by se věc vydala cestou posunu kompromisu od efektivních k vysokoúrovňovým jazykům a v budoucnu získaný výkon procesorů se investoval do spolehlivosti systému.

Martin Děcký aura:100
3. 5. 2011 21:39 Nový

Re: Viděl autor HelenOS někdy opravdový microkernel?

celé vlákno

X86 podporuje hardwarově jen 128 procesů, nepletu-li se, při vyšším počtu musí OS vyměňovat položky v tabulce procesů s těmi uloženými jinde.

Předpokládám, že tady hovoříte o Task State Segmentu. Ten má ovšem velikost 8192 položek a většina operačních systémů (včetně Linuxu a Windows) jej stejně nepoužívá pro přepínání vláken — používají klasický softwarový context switch.

Samozřejmě na x86 nejde TSS úplně vypnout (stejně jako segmentace), takže jedna položka v TSS tabulce je skutečně vždy vyplněna, ale po celou dobu běhu Linuxu, Windows i HelenOSu zůstává konstantní. Většina jiných platforem (včetně x86-64) žádnou analogii TSS nemá.

BTW: Nemyslím si, že existuje důvod, aby počet modulů/úloh v mikrojádrovém systému, který provádí několik činností (dejme tomu workload typického desktopu), rostl k tisícům. Už v žádném případě není důvod, aby mikrojádrový systém, který řídí frézu, měl 4000 modulů. Chápu argumentaci přehánením, ale ani s přeháněním by se to nemělo přehánet :-D

Servery v mikrojádrovém systému nemají granularitu tříd, ani nereprezentují jednotlivé instance objektů. Dovedu si představit mnohaprocesorový stroj vyřizující stovky požadavků na sekundu, na kterém budou běžet tisíce serverových úloh. Takové konfigurace dnes ale běží i nad monolitickými systémy.

Závěrem: Určitě nelze zpochybňovat overhead mikrojádrové architektury, ale také by se neměla démonizovat. Není to daň jen tak za nic. Je to daň za explicitní zachycení architektury systému v jeho kódu, vzájemnou izolaci komponent, kompozici složitého systému z jednoduchých stavebních kamenů apod.

Stanislav Hoferek aura:43
3. 5. 2011 6:38 Nový

jajaj

celé vlákno

ani som nevedel, že niečo také existuje. veľa ľudí robí dobrú robotu a pritom o nich málokto ie. Projektu HelenOS a každému, čo sa do toho zapojí, prajem veľa úspechov.

Miroslav Prýmek aura:58
3. 5. 2011 8:03 Nový

Dotaz

celé vlákno

Jakube, jestli to tady budeš číst, můžu se zeptat, co tě vedlo ke startování nového projektu na zelené louce? Nezvažoval jsi zapojit se do Hurdu?

(hodně respektuju lidi, kteří mají drajv pustit se do něčeho obtížného i bez vidiny nějakého bezprostředního zisku, ale přijde mi, že pod Hurdem by mohlo být stejný množství srandy s větší šancí na praktickou využitelnost investovaného úsilí...)

>> nechtějí Hurd vydat do té doby, dokud nebude úplně hotový, dokonalý a nebude plnohodnotnou náhradou linuxového jádra

A není to prostě proto, že Hurd ještě na vydání není zralý? (nevím, ptám se)

afasf
afasf (neregistrovaný) ---.customer.poda.cz
3. 5. 2011 8:08 Nový

Re: Dotaz

celé vlákno

hurdovi lidi jsou znova a znova fascinovani dalsimi a dalsimi mikrojadry
na ktere je treba hurd portovat, i proto jim to tak trva.

zacli s machem, pak L4, pak L4sec, tedka nejaky coyotos.

Martin Děcký aura:100
3. 5. 2011 9:17 Nový

Re: Dotaz

celé vlákno

Nechci rozhodně mluvit za Jakuba Jermáře, ale z mého pohledu vidím asi tak tři důvody, proč pracujeme na vlastním mikrojádrovém OS.

Tak to prostě začalo: Jak už říkal Jakub v rozhovoru, původní kořeny HelenOSu jsou v jeho školních zápočťácích a projektech. I pro nás ostatní to vždy bylo "learning by doing" a to jde podle mě rozhodně lépe, když člověk pracuje vlastním tempem na vlastním projektu, než když se musí zapojovat do práce "cizí" komunity. Aniž bych měl něco proti zapojování se do rozjetých projektů, je asi lepší, když to člověk dělá už jako zkušený programátor.

Historické souvislosti: Před pár lety se Hurd zmítal v dilematu, zda má být postaven nad Machem nebo L4, a byl rozhodně ještě méně použitelný než nyní. O MINIXu se pro změnu ještě před pár lety hovořilo jen jako o "tom výukovém operačním systému z knihy Andyho Tanenbauma", jako plnohodnotný OS ožil až s příchodem verze 3.

Vlastní design: Pár lidí z HelenOS týmu si myslí, že design Hurdu je příliš deformován potřebou být "UNIX compliant" a fungovat jako drop-in náhrada Linuxu nebo BSD kernelu v rámci GNU. Podobně se nám nelibí některá konkrétní rozhodnutí v MINIXu. V případě L4 některé z nás zase odrazuje ne přiliš hezký zdrojový kód.

Zkrátka chceme dělat věci po svém a tak, jak si myslíme, že to je správně. Jestli je to dobrá cesta, to ukáže čas :)

Miroslav Prýmek aura:58
4. 5. 2011 9:12 Nový

Re: Dotaz

celé vlákno

Díky za odpověď a přeju hodně srandy a úspěchů :)

Petr Krčmář aura:99
3. 5. 2011 8:18 Nový

Re: Dotaz

celé vlákno

Když jsme si s Jakubem povídali, tak i na to přišla řeč. Nakonec to ale v rozhovoru není. Důvodem pro vlastní projekt prý bylo především to, že chtěl mít vlastní výtvor, který má plně pod kontrolou a může ho směřovat tam, kam bude sám chtít.

Miroslav Prýmek aura:58
3. 5. 2011 8:26 Nový

Re: Dotaz

celé vlákno

Děkuju.

Stejně mi to ale přijde trochu zvláštní, mít projekt, který sice můžu směřovat, kam chci, ale který funguje daleko hůř (předpokládám) než jiný podobný už existující projekt...

Chápu to (a sám dělám) u věcí, kde ten projekt můžu poměrně rychle dostat do stádia funkčnosti ve všech pro mě podstatných oblastech, ale u takového molochu jako je jádro OS...

Nicméně určitě je mi to daleko sympatičtější než vytváření tisícé první "originální" distribuce Linuxu :)

Stanislav Hoferek aura:43
3. 5. 2011 8:54 Nový

Re: Dotaz

celé vlákno

to je podľa mňa len dobre. totiž, je fajn zaradiť sa do nejakého projektu, dostať nejaké to čísielko a enjakú oblasť na starosti - no dobré je tiež niečo viesť a riadiť, kam sa to bude uberať.

dobrý príklad je ubuntu, ktoré niekde ide. veľa ľudí s tým súhlasí a používa ho, iné skupiny si myslia, že by to malo ísť iným smerom. a keďže môžu viesť projekt aspoň čiastočne vlastnou cestou, tak to aj robia.

pri všetkých tých malých projektoch (myslím teraz veľkost v KB/MB, nie v počte ľudí) je dôležitá špecializácia. no a ak to ide iným smerom, ako by sa malo ísť, tak to niekto forkne, laebo začne robiť niečo podobné na zelenej lúke.

jl
jl (neregistrovaný) ---.vsnet.sk
3. 5. 2011 8:16 Nový

Reactos

celé vlákno

Aj reactos (operacny system - teraz alfa verzia 0.3.13) sa dostal do Google SoC. Tam dokonca "hrozi" aj urcita kompatibita s Windows XP - XP vraj konci podpora v roku 2012. Reactos snad dosiahne verziu 0.4.

Skoda, ze nerozumiem operacnym systemom a som asi "stary pes", ktoreho "uz nenaucia nove kusky".

Miroslav Prýmek aura:58
3. 5. 2011 8:27 Nový

Re: Reactos

celé vlákno

ReactOS jsem zkoušel asi před dvěma roky a bylo to úplně tragicky nestabilní. (Což je škoda, protože svobodná reimplementace WinXP by byla bomba)

JS
JS (neregistrovaný) ---.net.upcbroadband.cz
3. 5. 2011 8:51 Nový

Mikrokernel je out!

celé vlákno

Protoze vyvoj dnes jednoznacne smeruje k operacnim systemum s gigakernelem, ktery obsahuje nejen ovladace zarizeni, ale i spravce oken a webovy prohlizec. Samotny uzivatelsky prostor se odehrava pouze ve webovem prohlizeci, odkud uzivatel muze delat vsechno.

Ale vazne. Trochu mi v tom rozhovoru chybi, cim se ten HelenOS nejak odlisuje, tedy krome toho, ze je to mikrokernel. Je to malo technicke.

jaromrax aura:75
3. 5. 2011 9:02 Nový

Re: Mikrokernel je out!

celé vlákno

Beru to, ze je to spis forek - ale jen pro orientaci - soucasny kernely maji uz skoro vsechno v modulech, ne? Jakej je rozdil mezi modulama a mikrokernelem?
PS. na me je to technicke docela akorat...fakt, je ze bych jeste snesl nejakou dalsi technickou informaci

Martin Děcký aura:100
3. 5. 2011 9:27 Nový

Re: Mikrokernel je out!

celé vlákno

Jakej je rozdil mezi modulama a mikrokernelem?

Moduly beží v kernelovém režimu CPU a ve společném adresovém prostoru se zbytkem kernelu. V mikrokernelu beží v kernelovém režimu mnohem méně kódu, "moduly" jsou od sebe vzájemně odděleny v samostatných adresových prostorech, komunikují pouze pomocí dobře definovaných rozhraní a běží v uživatelském režimu.

Výhod a nevýhod obou přístupů je mnoho — jako v mnoha jiných případech se ani tady nedá univerzálně rozhodnout, co je obecně lepší a co je obecně horší přístup. Pokud se s tím někdo dosud nesetkal třeba na nějaké přednášce o principech operačních systémů, lze určitě začít třeba články na Wikipedii.

petr_p
petr_p (neregistrovaný) 2002:93fb:17--:----:----:----:----:----
3. 5. 2011 12:28 Nový

Re: Mikrokernel je out!

celé vlákno

Co si vzpomínám, když jsem se hrabal ve zdrojácích, tak mě překvapilo, že spusta služeb jádra (v monolitickém smyslu) je v HelenOS implementovaných pomocí asychnronního předávání zpráv. Když uživatelský proces chce otevřít soubor, tak pouze požádá mikrojádro o přesměrování požadavku, jádro prakticky okamžitě vrátí komunikační deskriptor a uživatelský proces může dělat cokoliv jiného, dokud ovladač patřičného souborového systému se neozve. Pak si spolu vyjednají parametry „služby" otevření souboru (například otevření jen pro čtení), obě strany mohou kdykoliv relaci přerušit (třeba když neporozumí požadavku) a nakonec z toho vypadne identifákor otevřeného souboru, ze kterého proces opět obdobným způsobem čte. Oproti monolitickému jádru to má výhodu, že uživatelský proces není blokován po dobu vyřizování služby (ať už tím, že selhává čtení z blokového zařízení, nebo protože je prostě chyba v ovladači souborového systému). Je to jako kdyby se do Linuxu integroval D-bus nebo ORBIT a aplikace si povídaly s jednotlivými moduly přímo bez účasti jádra jádra (to by řešilo jen identifikaci a autorizaci komunikujících stran, něco jako dnes funguje NETLINK nebo sysfs). Na druhou stranu to má svoji režii a psát událostní smyčky na každé volání služby je otrava. Mám dojem, že se to chtělo řešit nějakou standardní knihovnou, která by programátorovi aplikace ušetřila prsty.

Martin Děcký aura:100
3. 5. 2011 13:08 Nový

Re: Mikrokernel je out!

celé vlákno

Na druhou stranu to má svoji režii a psát událostní smyčky na každé volání služby je otrava. Mám dojem, že se to chtělo řešit nějakou standardní knihovnou, která by programátorovi aplikace ušetřila prsty.

Základní smyčku událostí (rozskok podle čísla metody) je stále nutné v HelenOSu psát ručně, i když již delší dobu uvažujeme o tom, jak tenhle boilerplate kód generovat automaticky. Stay tuned .. :)

Na druhou stranu, pro složitější komunikaci (kdy se komunikační protokol mezi klientem a serverem sestává z více atomických zpráv) není nutné vracet se do té top-level smyčky událostí, ale lze psát kód, který díky našemu IPC frameworku vypadá v podstatě standardně sekvenčně, ale přesto funguje asynchronně.

jaromrax aura:75
3. 5. 2011 8:59 Nový

helena + gnu

celé vlákno

Ahoj,
dik za velmi zajimavy rozhovor z tyhle problematiky, ktera je mi uplne cizi, ale o to vic me zajima.
Cili jestli to chapu, hurd je taky typu mikrokernel a mam dojem, ze je ho mozny skloubit v ramci debianu 5 s gnu obalem. Je tohle taky cesta pro helenos? Najdeme dalsi debian s helenos? Zkusil tady nekdo nasadit hurd v debianu? Proc? :)
dik

ggtwertwer
ggtwertwer (neregistrovaný) ---.customer.poda.cz
3. 5. 2011 9:17 Nový

Re: helena + gnu

celé vlákno

hurd je vrstva a serverove programy nad mikrokernelem (mach, l4....)
nad jakymkoliv mikrojadrem/jadrem lze vytvorit posix vrstvu a pridat GNU
user-space software.

nekde snad vzali jadro z windows NT, obalili posix vrstvou a nad tim pousteli
GNU programy.

takze je to jen vec investovane prace a casu. i helenos muze mit posix api.

Sten
Sten (neregistrovaný) 81.145.45.---
3. 5. 2011 12:27 Nový

Re: helena + gnu

celé vlákno

nekde snad vzali jadro z windows NT, obalili posix vrstvou a nad tim pousteli GNU programy.

To někde nevzali, ale udělal to (a pořád udržuje) oficiálně Microsoft. Jmenuje se to Interix.

gdsfgsdg
gdsfgsdg (neregistrovaný) 193.179.215.---
3. 5. 2011 13:15 Nový

Re: helena + gnu

celé vlákno

myslel jsem geNToo, ale to byl aprilovy zert jak jsem zjistil.
http://www.gentooexperimental.org/nt/

Pepa Von Depo aura:67
3. 5. 2011 9:04 Nový

Není na mikrokernelu Hurd postaven Darwin?

celé vlákno

A odvozeně též kromě Mac OS X i megaúspěšné iOS? (no flame)

JaGa
JaGa (neregistrovaný) ---.anetliberec.cz
3. 5. 2011 10:48 Nový

Re: Není na mikrokernelu Hurd postaven Darwin?

celé vlákno

To ne Hurd je GNU GPL takže nelze použít pro uzavřené projekty.

V MAC OS X je použit XNU což je kombinace kernelu BSD a Mach.

http://upload.wikimedia.org/wikipedia/commons/f/f2/Diagram_of_Mac_OS_X_architecture.svg

Miroslav Prýmek aura:58
3. 5. 2011 17:20 Nový

Re: Není na mikrokernelu Hurd postaven Darwin?

celé vlákno

>> V MAC OS X je použit XNU což je kombinace kernelu BSD a Mach.

Když už je o tom řeč, máte někdo představu o tom, proč vlastně Apple BSD jádro nad ten mikrokernel posadil (podobně jako MS)? Kvůli nějaké teoretické budoucí rozšiřitelnosti o jiné machovské subsystémy? Už toho někdy využili, nebo to alespoň plánovali? Pokud vím (a moc toho o tom teda nevím :), i věci, kde bych to tak nějak čekal (Grand Central Dispatch) běží až nad BSD kernelem...

A MS? Ten už mikrokernel nějak pořádně využil?

JaGa
JaGa (neregistrovaný) ---.anetliberec.cz
3. 5. 2011 18:33 Nový

Re: Není na mikrokernelu Hurd postaven Darwin?

celé vlákno
Miroslav Prýmek aura:58
3. 5. 2011 19:03 Nový

Re: Není na mikrokernelu Hurd postaven Darwin?

celé vlákno

Ten seriál jsem četl, ale nepamatuju se, že by tam byla odpověď :)

toTem
toTem (neregistrovaný) ---.tmcz.cz
3. 5. 2011 21:33 Nový

Re: Není na mikrokernelu Hurd postaven Darwin?

celé vlákno

GCD je implementovany nad BSD/Posix API proste proto, ze pouziva Posix pojem jako semafor a umoznuje aplikacim standartne ridit flow mezi execution units ("thready") nejakeho tasku, tj. pro Posix aplikaci se nemeni struktury - navazane na zbytek Posix API - pro rizeni toku programu, ale "jenom" identifikace jednotlivych paralelizovatelnych exexcution units (funkci/bloku/...). Aplikace potom resi jenom identifikaci/roz­delovani prace, nikoliv jejich mapovani do fyzickych threadu potazmo procesu... vyhoda je jasna: nemusim resit konfiguraci pro kazdy stroj, procistil/zkratil se mi kod, aplikace je regulovana momentalni dostupnosti CPUs/zdroju OS bez meho zasahu, tj. spravu a kontrolu obsazenosti thread-poolu deleguju na GCD...

Jeho implementace je tak take prenositelna (http://libdispatch.macosforge.org) mezi Posix-like OS, tedy aby jej mohly vyuzit standardni POSIX aplikace bezici na *BSD, dokonce s upravami i na Linuxu a NT - tady ale mame omezeni vyplyvajici z nutnosti pouzit Clang compiler.

Jinak hlavni motivace pouzit mikrokernel pro OSX (mozna obecne) je primarne potreba lepsich struktur pro stavbu OS. User-space ma dost prostredku zavest libovolnou potrebnou miru abstrakce, ale vetsine OS vcetne Linuxu takova vnitrni struktura chybi. OSX je hybrid ponechavajici cely VFS i network stack na implementaci od BSD, ale diky Machu pod prdeli se muzou kdykoliv rozhodnout postavit dalsi mezivrstvu mezi vlastnim HW a vyssim subsystemem i mezi subsystemy navzajem. Tj. umoznuje jim to lepsi interceptovatel­nost. To ze se rozhodli nechat bezet Mach a BSD spolu ve stejnem adresnim prostoru (nezabere memory protection z procesoru) a oboje v ring0 chapu "jenom" jako performance benefit... rozpojit to _lze_.

Predstavte si jak by mohli implementovat Spotlight (fulltext search nad objekty v systemu, pro jednoduchost nad soubory): zadny z FS (a dejme tomu ani VFS) to nepodporuje, tj. nerozesila eventy o vytvoreni/pre­sunu/smazani/­... souboru. Pak muzu na vstupu do Posix callu vytvorit kontext kde zaznamenam o jaky soubor a jakou operaci se jedna a jakmile BSD/(V)FS provede zapis, dostane se do Machu message s pozadavkem na konkretni ukon nad driverem. Tuhle I/O (Kit) zpravu muze ale v mikrojadru zachytit i muj spotlight-events-listener, ktery ji na zaklade obsahu kontextu muze zpracovat (upravit svuj index). Takhle transparentne mam poresene vsechny FS v systemu aniz to kterykoliv z nich tusi... a ano - tuhle featuru by jste mohl implementovat i na urovni BSD kernelu a jeho VFS, ale v pripade ze se Apple rozhodne zamenit BSD za Linux (:-)), bude fungovat bezezmeny dal... obdobne mohou takhle implementovat transparentni cache, ..., pro cokoliv mezi HW/BSD.

Apple kernel development docs: http://developer.apple.com/library/mac/#documentation/Darwin/Conceptual/KernelProgramming

Miroslav Prýmek aura:58
3. 5. 2011 21:58 Nový

Re: Není na mikrokernelu Hurd postaven Darwin?

celé vlákno

Díky moc za obšírnou odpověď.

V podstatě jsem to teda zas tak moc nepřestřelil: Mach použili proto, aby v budoucnu *mohli* udělat nějaké zajímavé věci, ale zatím toho moc nevyužili.

V tom seriálu, co je tady, se píše jenom krátce o lepší kontrole nad drivery - jsou i nějaké další příklady toho, co reálně (ne jen potenciálně) využívá výhod Machu pod BSD kernelem?

Yenya
Yenya (neregistrovaný) ---.ip6.fi.muni.cz
11. 5. 2011 9:08 Nový

Re: Není na mikrokernelu Hurd postaven Darwin?

celé vlákno

> zadny z FS (a dejme tomu ani VFS) to
> nepodporuje, tj. nerozesila eventy o
> vytvoreni/pre­sunu/smazani/­... souboru.

Ted nevim jestli se bavite jen o Apple nebo i o FS/VFS obecne. Pokud to druhe, tak protipriklad je treba Linux a fanotify().

martin
martin (neregistrovaný) ---.net.upcbroadband.cz
3. 5. 2011 20:47 Nový

Re: Není na mikrokernelu Hurd postaven Darwin?

celé vlákno

Moc nerozumím otázce, ale BSD použili jednak aby zefektivnili některé úlohy a aby získali POSIX API. Krom toho vytáhli z BSD řadu dalších vlastností (VFS, síť, audit, MAC, atd.)

Na druhou stranu důvodem pro použití Mach kernelu byl jednak NeXTSTEP a jeho výborné vlastnosti jako stabilita a vyzrálý SMP (mluvíme o 2. polovině 90.let) a také jeho Mach object formát tedy krom jiného využili jeden "exe" pro více architektur - přinejmenším PPC, Intel příp. ARM. Mach dělá v Darwinu vlákna, multitasking, procesy (ty jsou v BSD vrstvě "předělané" do unixového modelu), RT, IPC (opět v BSD vrstvě transformované na sys-v IPC) atd.

Miroslav Prýmek aura:58
3. 5. 2011 21:14 Nový

Re: Není na mikrokernelu Hurd postaven Darwin?

celé vlákno

>> Moc nerozumím otázce, ale BSD použili jednak aby zefektivnili některé úlohy a aby získali POSIX API.

Myslel jsem ji přesně naopak: proč nepoužili samotné BSD? Co získali tím, že ho posadili nad Mach?

(možná se ptám úplně blbě, v těchhle věcech se fakt moc nevyznám :)

martin
martin (neregistrovaný) ---.net.upcbroadband.cz
3. 5. 2011 21:39 Nový

Re: Není na mikrokernelu Hurd postaven Darwin?

celé vlákno

Tak pak je odpověď v druhé části.

Vlákna a SMP byly určitě lepší v Machu (+ IO kit). Lepší :-) v BSD se to tou dobou teprve rodilo. Navíc měli celý systém postavený jen na Machu ze kterého ten vývoj vycházel.

YF
YF (neregistrovaný) ---.ysoft.cz
3. 5. 2011 9:44 Nový

jaka je pridana hodnota HelenOS

celé vlákno

Cau - prvne samozrejme blahopreju k dilku - zajimalo by me ale co prinasi HOS noveho - zda je k dispozici seznam nejakych inovaci nebo jak o nem autori premysli do budoucna? Jak uz nekdo psal - rozhovor je celkem malo technicky. Jinak preju uspesny dalsi vyvoj! :)

Martin Děcký aura:100
3. 5. 2011 10:27 Nový

Re: jaka je pridana hodnota HelenOS

celé vlákno

Pár informací je k nalezení na naší wiki

Je ale pravda, že spoustu věcí týkajících se zajímavých vlastností a plánů zatím zkrátka držíme ve svých hlavách, protože náš "core" tým je poměrně malý a nikdo na HelenOSu nepracuje opravdu full-time.

Žádnou podrobnou roadmap s výhledem na 10 let dopředu a končící položkou "world domination" teda nemáme. Asi je to škoda, ale den má zkrátka jen 24 hodin :)

JiříS
JiříS (neregistrovaný) ---.91.broadband10.iol.cz
3. 5. 2011 10:58 Nový

Re: jaka je pridana hodnota HelenOS

celé vlákno

Řada lidí se nás ptá "jak můžete čekat, že HelenOS bude někdo používat, když nevypadá ani jako Linux ani jako Windows?" Moje odpověď je:

1. My nikoho nenutíme HelenOS používat a nejsme nijak závislí na tom, jestli ho někdo používat bude nebo ne. Vyvíjíme ho pro vlastní potěšení.

2. Celkově módní vlna zájmu o operační systémy je v současné době v dolní půlce periody. Průměrný uživatel dnes nepotřebuje vidět dál než na to, jestli má jeho webový browser záložky na správném místě, nezajímá ho jakou má verzi jádra systému apod. Nelze tedy očekávat, že se bude aktivně zajímat o alternativní operační systémy, pokud má něco, co "funguje". Neočekávám, že bychom oslovili masy,

3. HelenOS nikdy nebude tak dobrý Linux jako je Linux (jen HURD může být tak naivní, že si myslí, že bude lepší Linux než Linux). Hodnota HelenOSu je v jeho originalitě. Pokud bude dostatečně odlišný, určitě se najde někdo, komu se Linux zajídá a ocení, že některé věci řešíme přesně naopak.

faha
faha (neregistrovaný) 88.146.206.---
3. 5. 2011 11:34 Nový

rychlost mikrojadra X monolit ?

celé vlákno

Mel bych par dotazu ...

Netrpi mikrokernel vykonove oproti monolitickemu jadru?

Chapu, ze v konceptu mikrojadra je samotny kod bezici v privilegovanem rezimu pomerne maly, dobre udrzovatelny, robusni, mene nachylny na chyby, pokud je ovsem vse co lze vystrceno do userlandu musi dochazet mnohonasobne vicekrat ke "context switch" ?

Nemuze byt tedy v tomto zakopan pes? Dokazu si predstavit, ze pokud se napr. jedna komponenta "zblazni" dokaze saturovat cely system jen rezii zprav, jak se vlastne pozna takova vadna komponenta a rozhodne se, ze ji je treba napr. restartova?

Jak se vlastne takovy system debuguje pri programovani, myslim tim kdyz se vse odehrava dost asynchrone?

Martin Děcký aura:100
3. 5. 2011 12:56 Nový

Re: rychlost mikrojadra X monolit ?

celé vlákno

Netrpi mikrokernel vykonove oproti monolitickemu jadru?

Ano, komunikační overhead IPC bude vždy v principu o něco větší než běžné volání funkce. Většina vývoje kolem mikrojader v 80. a 90. letech se právě točila kolem toho zoptimalizovat tento overhead co nejvíce.

Myslím si ovšem, že v dnešní době už ten fyzický overhead nehraje takovou roli. Koupit si o 10 % rychlejší procesor kvůli overheadu mikdrojádrové architektury je triviální a je to rozumná investice, protože za odměnu můžeme získat modulární, snadno udržovatelný a bezpečný kód. Údržba složitého monolitického softwaru, kde drobná chybka v málo podstatném modulu může způsobit pád celého systému, se jeví jako mnohem dražší a dlouhodobá investice.

musi dochazet mnohonasobne vicekrat ke "context switch"

Tohle je tak trochu nepochopení. V dobře navrženém mikrojádrovém systému dochází (za předpokladu asynchronní komunikace) ke zhruba stejnému počtu přepnutí kontextu jako v monolitickém systému — především z důvodu preempce nebo blokování.

Mikrojádrové systémy se zkrátka nesmí programovat tak, že se vezme "monolitický" sekvenční kód s funkčními voláními a ten se mechanicky převede na synchronní zasílání zpráv. Když se vhodně využije asynchronicita komunikace, koncepty jako future a promise a rozumný způsob předávání dat, tak se převážná část overheadu redukuje na nutné minimum.

jedna komponenta "zblazni" dokaze saturovat cely system jen rezii zprav

Počet zpráv, které může mít jedna komponenta v jeden okamžik "ve vzduchu", je omezen. Další zprávy si frontuje ve vlastní režii a tudíž ne více času, než je naplánována plánovačem. Takže jedna komponenta nikdy nezasaturuje celý systém.

Jistě se může stát, že nějaký proces bude soustavně "vyžírat" veškery procesorový čas, který mu plánovač dá, ale to se pochopitelně může stát i v monolitickém systému.

ji je treba napr. restartovat

Jak jsem už psal někde výše, restart podle mě nic neřeší :)

Jak se vlastne takovy system debuguje pri programovani, myslim tim kdyz se vse odehrava dost asynchrone?

Souhlasím, že debuggování asynchronní komunikace je složitější než debuggování sekvenčního kódu. Je potřeba sledovat komunikaci a všechny komunikující strany. V principu to dost připomíná ladění síťové komunikace ..

Na druhou stranu, v dohledné době budou mít procesory asi jen víc a víc jader a hardwarových vláken, takže luxusu přehledného sekvenčního kódu si stejně asi moc neužijeme :)

Jaroslav Hájek aura:79
3. 5. 2011 16:19 Nový

Re: rychlost mikrojadra X monolit ?

celé vlákno

"Myslím si ovšem, že v dnešní době už ten fyzický overhead nehraje takovou roli. Koupit si o 10 % rychlejší procesor kvůli overheadu mikdrojádrové architektury je triviální a je to rozumná investice, protože za odměnu můžeme získat modulární, snadno udržovatelný a bezpečný kód. Údržba složitého monolitického softwaru, kde drobná chybka v málo podstatném modulu může způsobit pád celého systému, se jeví jako mnohem dražší a dlouhodobá investice."

Matematická poznámka: cena za upgrade hardware ale roste lineárně s počtem strojů, zatímco cena údržby software obecně nikoliv. Takže když jich máte opravdu hodně...

Martin Děcký aura:100
3. 5. 2011 16:40 Nový

Re: rychlost mikrojadra X monolit ?

celé vlákno

cena za upgrade hardware ale roste lineárně s počtem strojů

Cena za údržbu software zase roste s jeho velikostí. A dokonce bych se nebál tvrdit, že rychleji než lineárně.

Jestli vyjde ten trade-off v konkrétním případě lépe pro monolitický nebo modulární systém, to se skutečně nedá obecně a univerzálně rozhodnout. Netvrdím, že můj MP3 přehrávač musí řídit mikrojádrový operační systém složený z 25 komponent. Ale v případě jaderné elektrárny bych zase usínal hůře, kdybych věděl, že ji řídí program napsaný v jediném modulu :)

Jaroslav Hájek aura:79
3. 5. 2011 16:56 Nový

Re: rychlost mikrojadra X monolit ?

celé vlákno

"Cena za údržbu software zase roste s jeho velikostí. A dokonce bych se nebál tvrdit, že rychleji než lineárně."

To je dost možné, ale software je jeden, zatímco strojů na kterých běží můžou být statisíce. Chtěl jsem tím podotknout, že ta skutečnost, že se to jádro lépe udržuje a vyvíjí, by se nakonec měla odrazit na nějaké produktivní vlastnosti - vyšší rychlost, vyšší spolehlivost, menší paměťová náročnost, spotřeba proudu nebo já nevím co ještě (tipoval bych, že spolehlivost bude horký kandidát). Pokud ne, tak na velkém počtu strojů vždycky "asymptoticky" prohraje.

Martin Děcký aura:100
3. 5. 2011 17:15 Nový

Re: rychlost mikrojadra X monolit ?

celé vlákno

S tím nelze než souhlasit.

Miroslav Prýmek aura:58
3. 5. 2011 17:43 Nový

Re: rychlost mikrojadra X monolit ?

celé vlákno

>> ta skutečnost, že se to jádro lépe udržuje a vyvíjí, by se nakonec měla odrazit na nějaké produktivní vlastnosti

Z toho, co jsem tady tak zaslech, tak mi třeba jako hodně dobré přišlo to dobře definované rozhraní mezi servery. Na tom by mohl jít postavit třeba upgrade za běhu, což by mohla být hodně produktivní vlastnost...

(viz třeba Erlang...)

Sten
Sten (neregistrovaný) 81.145.45.---
3. 5. 2011 17:56 Nový

Re: rychlost mikrojadra X monolit ?

celé vlákno

Přesně tak. Hlavní výhoda QNX není ani tak to, že je mikrokernel, tedy že se super udržuje, ale hlavně spolehlivost daná (zde zavrhovanou) schopností restartovat jednotlivé služby za běhu, což se ale nevyužívá jenom pro případ pádu, které budou reálné, i když budete mít svou část formálně verifikovanou (např. u jaderné elektrárny těžko může systém říct: balím to, dokud to neopravíte), ale taky pro aktualizace.

Mimochodem formální verifikace má jeden zásadní problém: samotná definice, podle které se ověřuje, může obsahovat chyby :-)

Karell aura:90
3. 5. 2011 13:19 Nový

Re: rychlost mikrojadra X monolit ?

celé vlákno

> Jak se vlastne takovy system debuguje pri programovani
Debugovani takovych systemu ma sva specifika, na prvni pohled to mozna vypada zahadne, ale v praxi to muze byt i pohodlnejsi nez treba desktop monolyticka aplikace. Tady muzete mit porad spustene procesy, ktere komunikuji s tim debugovanym, muzete je behem toho ovladat, nejsou zamrzly a kdyz objevite v jedne komponente chybu, tak ji opravite a restartujete. Kdyz vam pak dobre funguje vyhledavani komponent a obnovovani spojeni, tak je z ladeni radost :-)

jaromrax aura:75
3. 5. 2011 16:36 Nový

Jo...

celé vlákno

...radost si pocist.

Kalanis
Kalanis (neregistrovaný) ---.177.broadband6.iol.cz
3. 5. 2011 18:41 Nový

hezké

celé vlákno

Pěkný projekt - ale zajímalo by mne, proč jste na první možnou a pak všechny vyšší úrovně nevytáhli objektový derivát C s možností podhodit název objektu-modulu a soubor s ním (ano, hrozí špagetový kód)? Protože modularita chodí poměrně nedaleko objektového návrhu a psát to klasickou cestou je cesta akorát k blobu (Linus sám říká, že jádro je daleko od jeho původních představ). Navíc by jste mohli pracovat v oblasti, kde začal NextStep a web v dnešní podobě vůbec.

Martin Děcký aura:100
3. 5. 2011 21:13 Nový

Re: hezké

celé vlákno

Sice jsem některým věcem v dotazu úplně neporozuměl ("objektový derivát"), ale obecně se dá říci, že třeba interní API mikrojádra HelenOSu mají objektový charakter.

Odpověď na skoro všechny dotazy typu "proč jsme něco neudělali jinak" je bohužel taková, že den má jen 24 hodin. Některé věci jsou v současné době implementovány jen provizorně, spousta funkcionality chybí, spoustu věcí chceme předělat a možná ještě víc věcí bychom chtěli předělat, kdybychom měli energii zamyslet se nad nimi ještě lépe a důkladněji.

Ovšem HelenOS je open source projekt a pokud si myslíte, že můžete přispět dobrou myšlenkou nebo ještě lépe patchem, budete srdečně vítán!

bambas
bambas (neregistrovaný) ---.net.upcbroadband.cz
3. 5. 2011 20:09 Nový

Re: HelenOS nikdy nebude dokončený, říká jeho autor Jakub Jermář

celé vlákno

Nebyly by nekde screenshoty?

xy
xy (neregistrovaný) ---.cust.avonet.cz
3. 5. 2011 21:14 Nový

Re: HelenOS nikdy nebude dokončený, říká jeho autor Jakub Jermář

celé vlákno

Povedené. :-)

Martin Děcký aura:100
3. 5. 2011 21:47 Nový

Re: HelenOS nikdy nebude dokončený, říká jeho autor Jakub Jermář

celé vlákno
Inkayacu
Inkayacu (neregistrovaný) 2001:67c:1220:----:----:----:----:----
3. 5. 2011 22:47 Nový

Můj názor

celé vlákno

Jen tak žertem - myslíte, že to bude pro normální lidi, když to píšou matfyzáci? :-D
A teď vážně. Co mně osobně zklamalo je, že projekt pochází z Česka a domovská stránka pouze v angličtině - trapné...

Santiago
Santiago (neregistrovaný) ---.kolej.mff.cuni.cz
3. 5. 2011 23:10 Nový

Re: Můj názor

celé vlákno

A proc by clovek mel travit dvakrat tolik casu udrzovanim webovych stranek ve dvou jazykovych variantach, kdyz ta ceska ma prinos pro naproste minimum uzivatelu (zvlaste kdyz se jedna o software zamereny nikoliv na laiky, ale na odborniky, kterym anglictina stejne nedela vetsi potize)?

Biktop
Biktop (neregistrovaný) ---.28.broadband3.iol.cz
3. 5. 2011 23:10 Nový

Re: Můj názor

celé vlákno

Jen tak žertem - máš představu, kolik normálních lidí už si ani nedovede představit život bez vymožeností, jež by byly nevznikly nebýt lidí jako jsou matfyzáci? :-D

NN
NN (neregistrovaný) ---.uiv.cz
4. 5. 2011 9:35 Nový

Re: HelenOS nikdy nebude dokončený, říká jeho autor Jakub Jermář

celé vlákno

Nejak jsem nepochopis o cem/k cemu HelenOS je a kam smeruje ?

NN

Pindal
Pindal (neregistrovaný) ---.151.broadband12.iol.cz
4. 5. 2011 9:49 Nový

Re: HelenOS nikdy nebude dokončený, říká jeho autor Jakub Jermář

celé vlákno

Tak si to přečti znova. Žádnej stres.

Zasílat nově přidané příspěvky e-mailem