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 04:33 | Komunita

    Konference OpenAlt 2026 hledá přednášející. Proběhne o víkendu 7. a 8. listopadu na půdě Fakulty informačních technologií VUT v Brně. Témata konference jsou: Otevřený a svobodný software, IoT a Hnutí tvůrců, Vzdělávání, Bezpečnost a soukromí, Otevřená společnost, komunity a data, OpenMobility a další.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | IT novinky

    Společnosti OpenAI a Broadcom oznámily čip optimalizovaný pro AI pojmenovaný Jalapeño.

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

    Deno (Wikipedie), běhové prostředí (runtime) pro JavaScript, TypeScript a WebAssembly, bylo vydáno v nové verzi 2.9. Hlavní novinkou je deno desktop pro převod Deno projektu na desktopovou aplikaci. Jedná se o alternativu k frameworkům Electron nebo Tauri.

    Ladislav Hagara | Komentářů: 2
    včera 15:44 | IT novinky

    Od zítra jsou Datové schránky oficiálně na nové adrese datovka.gov.cz. Adresa mojedatovaschranka.cz zůstává funkční do 27. srpna 2026, následně budou uživatelé automaticky přesměrováni na datovka.gov.cz.

    Ladislav Hagara | Komentářů: 2
    včera 13:44 | Nová verze

    Dolphin (Wikipedie), tj. open source multiplatformní emulátor herních konzolí GameCube a Wii od Nintenda, byl vydán ve verzi 2606. S podporou Game Boy Playeru.

    Ladislav Hagara | Komentářů: 0
    včera 11:11 | Zajímavý software

    Vasudeva Kamath představil utilitu debvulns, alternativu k nativní utilitě debsecan, pro výpis zranitelností v Debianu. Navíc má především možnost výstupu ve strukturovaných formátech JSON a CSV. V plánu je exportér pro Prometheus.

    Ladislav Hagara | Komentářů: 0
    24.6. 21:44 | IT novinky

    Oficiální český státní eshop s elektronickými dálničními známkami nově najdete na edalnice.gov.cz. Doména gov.cz jasně potvrzuje, že jste na oficiálním státním webu [𝕏].

    Ladislav Hagara | Komentářů: 22
    24.6. 14:22 | Nová verze

    Byla vydána nová verze 4.8.0 interaktivního shellu fish (friendly interactive shell, Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 4
    24.6. 12:00 | Nová verze

    Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. Nejvýkonnějším superpočítačem se nově stal čínský LineShine v Národním superpočítačovém centru v Šen-čenu (NSCS) s výkonem 2,198 exaFLOPS. Z prvního místa sesadil americký superpočítač El Capitan s výkonem 1,809 exaFLOPS. Nejvýkonnější český počítač C24 klesl na 215 místo. Karolina, GPU partition klesla na 249. místo a Karolina, CPU partition na 475. místo.

    … více »
    Ladislav Hagara | Komentářů: 13
    23.6. 21:00 | IT novinky

    Zemřel průkopník videoherní hudby Bobby Prince (Wikipedie). Složil hudbu pro hry Wolfenstein 3D, Doom, Doom II, Duke Nukem II a Duke Nukem 3D.

    Ladislav Hagara | Komentářů: 15
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (8%)
     (2%)
     (16%)
     (31%)
     (3%)
     (6%)
     (2%)
     (16%)
     (26%)
    Celkem 1986 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Hrátky s elfem - obsah souboru v binárce

    4.12.2007 07:00 | Přečteno: 1419× | Linux | Výběrový blog | poslední úprava: 4.12.2007 08:41

    Předem varuju, že tenhle zápisek patří k těm převážně suplujícím pamět autora, ale někomu by se to přece jen mohlo hodit. Řeší problém zajištění toho, aby po spuštění binárky byla na určitém místě paměti data z konkrétního souboru, aniž by se pak ten soubor musel předávat s binárkou. Typické použítí je pokud chceme k virtuální mašině přidat i nějaký ten zdroják ke kompilování nebo už zkompilovaný dump. Konkrétní příklad a ukázka jak na to s malou implementací forthu (jonesforth): autor spouští pro získání forthového prostředí
    cat jonesforth.f - |./jonesforth
    
    Po drobné úpravě asemblerového zdrojáku a níže uvedeném slinkování stačí ./jonesforth. Hlavní trik, který budu nejspíš někdy hledat, je v linkování pomocí link scriptu (ld -T) s obsahem
    INPUT(jonesforth.o)
    TARGET(binary)
    INPUT(jonesforth.f)
    OUTPUT_FORMAT(elf32-i386)
    OUTPUT(jonesforth)
    ENTRY(_start)
    
    PHDRS
    {
            headers PT_PHDR PHDRS ;
            text PT_LOAD FILEHDR PHDRS ;
            forth PT_LOAD ;
            data PT_LOAD ;
    }
    
    SECTIONS
    {
    . = SIZEOF_HEADERS;
    .text : { *(.text) } :text
    .forth : {
            text_start = . ;
            jonesforth.f ;
            text_end = .;
             } :forth
    . = 0x8000000;
    .data : { *(.data) } :data
    .bss : { *(.bss) }
    }
    
    kde jonesforth.o je výsledek kompilace assemblerového programu, jonesforth.f je soubor, který bude vložen, text_start a text_end jsou hodnoty použité v .o, které linker nataví na začátek a konec uložení souboru v paměti, a _start je začátek programu. Pokud umí někdo tohle jednodušeji, budu rád, pokud v diskusi ukáže jak.        

    Hodnocení: 100 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    4.12.2007 14:31 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Hrátky s elfem - obsah souboru v binárce
    Pokud jde jen o přibalení dat do ELF, tak stačí použít objcopy --add-section forth=jonesforth.f jonesforth.

    Ale jak se dostat za běhu té sekci nějak jednoduše, to netuším.
    4.12.2007 14:52 Tom.š Ze.le.in | skóre: 21 | blog: tz
    Rozbalit Rozbalit vše Re: Hrátky s elfem - obsah souboru v binárce
    Tohle právě objcopy zřejmě neumí, to jsem zkoušel jako první
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.