abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 22:00 | IT novinky

    Společnost OpenAI představila svůj nejnovější AI model GPT-4o (o jako omni, tj. vše). Nově také "vidí" a "slyší". Videoukázky na 𝕏 nebo YouTube.

    Ladislav Hagara | Komentářů: 0
    včera 15:44 | Zajímavý článek

    Ondřej Filip publikoval reportáž z ceremonie podpisu kořenové zóny DNS. Zhlédnout lze také jeho nedávnou přednášku Jak se podepisuje kořenová zóna Internetu v rámci cyklu Fyzikální čtvrtky FEL ČVUT.

    Ladislav Hagara | Komentářů: 0
    včera 14:22 | IT novinky

    Společnost BenQ uvádí na trh novou řadu monitorů RD určenou pro programátory. První z nich je RD240Q.

    Ladislav Hagara | Komentářů: 16
    včera 13:00 | IT novinky

    Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. Nejvýkonnějším superpočítačem nadále zůstává Frontier od HPE (Cray) s výkonem 1,206 exaFLOPS. Druhá Aurora má oproti loňsku přibližně dvojnásobný počet jader a dvojnásobný výkon: 1,012 exaFLOPS. Novým počítačem v první desítce je na 6. místě Alps. Novým českým počítačem v TOP500 je na 112. místě C24 ve Škoda Auto v Mladé Boleslavi. Ostravská Karolina, GPU

    … více »
    Ladislav Hagara | Komentářů: 0
    včera 10:11 | Nová verze

    GHC (Glasgow Haskell Compiler, Wikipedie), tj. překladač funkcionálního programovacího jazyka Haskell (Wikipedie), byl vydán ve verzi 9.10.1. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 09:22 | Nová verze

    Po 9 týdnech vývoje od vydání Linuxu 6.8 oznámil Linus Torvalds vydání Linuxu 6.9. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna. Později také na Linux Kernel Newbies.

    Ladislav Hagara | Komentářů: 2
    11.5. 18:22 | Nová verze

    Byla vydána verze 0.2.0 v Rustu napsaného frameworku Pingora pro vytváření rychlých, spolehlivých a programovatelných síťových systémů. Společnost Cloudflare jej letos v únoru uvolnila pod licencí Apache 2.0.

    Ladislav Hagara | Komentářů: 0
    10.5. 19:11 | Nová verze

    Open source RDP (Remote Desktop Protocol) server xrdp (Wikipedie) byl vydán ve verzi 0.10.0. Z novinek je vypíchnuta podpora GFX (Graphic Pipeline Extension). Nová větev řeší také několik bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 16
    10.5. 04:11 | Nová verze

    Rocky Linux byl vydán v nové stabilní verzi 9.4. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    9.5. 22:22 | Bezpečnostní upozornění

    Dellu byla odcizena databáze zákazníků (jméno, adresa, seznam zakoupených produktů) [Customer Care, Bleeping Computer].

    Ladislav Hagara | Komentářů: 25
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (72%)
     (6%)
     (10%)
     (11%)
    Celkem 227 hlasů
     Komentářů: 16, poslední dnes 11:05
    Rozcestník

    Darling progress report - listopad 2012

    6.12.2012 11:00 | Přečteno: 1473× | Linux | Výběrový blog | poslední úprava: 6.12.2012 11:02

    Abyste si nemyslel, že jsem Darling vzdal...

    Tohle je postup prací od posledního zápisku z října:

    A teď pár převážně kritických témat :-)

    Mach je bléfuj

    Mikrokernel Mach je velmi, velmi pomalý. Je natolik pomalý, že synchronizační nástroje (lockset, semaphores...) běží řádově rychleji pod mou emulací daných volání na Linuxu než na původním systému. Zatímco na Linuxu proběhne test s 30 000 uzamčeními v několika vláknech stabilně za 0,13 sekundy, na OS X to trvá náhodně mezi 2 a 8 sekundami.

    Přemýšlím nad implementací Mach Ports (IPC; popis v GNU Hurd). Musel by to být jaderný modul, už mám jakousi kostru, která vytvoří /dev/machipc, nad kterým lze dělat volání pomocí ioctl(). Otázka je, jestli to má smysl, protože moc aplikací asi pro vlastní komunikaci Mach Ports nepoužívá. On s tím hlavně nikdo moc neumí a je to takové poněkud zapeklité.

    Sony je bléfuj

    Přemýšlel jsem o podpoře platforem ppc a ppc64, neboť až do roku 2005 byl OS X provozován na PowerPC hardwaru. Hned jsem si vzpomněl na můj PlayStation 3, který je také PPC. Já blbec jsem ale někdy před rokem aktualizoval firmware na verzi 4.00, která nejde bez rozebrání a ručního přeflashování hacknout tak, abych z toho měl linuxový stroj.

    QEMU bohužel není řešení. Emulace ARM mi pod QEMU funguje krásně, ale PPC a PPC64 mi ani jedno nefunguje (nebo to trvá tak dlouho, že jsem to po 2 minutách načítání jádra vzdal).

    Kdyby tedy někdo z vás měl třeba nepoužívaný starý Mac Mini G4 a byl by ochoten ho darovat (protože peníze se mi za to dávat nechce), byl bych moc rád :-)

    Applí kód je škaredý

    To jen taková samochvála. Kdykoliv najdete na opensource.apple.com hezký, přehledný kód, tak není od Apple. Jakmile je to totální slepenec, ve kterém aby se čert vyznal, tak je to jejich původní kód. Když se někdy podívám, jak to udělali oni a jak jsem to udělal já, tak se prostě musím pochválit, jak elegantní ten výsledek je :-P

    Podpora ARM

    Na úrovni dynamického loaderu bych rád podporoval i platformu ARM, ze softwarového hlediska tedy iOS (iPod/iPad/iPhone). Aby z toho bylo něco opravdu užitečného, tak by bylo nutné dopsat příslušná API v iOS SDK nad něčím jiným (Android?). Půjde tedy spíše o proof of concept.

    Help needed

    Práce je obrovské množství. Našla by se spousta práce, která není nijak obtížná, ale přesto je nutné ji udělat. Kdyby se našli zájemci, jistě by se našla témata (knihovny) pro volný čas, semestrálky, bakalářky apod. Třeba takové Apple Events se dají relativně snadno napsat nad libdbus.

           

    Hodnocení: 100 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    6.12.2012 11:27 ewew | skóre: 40 | blog: ewewov_blog
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012

    Existuju nejaké vzorky kódu Applu a opensource verzie ?

    Dôvod portovania linuxu na hardvér applu ?

    Root v linuxe : "Root povedal, linux vykona."
    Luboš Doležel (Doli) avatar 6.12.2012 11:54 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    Existuju nejaké vzorky kódu Applu a opensource verzie ?
    opensource.apple.com a git.dolezel.info. Tohle není úplně 100% ukázka, ale první díl tohoto souboru (až po #else) a tento můj soubor to také trochu ilustrují. Nebo třeba masochismus Applu, který se dá nahrazovat minimem assembleru pro snazší portování.

    Hodně věcí v Applu se šije horkou jehlou, bez rozmyslu. Pak jsou výsledkem hacky kvůli zachování ABI, nahodile vlepované kusy kódu do jiného kódu, duplicity apod.
    Dôvod portovania linuxu na hardvér applu ?
    Nejak jsem nepochopil otázku. Já Linux neportuju, Linux na ppc dávno chodí.
    Bedňa avatar 6.12.2012 17:59 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    Tak to je hack, na iBook nainštalovať Linux a na ňom spúšťať aplikácie pre Apple :-)
    KERNEL ULTRAS video channel >>>
    6.12.2012 14:09 ET
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    ja bych mozna mel pixlu s ppc od macka za dovoz - ale je to starej desktop, procak ~400MHz, kdybys chtel tak se po nem kouknu...

    6.12.2012 14:10 ET
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    *za odvoz
    Luboš Doležel (Doli) avatar 6.12.2012 14:22 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    To ale nebude s OS X, že ne?
    6.12.2012 17:00 ET
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    mno naposled tam byl debian, ale uloz.to to jisti ne? ;)
    6.12.2012 14:18 smazáno | skóre: 18 | blog: smazáno
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    ja bych nekde nasel Mac LCIII+ ale to ti asi moc nepomuze :-)
    6.12.2012 14:36 luky
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    Nesly by ty Mach Ports implementovat v userspace pomoci posilani filedeskriptoru pres unixove sockety?
    Luboš Doležel (Doli) avatar 6.12.2012 14:42 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    Ne úplně. Ports mají systém práv a různé vlastnosti, které nejde bez asistence jádra pořádně naimplementovat.

    Příklad z mnoha: porty se při exec() nedědí, ale předává se tzv. bootstrap port. Další věcí je ale samotné posílání práv k portu, například send-once.
    6.12.2012 14:44 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    Rozepsal by ses maličko o těch výjimkách? Ta zmínka o setjmp/longjmp mě mírně děsí :-D
    Luboš Doležel (Doli) avatar 6.12.2012 14:56 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    Hehe, počkej si rok a půl a bude to popsaný v diplomce :-D

    Stručně jde o to, že zatímco 64bit ObjC výjimky používají "standardní" mechanismus výjimek na bázi libunwind a spol., takže to jde stejnou cestou jako výjimky C++, na 32bit to mají z nějakého historického důvodu jinak.

    Každý vstup do try bloku se tedy mění na volání objc_exception_try_enter, kterému se předá výstup funkce setjmp() volané hned před tím, a výstup z try bloku se analogicky mění na objc_exception_try_exit. Je-li hozena výjimka, runtime si vezme poslední try blok, který má na interním stacku, a udělá na něj longjmp(). To vede k tomu, že se program vrátí na to volání setjmp(), ale tentokrát ta funkce vrátí jinou hodnotu, což indikuje, že bylo skočeno zpět - tzn. došlo k výjimce.

    Na to vygenerovaný kód programu reaguje skokem do oblasti catch handlerů. Tam se kód ptá pomocí objc_exception_match(), jestli handler pro typ XYZ může handlovat výjimku, kterou si to získalo přes objc_exception_extract(). Pokud tam takový handler není, tak se opět - nanovo - volá objc_exception_throw(), které tu výjimku hodí přes try blok o úroveň níž.
    6.12.2012 16:23 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    Aha, takže oni to mají už v ObjC (na 32b) řešeno pomocí setjmp, já to ze zápisku špatně pochopil tak, žes nasadil setjmp z vlastního rozhodnutí. Takže to pak jó samozřejmě ;-)

    No každopádně, "zajímavě" to mají v tom ObjC pánové vyřešeno, jen co je pravda :-D
    6.12.2012 17:07 luky
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    Tak ono bylo ObjC pomerne dlouhou dobu implementovano jako preprocesor pro Ccko, takze to je vpodstate celkem primocare reseni.
    Salamek avatar 6.12.2012 17:27 Salamek | skóre: 22 | blog: salamovo
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    Pokud mas zajem mohl bych dodat iBook 4G s MAC OS X Tiger a Debianem (vice mene se tu vali kolem)
    Skutečně nemám v plánu zničit Microsoft. Bude to jen zcela neúmyslný vedlejší efekt.
    Luboš Doležel (Doli) avatar 6.12.2012 18:53 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    Tohle by bylo úžasný :-)
    Salamek avatar 6.12.2012 21:21 Salamek | skóre: 22 | blog: salamovo
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    Jabber at se muzem domluvit ? :)
    Skutečně nemám v plánu zničit Microsoft. Bude to jen zcela neúmyslný vedlejší efekt.
    Luboš Doležel (Doli) avatar 6.12.2012 21:29 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    lubos@dolezel.info
    Bedňa avatar 9.12.2012 10:29 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    A už si slávny :-)
    KERNEL ULTRAS video channel >>>
    Luboš Doležel (Doli) avatar 9.12.2012 10:52 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    A bylo to i na Slashdotu :-)
    Bedňa avatar 9.12.2012 12:03 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    Tak to gratulujem.
    KERNEL ULTRAS video channel >>>
    kotyz avatar 9.12.2012 10:58 kotyz | skóre: 25 | blog: kotyzblog | Plzeň
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    Dneska už ho probírají i na Google+ v Archlinux community. ;-)
    Hrdý člen KERNEL ULTRAS. | Furry/Brony/Otaku | Nemám čas ztrácet čas. | In 'pacman -Syu' we trust!
    Luboš Doležel (Doli) avatar 9.12.2012 11:22 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    Jen je smutné, že když už lidi nechtějí pomoci, tak tě od toho aspoň zrazují, co to jen jde.
    9.12.2012 15:54 ewew | skóre: 40 | blog: ewewov_blog
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012

    Je vidieť ako ľudia chránia vyvojárov pred super ultra mega užasným Apple systémom. Ktorý je tak úžasne súper, že si užívateľia nechaju diktovať čo je správne a čo nie. Alebo nemôžu zniesť, že by ich užasné MAC aplikácie fungovali na inom systéme ako len jedinom správnom systéme.

    Root v linuxe : "Root povedal, linux vykona."
    10.12.2012 12:20 Ovocníček
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    Lidi myslí i dobře. Protože přece jenom, programovat velký problém člověku sežere hodně času, a když mu to aspoň neobstarává živobytí, tak je samozřejmě otázka, jestli to tak trochu není ztráta času. (Což platí o spoustě dalších hobby činností, nejen o programování FOSS věcí.)

    Takže radím si z toho nic nedělat, pokud to máte promyšlené. Naopak si z toho vemte, že některým těm týpkům na vás v podstatě záleží, což je hezké. Naopak by se dalo říct, že lidi, kteří dobrovolníka povzbuzují, protože hodlají jeho práci používat, jsou tak trochu neupřímné potvory - chcou, aby někdo zabil spoustu času kvůli jejich pohodlí :D
    kotyz avatar 9.12.2012 19:26 kotyz | skóre: 25 | blog: kotyzblog | Plzeň
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    WTF? To ti tam píšou že to nemáš dělat? Místo aby byli rádi že se udělá něco užitečnýho...
    Hrdý člen KERNEL ULTRAS. | Furry/Brony/Otaku | Nemám čas ztrácet čas. | In 'pacman -Syu' we trust!
    Luboš Doležel (Doli) avatar 9.12.2012 19:27 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    Dozvěděl jsem se, že je to k ničemu a že to vzdám dřív, než z toho bude něco užitečnýho :-)
    10.12.2012 12:50 Ovocníček
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    Jo mimochodem, viděl jsem na phoronixu tohle: "As for LGPL/BSD: I do not use the BSD or similar license for a purpose. You wan't to make money off this? You either give me a cut or share your code with others. I find it fair."

    Jestli Luboš uvažuje o tom, že by to jednou mohlo mít komerční užití, tak by možná nebylo od věci se inspirovat u x264 (http://mailman.videolan.org/pipermail/x264-devel/2010-July/007508.html)

    Jde v podstatě o to, že kód je GPL, ale pokud firma má komerční projekt a ráda by ho použila (to znamená, že chce knihovnu linkovat do uzavřené aplikace), tak si koupí licenci a dostane tím vyjímku. Podmínku je, že jakékoliv distribuované změny musí dát k dispozici upstreamu.

    Pokud vím, tak úspěch tohoto licencování zdaleka předčil očekávání. Firmy mají očividně velký zájem - očividně raději platí, než aby se přizpůsobily GPL, byť by tou cestou dostaly ten samý kód zadarmo. Je to pěkné, komunita má všecko zadarmo, ale vývojáři zároveň můžou podojit komerční firmy (i dost velké). Třeba by si Luboš mohl takhle jednou vydělávat. Na druhou stranu nemám představu, jak velký je pro takovéhle věci trh (tj. jak moc je firem, které by na tom chtěly vydělávat a tzn. koupit si licenci). V případě x264 je trh dost velký, přirozeně.

    Protože to komerční licencování odstartovalo dost pozdě, bylo třeba sehnat všechny autory kódu a dostat od nich souhlas. Taky přispěvatelé musí podepsat, že souhlasí s tím dvojím licencováním.
    Luboš Doležel (Doli) avatar 10.12.2012 13:37 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    Přesně tak nějak jsem to myslel.

    Jinak teď se mi ozvali z Ukrajiny, že se dřív už neveřejně pokoušeli o něco podobnýho a že bychom mohli spojit síly. Tak vida, evidentně se to musí dostat na Slashdot, aby se to rozšířilo :-)
    10.12.2012 14:33 Tomáš
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    Při čtení jsem si vzpoměl na jeden velmi zajímavý článek implementaci vyjímek v C. Je založeno na této neuvěřitelné konstrukci, kterou si dovolím okopírovat:
       register n = (count + 7) / 8;      /* count > 0 assumed */
    
       switch (count % 8)
       {
       case 0:        do {  *to = *from++;
       case 7:              *to = *from++;
       case 6:              *to = *from++;
       case 5:              *to = *from++;
       case 4:              *to = *from++;
       case 3:              *to = *from++;
       case 2:              *to = *from++;
       case 1:              *to = *from++;
                          } while (--n > 0);
       }
    

    Toto je validní C kód ( žádná chyba ).

    10.12.2012 15:00 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Darling progress report - listopad 2012
    V tom článku ale tuhle konstrukci nepoužívají, když se podíváš, tak oni mají switch vevnitř v do, ne obráceně jako v Duff's device. Duff's device slouží k ompimalizaci - částečnému rozbalení smyčky, kdežto v tom článku ten switch slouží k rozlišení výstupu setjmp(). Celej ten switch mají ještě obalen v do { ... } while(0), nejspíš proto, aby tím vznikl vlastní sub-scope pro jmp_buf.

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.