• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    XCHAOSANSI C/C99 (specifikace), GNU C (gcc, glibc), Tiny C (tcc) a POSIX - ne nutně C++,g++,libstdc++ nebo Win32 API
    XCHAOS
    XCHAOS --- ---
    _BENNY: asi záleží na tom, co programuješ a jakým stylem. jistě sis všiml, že já se dost snažím o používání už oddebugovaných "design patterns", že jo... nikomu to necpu, ale faktem je, že dnes mi kód, který se přeloží, taky ve většině případů i běží (jistě... najdou se vyjímky...)
    _BENNY
    _BENNY --- ---
    bez debuggeru bych dnes ani nevstal z postele
    XCHAOS
    XCHAOS --- ---
    ANT_39: tak princip debug informace chápu - víceméně, minimálně to umím to odstranit příkazem strip :-) pár experimentů jsem dělal i s gdb (ale víceméně, přechod z DOSu pod Linux pro mě znamenal, že jsem se odnaučil debuggery používat - a místo toho do svých programů vkládám různé debugovací reporty.. ale to není podstatné)

    já jsem právě z toho odkazu pochopil, že It works by interpreting Dwarf debugging information stored at the binary itself.. V podstatě nic proti tomu - jen že je to ještě šílenější, než moje skromné pokusy přiblížit použití Céčka vyšším jazykům :-)
    ANT_39
    ANT_39 --- ---
    XCHAOS: Ladici informace se k binarkam pribaluji, aby debugger umel interpretovat pametovy obraz procesu, protoze v nativnich jazycich jsou jinak vsechno plocha data, kde nepoznas co je co. Aby debugger dokazal ty data interpretovat, potrebuje spoustu informaci: mapovani instrukci na radky kodu, informace pro odrolovani stacku (aby ti mohl ukazat, kde ti to spadlo), informace o jednotlivych funkcich a typech, o tom, kde je ktera promenna v jednotlivych okamzicich sveho zivota (v registru, v pameti, nebo vyoptimalizovana, a jeji hodnota se da spocitat takhle, atd.) Velike lehkotonazni variantou tehoz je tabulka symbolu. Runtime to normalne k zivotu nepotrebuje, je to informace pro debugger (a trasovatka atd.) Kdyz binarku stripnes, tak se to vsechno odstrani, a na beh to nema vliv.

    Tu samou informaci muzes samozrejme pouzit i zevnitr procesu samotneho, k reflexi, i kdyz je to divnost a osobne nevim, ze by to nekdo delal. Kdyz binarku stripnes, tak to prestane fungovat.

    (Vetsina linuxovych dister shipuje binarky stripnuty, a ladici informace se dodavaji v -debuginfo balicich. libdwfl tenhle model podporuje, akorat by potom holt balik musel zaviset na svem vlastnim debuginfu.)
    XCHAOS
    XCHAOS --- ---
    ANT_39: jako mě to celkem zaujalo, že runtime pracuje s nějakými debug informacemi v binárce. mohl by si stručně popsat, jak to funguje a k čemu je to dobré?
    ANT_39
    ANT_39 --- ---
    XCHAOS: Pripominam, ze jsme se k tomu dostali pres VPATH make. To, ze jsem to shodou okolnosti pouzil v obskurni knihovne, je prave jen shoda okolnosti. Rozhodne to neni reakce na nic. Btw, linkoval jsem to cca pul roku zpatky vedle v C/C++ klubu.
    XCHAOS
    XCHAOS --- ---
    ALMAD: a kde to píšu já? (že on to tvrdí)
    ALMAD
    ALMAD --- ---
    XCHAOS: ...remind me again, kde ant pise, ze je to vec vhodna pro zacatecniky, programovani na webu a vyuku?
    XCHAOS
    XCHAOS --- ---
    vypadá to, že na moje pokusy vytvořit přiměřeně nesrozumitelný toolkit v rámci čistého C tady kdosi reagoval zveřejněním něčeho ještě o několik řádů obskurnějšího a nesrozumitelnějšího... :-) já se aspon' snažil omezit to na compile-time triky :-)
    ANT_39
    ANT_39 --- ---
    HARVIE: There, you made me do it.
    HARVIE
    HARVIE --- ---
    ANT_39: mozna jsem nevzdelany, ale ani s pomoci googlu se mi nepodarilo zjistit co je ta trpaslici reflexe a zajimam se o to uz ciste jen z moznosti, ze by to mohlo nejak souviset s reddwarfem :-D a prave ta informace, ze v souboru userefl.c je ukazka by se myslim v README docela vyjimala, protoze na to z hlavy neprijdu bez toho abych si to vsechno proklikal :-)
    ANT_39
    ANT_39 --- ---
    HARVIE: "Library for Dwarf-based reflection in C" celkem popisuje co to dela. Je tam i priklad pouziti. Taky jsem psal, ze je to zabavny vikendovy hack, nikomu bych nedoporucoval na tom zaviset.
    HARVIE
    HARVIE --- ---
    ANT_39: no je videt, ze na dokumentaci si zrovna nepotrpis... Aspon nejaky to README bys tam moh soupnout, ono to pak na tom githubu hned vypada lip...
    XCHAOS
    XCHAOS --- ---
    ALMAD: a vidíš - už jsi zbytečně offtopic :-)
    ALMAD
    ALMAD --- ---
    //OT

    XCHAOS: Asi mi neco nedochazi, ale dovolim si citovat plny text:

    Hierarchie programátorů :-)

    Urbano's Blog | The Programmers Hierarchy
    http://urbanoalvarez.es/blog/2009/11/18/the-programmers-hierarchy/

    The Programmer Hierarchy » startafire
    http://blog.nik0.de/2010/08/the-programmer-hierarchy/

    #programming via #nyxcz


    -> pridana hodnota proti linku ktery te neodvede z nyxu, zachova attribution autora (aha vlastne, pirat) a jeste rekne klub je...errr...smajlik a tag programming.

    Nic, nevrtal bych se v tom, jenom ze na prvni klik to fakt zapusobilo jako honimenavstevnostlinkbait.
    XCHAOS
    XCHAOS --- ---
    ALMAD: asi takhle: historicky mě nyxáci kritizovali, že píšu dlouhé příspěvky, že NYX je spíš takové fórum orientovaná částečně vizuálně, částečně na cool úderné slogany... takže se zbytečně dlouhými a ne úplně ontopic příspěvky jsem se odklidil na svůj web a jenom na to linkuju... a ZASE je to špatně?!
    ALMAD
    ALMAD --- ---
    //OT, akorat kdyz ty, tak ja taky a furt se tu v ruznejch klubech ptas za co te kdo minuskuje

    XCHAOS: To jako fakt, ze mas prispevek via #nyxcz, ale misto abys ten prispevek linknul tady mezi klubama, nebo nerkuli primo dal ten obrazek, tak nas musis protahnout jeste pres svuj blog?

    Jako srsly?

    Ja vim ze je to moje chyba ze proklikavam na teckacz, ale stejne.
    XCHAOS
    XCHAOS --- ---
    TečkaCZ - xChaos: Hierarchie programátorů :-)
    http://teckacz.cz/-/18406
    BUKIN
    BUKIN --- ---
    HAPPPY_MAAN: Díky, pro mne je to naprosto španělská vesnice...
    HAPPPY_MAAN
    HAPPPY_MAAN --- ---
    BUKIN: hele jsi tu spatne, na toto bych se zeptal napr. v [ JAVA ] kde by mozna par lidi o jBPM neco mohlo vedet
    Kliknutím sem můžete změnit nastavení reklam