ref:https://blog.csdn.net/USBdrivers/article/details/7928004

Linux下的nm命令详解

nm命令的输出包含三个部分:1 符号值。默认显示十六进制,也可以指定; 2 符号类型。小写表示是本地符号,大写表示全局符号(external); 3 符号名称。 给个例子:
00000000 b .bss
00000000 d .data
00000000 r .rdata
00000000 t .text
         U ___main
00000000 T _add
0000000d T _main
00000000 D _num1
00000004 D _num2
                 U _printf
其中符号名称的含义:
A 符号值是绝对的。在进一步的连接中,不会被改变。

B 符号位于未初始化数据段(known as BSS).

C 共用(common)符号. 共用符号是未初始化的数据。在连接时,多个共用符号可能采用一个同样的名字,如果这个符号在某个地方被定义,共用符号被认为是未定义的引用.

D 已初始化数据段的符号

G 已初始化数据段中的小目标(small objective)符号. 一些目标文件格式允许更有效的访问小目标数据,比如一个全局的int变量相对于一个大的全局数组。

I 其他符号的直接应用,这是GNU扩展的,很少用了. N 调试符号.

R 只读数据段符号. S 未初始化数据段中的小目标(small object)符号.

T 代码段的符号.

U 未定义符号.

V 弱对象(weak object)符号. 当一个已定义的弱符号被连接到一个普通定义符号,普通定义符号可以正常使用,当一个未定义的弱对象被连接到一个未定义的符号,弱符号的值为0.

W 一个没有被指定一个弱对象符号的弱符号(weak symbol)。 - a.out目标文件中的刺符号(stabs symbol). 这种情况下,打印的下一个值是其他字段,描述字段,和类型。刺符号用于保留调试信息.

? 未知符号类型,或者目标文件特有的符号类型.

命令参数
-tradix  --radix=radix符号值得进制。d 十进制, o 八进制, x 十六进制.

-D  --dynamic显示动态符号,只在对象是动态时有用.

-fformat  --format=format输出的格式,有"bsd","sysv" 或"posix"可选。默认是“bsd”.

-g  --extern-only只显示外部符号.

-l  --line-numbers对每一个符号,使用调试信息去查找文件名和行号。

-u  --undefined-only只显示未定义的符号.

--defined-only只显示已定义的符号.--help

nm 命令输出项解析相关推荐

  1. nm linux 输出含义,nm 命令输出项解析

    Linux下的nm命令详解 nm命令的输出包含三个部分:1 符号值.默认显示十六进制,也可以指定: 2 符号类型.小写表示是本地符号,大写表示全局符号(external); 3 符号名称. 给个例子: ...

  2. linux 下nm命令输出,Linux nm命令介绍

    nm用来列出目标文件的符号清单.下面是nm命令的格式: nm [-a | --debug-syms] [-g | --extern-only] [-B][-C | --demangle] [-D | ...

  3. linux 下nm命令输出,使用awk解析nm命令的输出 - Linux Bash

    这听起来这样从您的评论可能是你真正寻找: $ cat tst.awk { size = strtonum("0x"$1) sub(/^([^[:space:]]+[[:space: ...

  4. HotSpot VM运行时01---命令行选项解析

    HotSpot VM有3个主要组件:VM运行时(Runtime).JIT编译器(JIT Compiler)以及内存管理器(Memory Manager). HotSpot VM运行时担当许多职责:命令 ...

  5. python add argument list_python模块介绍- argparse:命令行选项及参数解析

    #承接软件自动化实施与培训等gtalk:ouyangchongwu#gmail.com qq 37391319 博客: http://blog.csdn.net/oychw #版权所有,转载刊登请来函 ...

  6. python输入正方形边长值、计算其面积_尝试修改列6.2编写命令行参数解析的程序,解析命令行参数所输入边长的值,计算并输出正方形的周长和面积。_学小易找答案...

    [简答题] [单选题]ZigBee 中每个协调点最多可连接______个节点,一个ZigBee网络最多可容纳______个节点.( ) [资料题]DWord-Ans.pdf 索引和目录.pdf 完成效 ...

  7. 编程模板-R语言脚本写作:最简单的统计与绘图,包安装、命令行参数解析、文件读取、表格和矢量图输出

    写在前面 个人认为:是否能熟悉使用Shell(项目流程搭建)+R(数据统计与可视化)+Perl/Python等(胶水语言,数据格式转换,软件间衔接)三门语言是一位合格生物信息工程师的标准. 之前分享过 ...

  8. 【Linux 内核】进程管理 ( 进程特殊形式 | 内核线程 | 用户线程 | C 标准库与 Linux 内核中进程相关概念 | Linux 查看进程命令及输出字段解析 )

    文章目录 一.进程特殊形式 ( 内核线程 | 用户线程 ) 二.C 标准库与 Linux 内核中进程相关概念 三.Linux 查看进程命令及输出字段解析 一.进程特殊形式 ( 内核线程 | 用户线程 ...

  9. 安装rpm包命令_编程模板-R语言脚本写作:最简单的统计与绘图,包安装、命令行参数解析、文件读取、表格和矢量图输出...

    不常用R的朋友,可能并不能意识到好的编辑模板带来的长期效率提高和代码重用性,非计算机专业科研人员且需要使用R语言,此文会对您有帮助. 个人认为:是否能熟悉使用Shell(项目流程搭建)+R(数据统计与 ...

最新文章

  1. 在CentOS 6.3 64bit上使用 smartmontools和MageCli 监测硬盘的健康状态
  2. 如何从0到1构建一个稳定、高性能的Redis集群?(附16张图解)
  3. 不同网段使用同一台网络打印机
  4. 剑指offer 算法 (举例让抽象具体化)
  5. 学计算机选电脑,大学准备学计算机,选怎样配置的电脑好?
  6. 启动文件需要做的工作
  7. 视觉SLAM总结——视觉SLAM十四讲笔记整理
  8. 在 sql server 中,查询 数据库的大小 和 数据库中各表的大小
  9. 移动端-ibokan
  10. vue新版router.addRoute基础用法
  11. linux 查看tdagent进程,Zabbix监控记录linux服务器近期的登录情况
  12. 哈,我再xp Professional上安装SqlServer2005桌面管理器
  13. matlab 结果导入excel,Matlab导入Excel文件中的数据的详细教程分享
  14. 百度网站收录批量查询 介绍百度网站收录批量查询3种方式
  15. opencv实现camshift算法,以及代码详解
  16. 牛客SQL 大厂面试真题 某宝店铺分析 5套代码及解析
  17. NullPointerException丢失异常堆栈信息
  18. left join on和 join on的区别
  19. QT命令行编译时出现'mingw32-make'不是内部或外部命令,也不是可运行的程序或批处理文件
  20. 【干货】-- 带你抓取并分析知乎高评分电影

热门文章

  1. 史上最全Java面试题全集(上)
  2. 区块链-压缩格式的密钥
  3. Python网络编程(一)
  4. 原神梦里花花种在哪种
  5. 计算日期差(C/C++实现)
  6. 社交产品分析:共同看片,微光
  7. java 3D学习笔记
  8. Hystrix组件学习(一)
  9. MongoDB简单学习小总结
  10. Java面试题:单核CPU支持多线程吗?