Takze jeste jednou o tom, o cem je ten clanek. Jak je uvedeno v jeho anotaci - je o tom, ze je pitomost mit jedno GUI natavene na OS. A v cem je vyborna myslenka libglade? V tom, ze via XML (opet muze byt nejen XML) umoznuje mit pro jakoukoli aplikaci jakekoli GUI podle dodavky dat ze site. S XML nebo jeho odvozeninami se designuje UI aplikaci uz dnes, ale pro "ztrnule" GUI v pocitaci.
Napadla me jedna historicka analogie. Kdo si pamatuje ZX Spectrum, jiste si vzpomene na hru Manic Miner, ktera ohromila svet tim, ze narvala do tak male pameti tolik scen (bludist). Puvodne slo o sazku nekoho s kamarady o bednu nejakeho alkoholu. Chytrou kombinaci grafickych elementu ten clovek, co sazku vyhral, vytvoril neco, nad cim vsichni zasli.
Manic Miner a dnesni GUI jsou veci lehce odlisne (i kdyz videohry z Manic Minera cerpaji dodnes). Nikde neni psano, ze nekdo nemuze prijit s resenim, ktere ohromi i ve tvorbe GUI. Clanek nabizel rozvahu nad veci. Zadna se zatim objevit neracila.
No, tim zmatkem jsem mel na mysli jen to, ze zatimco nadpis se tykal vyhaneni GUI z desktopu, a do uvozeni jste zahrnul i Citrix, kde AFAIK naopak GUI je skoro to jedine, co na desktopu jeste zbylo (viz mou odpoved na nazor 'Re: Citrix * VNC') a clanek koncil popisem systemu, kde by zase prave GUI na klientovi zustalo.
K te libglade - no nevim, jak prave ta souvisi s nadpisem, nebot se jedna vicemene o ovladani GUI pomoci XML - to neprinasi nejake nove moznosti oproti ovladani GUI z jinych interpretovanych jazyku (Scheme, Python, Perl ...). Dokonce bych rekl, ze XML se na tyto ucely hodi spis mene, nez nejaky z vyse zminenych jazyku. A ani bych nerekl, ze to je nejak vyrazne jednodussi.
Uhu? Placa pate pres devate? VNC a Citrix (plus Hot Desktop) jsou v uvodu pouzite proto, ze uvozuji, nejde o jejich popis. A propos - poznamka o tom, ze VNC vyzaduje tlustsi draty tam neni proto, ze VNC mezi daty posila velkou pizzu:)
Podstatou veci a vychodiskem rozvazovani je libglade, coz je jeden z nejinovativnejsich pristupu ve tvorbe GUI.
A pokud jde o diverzitu celeho systemu. OS budou samozrejme vzdy mene diverzifikovane, pokud za OS budeme povazovat zakladni IO se zarizenimi pocitace. Co treba diverzifikovat (aspon zatim) moc nejde, je TCP/IP (krome hackerskych kousku, of course:) Ovsem v souvislosti s dalsim vyvojem architektury pocitacu se muzeme dockat dost velke diverzity i u OS.
A az zanikne Internet a bude jen MS.net, budou podobne uvahy vubec zbytecne:)
Rekl bych, ze v tomto clanku autor trosku pletl pate pres devate - zacal VNCckem (coz je asi jedina cast clanku, ktera odpovida nadpisu - pri tomto modelu komunikace na klientovi bezej prakticky jen drivery a kod GUI bezi na serveru - tedy terminalovy pristup), pak presel k IMHO jiz rozumnym modelum distribuovanych aplikaci. No kazdopadne IMHO u kazdeho rozumneho distribuovaneho systemu zustane GUI (cimz myslim kod zajistujici interakci s uzivatelem) na klientovi (tak to dela treba vyse zmineny Citrix a nebo system, ktery autor popisoval ke konci sveho clanku), dal od uzivatele (na aplikacnich servrech nebo distribuovane v celem systemu) jsou az samotne 'funkcni' casti aplikace.
Jo, distribuovane operacni systemy (zvlaste ty rozdistribuovane pres Internet, kde by tisicovky pocitacu tvorily jeden logicky operacni system (vlastne takovy virtualni mainframe s tisicovkama uzivatelu, kde by kazdy mel kousek toho mainframu doma :-) )) prinaseji hromadu sqelych moznosti - automaticka distribuce novych objektu zajistujicich nejake sluzby (nekdo by tam neco nainstaloval a hned by to mohli vyuzivat vsichni...), moznost volneho pohybu od jednoho pocitace k druhemu - vsude by ten user mel 'sve' prostredi, pristup k svym datum... a hromadu dalsich vyhod.
Kazdopadne kdyz uz se uvazuje o takovych systemech, NELZE z toho vyloucit bezpecnost, nebot jakmile by na ni doslo, bude nutne pulku veci vyskrtat (alespon pokud budu brat bezpecnost v pocitacovem slova smyslu). Nebyl by zas takovy problem pro takove systemy vytvorit hardware zajistujici bezpecnost, ale pri pomysleni na takovy hardware bych radsi zustal u klasickych pocitacu.
V clanku je ale jedna veta, s kterou nemohu souhlasit - ze by ten system byl diverzifikovanejsi. Ten system by byl urcite diverzifikovanejsi, ale jen v 'uzivatelske' casti - aplikacich, GUI, atd. V systemove casti by dochazelo k tim vetsi unifikaci, cim by ten system byl vice provazany. Priklad: soucasne Inetove komunikacni protokoly jsou prevazne slozene z textovych prikazu typu GET neco, vse co je pod tim a jak je to implementovano - to uz je jedno a tam je diverzita. V pripade distribuovaneho systemu, kde by zakladni operace byla predavani zprav mezi objekty zajistujici nejake zakladni funkce (aplikace by se skladala z cele haldy takovychto komunikujicich objektu), je evidentni, ze to, co pak bezi na jednotlivych systemech, je pak znacne podobne - vzdyt i driver harddisku by byl objekt a tedy by musel mit nejakou formu standartniho interface.
Jo a zabyvat se tim, jestli se pri tom pouzije JAVA, XML, anebo treba Ccko, to je imho zcela bezpredmetne - takovy system by byl pouzitelny jen v pripade, kdyz v nem bude mozne snadno pouzivat (na psani distribuovanych aplikaci) jakykoliv (rozumny) jazyk.