linux下找出核心符號資訊的4種方法

2021-10-13 11:30:14 字數 924 閱讀 2340

在核心除錯中由乙個符號的位址找到對應的符號名稱非常有助於我們對核心的除錯。下面將介紹4種方式來獲得核心符號資訊的4種方法。

system.map檔案在編譯核心時生成,包含了核心在編譯時的靜態符號資訊。

grep do_fork /boot/system.map-4.15.0-128-generic
就可以通過do_fork函式名來獲得函式的位址

grep ffffffff810905b0 /boot/system.map-4.15.0-128-generic
就可以通過ffffffff810905b0位址來獲得該位址的函式名字

/proc/kallsyms檔案中包含了核心中的符號表。

cat /proc/kallsyms | grep do_fork
就可以通過do_fork函式名來獲得函式的位址

cat /proc/kallsyms | grep ffffffff810905b0
就可以通過ffffffff810905b0位址來獲得該位址的函式名字

vmlinux是核心編譯後產生的原始的檔案,包含除錯資訊。

nm vmlinux | grep do_fork
就可以通過do_fork函式名來獲得函式的位址

nm vmlinux | grep ffffffff810905b0
就可以通過ffffffff810905b0位址來獲得該位址的函式名字

kallsyms_lookup_name()
已知核心符號,獲取核心符號位址。

sprint_symbol()
已知核心符號位址, 獲取核心符號名。

linux下找出核心符號資訊的4種方法

在核心除錯中由乙個符號的位址找到對應的符號名稱非常有助於我們對核心的除錯。下面將介紹4種方式來獲得核心符號資訊的4種方法。system.map檔案在編譯核心時生成,包含了核心在編譯時的靜態符號資訊。grep do fork boot system.map 4.15.0 128 generic就可以通...

linux下找出核心符號資訊的4種方法

在核心除錯中由乙個符號的位址找到對應的符號名稱非常有助於我們對核心的除錯。下面將介紹4種方式來獲得核心符號資訊的4種方法。system.map檔案在編譯核心時生成,包含了核心在編譯時的靜態符號資訊。grep do fork boot system.map 4.15.0 128 generic就可以通...

linux下找出核心符號資訊的4種方法

在核心除錯中由乙個符號的位址找到對應的符號名稱非常有助於我們對核心的除錯。下面將介紹4種方式來獲得核心符號資訊的4種方法。1.從 system.map 檔案中得到位址 system.map檔案在編譯核心時生成,包含了核心在編譯時的靜態符號資訊。grep ffffffff810905b0 boot s...