vmlinux 反汇编_objdump 反汇编 vmlinux

android 8.1 and kernel 4.4

从编译终端界面查找 CROSS_COMPILE=aarch64-linux-android- 交叉编译工具的版本

从android顶层/prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/bin查找aarch64-linux-android-objdump

输入命令sudo ./aarch64-linux-android-objdump,切忌./ 一定要有,代表当前目录的aarch64-linux-android-objdump,否则出现command not found。

1.确保vmlinux中包含debug信息。主要由编译设置gcc -g

使成生的vmlinux中含有debug信息

3. sudo ./aarch64-linux-android-objdump -h vmlinux > vmlinux.txt

显示 linux 内核段信息,如段的开始虚拟地址,段的长度

4. sudo ./aarch64-linux-android-objdump -S -l -z vmlinux > vmlinux.txt

反汇编 vmlinux 到vmlinux.txt, vmlinux.txt 含有汇编和 c 源文件的混合代码,看起来很方

便。而且能一步步看linux怎么一步步运行的。

5. sudo ./aarch64-linux-android-objdump -S -l -z -j xxxx(section name) vmlinux > vmlinux.txt

反汇编 linux 内核段 xxxx 到文件 vmlinux.txt 中。

6. sudo ./aarch64-linux-android-objdump -x vmlinux > x.txt

vmliux中所有段的头信息,其中包口vmlinux的入口地址等

7. sudo ./aarch64-linux-android-objdump --debugging vmlinux > debugging.txt

很多有用的debug信息,如函数名,结构体定义等

android 8.1 and kernel 4.4 从编译终端界面查找 CROSS_COMPILE=aarch64-linux-android- 交叉编译工具的版本 从android顶层/prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/bin查找aarch64-linux-android-objdump 输入命令sudo ./aarch64-linux-android-objdump,切忌./ 一定要有,代表当前目录的aarch64-linux-android-objdump,否则出现command not found。 1.确保vmlinux中包含debug信息。主要由编译设置gcc -g 使成生的vmlinux中含有debug信息 3. sudo ./aarch64-linux-android-objdump -h vmlinux > vmlinux.txt 显示 linux 内核段信息,如段的开始虚拟地址,段的长度 4. sudo ./aarch64-linux-android-objdump -S -l -z vmlinux > vmlinux.txt 反汇编 vmlinux 到vmlinux.txt, vmlinux.txt 含有汇编和 c 源文件的混合代码,看起来很方 便。而且能一步步看linux怎么一步步运行的。 5. sudo ./aarch64-linux-android-objdump -S -l -z -j xxxx(section name) vmlinux > vmlinux.txt 反汇编 linux 内核段 xxxx 到文件 vmlinux.txt 中。 6. sudo ./aarch64-linux-android-objdump -x vmlinux > x.txt vmliux中所有段的头信息,其中包口vmlinux的入口地址等 7. sudo ./aarch64-linux-android-objdump --debugging vmlinux > debugging.txt 很多有用的debug信息,如函数名,结构体定义等
经验分享 程序员 微信小程序 职场和发展