Name | Date | Size | #Lines | LOC | ||
---|---|---|---|---|---|---|
.. | - | - | ||||
tests/ | 03-May-2024 | - | 67 | 44 | ||
OWNERS | D | 03-May-2024 | 23 | 2 | 1 | |
PRESUBMIT.py | D | 03-May-2024 | 1.4 KiB | 46 | 31 | |
README | D | 03-May-2024 | 822 | 25 | 14 | |
find_runtime_symbols.py | D | 03-May-2024 | 6.4 KiB | 215 | 165 | |
prepare_symbol_info.py | D | 03-May-2024 | 9.2 KiB | 253 | 210 | |
reduce_debugline.py | D | 03-May-2024 | 1.8 KiB | 69 | 48 | |
static_symbols.py | D | 03-May-2024 | 8.8 KiB | 278 | 199 |
README
1This script maps runtime addresses to symbol names. It is robust over 2Address Space Layout Randomization (ASLR) since it uses runtime addresses with 3runtime mapping information (/proc/.../maps). 4Like 'pprof --symbols' in gperftools <http://code.google.com/p/gperftools/>. 5 6 7Step 1: Prepare symbol information. 8 9It is required to collect symbol information before mapping runtime addresses 10to symbol names. 11 12./prepare_symbol_info.py /path/to/maps [/another/path/to/symbol_info_dir] 13 14The required 'maps' file is /proc/.../maps of the process at runtime. 15 16 17Step 2: Find symbols. 18 19./find_runtime_symbols.py /path/to/symbol_info_dir < addresses.txt 20 21'symbol_info_dir' is the result of the Step 1. 22The stdin should be a list of hex addresses to map, one per line. 23 24The results will be printed to stdout like 'pprof --symbols'. 25