Linux 工具套件 —— binutils、readelf
- readelf:Linux 下专门针对 ELF 文件格式的解析器;
0. binutils
- gnu binutils 一套二进制工具的集合,主要包含:ld(gnu linker)、as(gnu assembler),此外还包括:
- addr2line:Converts addresses into filenames and line numbers.
- ar:A utility for creating, modifying and extracting from archives.
- c++filt:Filter to demangle encoded C++ symbols.
- dlltool:A new, faster, ELF only linker, still in beta test.
- gold:A new, faster, ELF only linker, still in beta test.
- gprof:Displays profiling information.
- nlmconv:Converts object code into an NLM.
- nm:Lists symbols from object files.
- objcopy:Copies and translates object files.
- objdump:Displays information from object files.
- ranlib:Generates an index to the contents of an archive.
- readelf:Displays information from any ELF format object file.
- size:Lists printable strings from files.
- strip:Discards symbols.
- windmc:A Windows compatible(兼容的) message compiler.
- windres:A compiler for Windows resource files.
1. objdump
objdump:顾名思义,查看显示 obj(目标文件)的内部结构;
$ gcc -c hello.c
# -c 表示只编译不链接;
$ objdump -h hello.o
Linux 工具套件 —— binutils、readelf的更多相关文章
- Linux内核分析——Linux内核学习总结
马悦+原创作品转载请注明出处+<Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 Linux内核学习总结 一 ...
- Linux内核分析——期中总结
期中总结 一.MOOC课程 (一)计算机是如何工作的 1.冯诺依曼体系结构的核心思想是存储程序计算机. 2.CPU在实际取指令时根据cs:eip来准确定位一个指令. 3.寄存器模式,以%开头的寄存器标 ...
- 如何在Linux上面安装GCC 4.1.2
安装步骤: 1.首先下载GCC 4.1.2的source code package: $ wget http://mirrors.ustc.edu.cn/gnu/gcc/gcc-4.1.2/gcc-4 ...
- Linux之ELF文件初探
对比windowsPE文件与概述 在windows中可执行文件是pe文件格式,Linux中可执行文件是ELF文件,其文件格式是ELF文件格式,在Linux下的ELF文件除了可执行文件(Excutabl ...
- Linux 驱动开发
linux驱动开发总结(一) 基础性总结 1, linux驱动一般分为3大类: * 字符设备 * 块设备 * 网络设备 2, 开发环境构建: * 交叉工具链构建 * NFS和tftp服务器安装 3, ...
- AFL Fuzz安装及完成一次简单的模糊测试
关于AFL fuzz AFL fuzz是一个模糊测试工具,它封装了一个GCC/CLang编译器,用于对被测代码重新编译的过程中进行插桩.插桩完毕后,AFL fuzz就可以给其编译过的代码输入不同的参数 ...
- GNU 交叉工具链的介绍与使用
常用工具介绍 名称 归属 作用 armlinuxas binutils 编译 ARM 汇编程序 armlinuxar binutils 把多个.o 合并成一个.o 或静态库(.a) arml ...
- .NET5.0 单文件发布打包操作深度剖析
.NET5.0 单文件发布打包操作深度剖析 前言 随着 .NET5.0 Preview 8 的发布,许多新功能正在被社区成员一一探索:这其中就包含了"单文件发布"这个炫酷的功能,实 ...
- malware analysis、Sandbox Principles、Design && Implementation
catalog . 引言 . sandbox introduction . Sandboxie . seccomp(short for secure computing mode): API级沙箱 . ...
随机推荐
- Java面向对象—抽象类和接口
本文引用海子的一篇文章:http://www.cnblogs.com/dolphin0520/p/3811437.html 一.抽象类 在了解抽象类之前,先来了解一下抽象方法.抽象方法是一种特殊的方法 ...
- python之路 JavaScript基础
一.JavaScript简介 JavaScript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型.它的解释器被称为JavaScript引擎,为 浏览器的一部分,广泛用于客户端 ...
- JavaScript delete用法,属性,特性,执行上下文,激活对象 综合篇
一.问题的提出 我们先来看看下面几段代码,要注意的是,以下代码不要在浏览器的开发者工具(如FireBug.Chrome Developer tool)中运行,原因后面会说明: 为什么我们可以删除对象的 ...
- 官方online ddl
一.5.6版本online DDL 操作 In Place Rebuilds Table Concurrent DML Only Modifies Metadata 说明 add/create sec ...
- Python 中lambda 简单介绍
转自:https://www.cnblogs.com/AlwaysWIN/p/6202320.html 在学习python的过程中,lambda的语法经常出现,现在将它整理一下,以备日后查看. 1.l ...
- MapReduce:实现文档倒序排序,且字符串拼接+年+月+日
写出MapReduce程序完成以下功能. input1: -- a -- b -- c -- d -- a -- b -- c -- c input2: -- b -- a -- b -- d -- ...
- linux tzselect 设置时区
date -R 检查时间 tzselect 按照提示逐步设置 //这里演示的是设置东八区 TZ='Asia/Shanghai'; export TZ 添加到/etc/profile source pr ...
- JDBCTemplate执行增删改查(CDUR)操作
1.JdbcTemplate简介 (1)Spring提供的一个操作数据库的技术JdbcTemplate,是对Jdbc的封装.语法风格非常接近DBUtil. JdbcTemplate可以直接操作数据库, ...
- ThinkPHP关于模板的一些嵌套、IF判断使用
> ##### 前言,现在有一组数据(涉及到3个数据表,order订单表,order_process办理流程表,process_status流程描述表),根据当前订单,展示相应信息 1.办理流程 ...
- 端口被sysmtem占用
今天启动Apache的时候老是提示失败,很简单,使用 netstat -ano 发现80端口被占用.如图所示: