abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 11:55 | Zajímavý software

    Software LibrePods osvobozuje bezdrátová sluchátka AirPods z ekosystému Applu. Exkluzivní funkce AirPods umožňuje využívat na Androidu a Linuxu. Díky zdokumentování proprietárního protokolu AAP (Apple Accessory Protocol).

    Ladislav Hagara | Komentářů: 0
    dnes 05:00 | Nová verze

    Byl vydán AlmaLinux OS 10.1 s kódovým názvem Heliotrope Lion. S podporou Btrfs. Podrobnosti v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    dnes 04:33 | Komunita

    Placená služba prohledávání zprostředkovatelů dat a automatického odstraňování uniklých osobních údajů Mozilla Monitor Plus bude 17. prosince ukončena. Bezplatná monitorovací služba Mozilla Monitor bude i nadále poskytovat okamžitá upozornění a podrobné pokyny k omezení rizik úniku dat. Služba Mozilla Monitor Plus byla představena v únoru loňského roku.

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

    Waydroid (Wikipedie, GitHub) byl vydán v nové verzi 1.6.0. Waydroid umožňuje spouštět aplikace pro Android na běžných linuxových distribucích. Běhové prostředí vychází z LineageOS.

    Ladislav Hagara | Komentářů: 0
    včera 15:44 | Nová verze

    Příspěvek na blogu Raspberry Pi představuje novou kompletně přepracovanou verzi 2.0 aplikace Raspberry Pi Imager (YouTube) pro stažení, nakonfigurování a zapsání obrazu operačního systému pro Raspberry Pi na SD kartu. Z novinek lze vypíchnout volitelnou konfiguraci Raspberry Pi Connect.

    Ladislav Hagara | Komentářů: 2
    včera 11:22 | Nová verze

    Memtest86+ (Wikipedie), svobodný nástroj pro kontrolu operační paměti, byl vydán ve verzi 8.00. Přináší podporu nejnovějších procesorů Intel a AMD nebo také tmavý režim.

    Ladislav Hagara | Komentářů: 0
    včera 10:55 | Nová verze

    Programovací jazyk Racket (Wikipedie), tj. jazyk z rodiny jazyků Lisp a potomek jazyka Scheme, byl vydán v nové major verzi 9.0. Hlavní novinku jsou paralelní vlákna (Parallel Threads).

    Ladislav Hagara | Komentářů: 0
    včera 10:11 | Komunita

    Před šesti týdny bylo oznámeno, že Qualcomm kupuje Arduino. Minulý týden byly na stránkách Arduina aktualizovány podmínky používání a zásady ochrany osobních údajů. Objevily se obavy, že by otevřená povaha Arduina mohla být ohrožena. Arduino ubezpečuje, že se nic nemění a například omezení reverzního inženýrství v podmínkách používání se týká pouze SaaS cloudové aplikace.

    Ladislav Hagara | Komentářů: 0
    23.11. 13:33 | Bezpečnostní upozornění

    Knihovna libpng, tj. oficiální referenční knihovna grafického formátu PNG (Portable Network Graphics), byla vydána ve verzi 1.6.51. Opraveny jsou 4 bezpečnostní chyby obsaženy ve verzích 1.6.0 (vydána 14. února 2013) až 1.6.50. Nejvážnější z chyb CVE-2025-65018 může vést ke spuštění libovolného kódu.

    Ladislav Hagara | Komentářů: 11
    23.11. 12:22 | Zajímavý článek

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 159 (pdf).

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (35%)
     (46%)
     (19%)
     (18%)
     (22%)
     (15%)
     (23%)
     (16%)
     (17%)
    Celkem 396 hlasů
     Komentářů: 17, poslední 19.11. 21:57
    Rozcestník

    Dotaz: C# - kompilace?

    30.8.2012 02:38 li737 | skóre: 6
    C# - kompilace?
    Přečteno: 356×
    Zdravím! Mohl by mi někdo prosim vysvětlit jak funguje utilita mkbundle? Tváří se to ve vysledku jako že to aplikaci v C# přeloží do C a výsledek zkompiluje, ale není mi jasné jak to dokáže zkompilovat věc která používá garbage colector, potažmo libovolný systém coby runtime. Leda že by výsledný kód volal nějaká systémová volání v tomto smyslu ale to se mi nezdá. Děkuji

    Odpovědi

    30.8.2012 08:46 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: C# - kompilace?
    mkbundle umí k aplikaci přibalit vybrané assembly nebo celé běhové prostředí Mono. Podrobnosti viz Running Mono Applications.

    Žádná kompilace do C se neprovádí. Existuje však projekt CrossNet, který překládá IL kód do C++. Jako GC tam funguje klasický mark & sweep.
    Leda že by výsledný kód volal nějaká systémová volání v tomto smyslu ale to se mi nezdá.
    Nerozumím, co tím myslíte. GC musí hlavně vědět, co jsou ukazatele, aby neuklízel objekty, které jsou přístupné.
    30.8.2012 15:57 li737 | skóre: 6
    Rozbalit Rozbalit vše Re: C# - kompilace?
    díky za odpověď. Domníval jsem se že tam dochází k nějaké kompilaci vzhledem k výstupu mkbundle, konec vypadá podobně jako výstup gcc.
    [libor@fedora-notebook Debug]$ mkbundle ./pracovni_kalendar_aplikace.exe
    OS is: Linux
    Sources: 1 Auto-dependencies: False
       embedding: /home/libor/Projects/pracovni_kalendar/pracovni_kalendar_aplikace/bin/Debug/pracovni_kalendar_aplikace.exe
    Compiling:
    as -o temp.o temp.s 
    cc -ggdb -o a.out -Wall temp.c `pkg-config --cflags --libs mono-2`  temp.o
    Done
    
    voláním jsem měl na mysli zda není v systému popř. přímo v jádře nějaká rutina podobná GC kterou by výsledný program pokud by byl v c volal.
    30.8.2012 21:07 Radek Miček | skóre: 23 | blog: radekm_blog
    Rozbalit Rozbalit vše Re: C# - kompilace?
    Funguje to tak, že mkbundle vytvoří dva soubory temp.s a temp.c, ty pak přeloží a slinkuje. Soubor temp.s obsahuje assembly – jejich data (pokud jste mkbundle volal s volbou -z, data každé assembly se napřed zkomprimují a teprve poté uloží do souboru temp.s).

    Soubor temp.c obsahuje funkci main, informace o jednotlivých assembly a externí pole s daty jednotlivých assembly. main se postará o inicializaci běhového prostředí a načte assembly. Data jednotlivých assembly se nedávají přímo do souboru temp.c, protože některé verze GCC mají problémy s velkými poli. Soubory temp.c i temp.s si můžete prohlédnout, když mkbundle spustíte s volbou --keeptemp.

    Založit nové vláknoNahoru

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

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