linux符号学习

有时候很想知道某个具体的符号是哪种类型的符号,
未初始化的全局数据?已经初始化的全局数据?还是代码段?

使用nm命令可以列出符号、符号类型以及符号的绝对地址之间的对应关系。
nm可以列出main(可能是一个目标文件、或者是共享库文件或者是一个可执行文件等)中的符号对应关系。
sh-# nm -s main

查看nm命令的man手册,可以知道一些我们常见的符号的符号类型的含义:
"B" "b"----表示这个符号位于未初始化的数据段;
"D" "d"----表示这个符号位于初始化的数据段;
"T" "t"----表示这个符号位于代码段中;
....

我们也可以通过如下的命令来查看某个指定的符号信息,
sh-# nm -s main | grep "symbol"

了解linux相关的一些工具,能够帮助我们解决各种奇怪的问题。
地址、符号,这些都是极其有用的信息,一定要好好利用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值