gdb
Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
| Obě strany předchozí revizePředchozí verzeNásledující verze | Předchozí verze | ||
| gdb [2014/05/06 16:19] – [Výpis paměti] djbuldog | gdb [2025/08/28 10:09] (aktuální) – upraveno mimo DokuWiki 127.0.0.1 | ||
|---|---|---|---|
| Řádek 49: | Řádek 49: | ||
| #10 0x0000000000000000 in ?? () | #10 0x0000000000000000 in ?? () | ||
| </ | </ | ||
| + | |||
| + | * vypsání lokálních proměnných | ||
| + | < | ||
| + | (gdb) info locals | ||
| + | </ | ||
| + | |||
| * vypsání globálních/ | * vypsání globálních/ | ||
| < | < | ||
| Řádek 143: | Řádek 149: | ||
| </ | </ | ||
| + | * breakpoint se odstraní pomocí delete | ||
| + | < | ||
| + | (gdb) delete | ||
| + | Delete all breakpoints? | ||
| + | </ | ||
| + | |||
| + | ==== rámce ==== | ||
| + | |||
| + | * bt vypíše backtrace | ||
| + | * up/down přepíná kontext mezi rámci | ||
| + | * s, next další krok | ||
| + | * info frame informace o aktuálním rámci | ||
| + | * info args informace o parametrech funkce aktuálního rámce | ||
| + | * finish čekání na exit funkce, odchycení návratového hodnoty | ||
| + | |||
| + | ==== coredump smazané binárky ==== | ||
| + | |||
| + | * při upgrade balíčku (rpm/deb) s binárkou se typicky stává, že spuštěný proces zůstane běžet nad binárkou starou | ||
| + | * nebo pokud se zavolá rm na binárku spuštěného procesu | ||
| + | * nebo pokud chce někdo chránit spuštěný kód (vir) | ||
| + | * procesu pak nelze vytvořit coredump (debugovat přes gdb) | ||
| + | |||
| + | < | ||
| + | # gcore 15659 | ||
| + | core.YGsoec: | ||
| + | / | ||
| + | gcore: failed to create core.15659 | ||
| + | |||
| + | # ls -l / | ||
| + | lrwxrwxrwx. 1 root root 0 Mar 12 21:33 / | ||
| + | </ | ||
| + | |||
| + | * řešení | ||
| + | < | ||
| + | # gdb -p 15659 / | ||
| + | </ | ||
| + | |||
| + | * obraz lze vytvořit pomocí | ||
| + | |||
| + | < | ||
| + | (gdb) generate-core-file | ||
| + | (gdb) detach | ||
| + | </ | ||
| + | |||
| + | |||
| + | * v core dump je rovněž kód binárky (ale pouze ten, co byl aktivně v paměti) | ||
| + | * přístup do paměti binárky, které už nejsou v aktivní paměti, končí segmentation fault | ||
| ===== Zdroje ===== | ===== Zdroje ===== | ||
| + | |||
| + | * [[http:// | ||
| * http:// | * http:// | ||
gdb.1399385959.txt.gz · Poslední úprava: (upraveno mimo DokuWiki)
