Linux常用命令中有一些命令可以在开发或调试过程中起到很好的帮助作用,有些可以帮助了解或优化我们的程序,有些可以帮我们定位疑难问题。 本文将简单介绍一下这些命令。 示例程序 我们用一个小程序,来帮助后面我们对这些命令的描述,程序清单cmdTest.c如下: 编译获得elf文件cmdTest并运行: ...
分类:
系统相关 时间:
2018-12-28 22:24:15
阅读次数:
285
busybox是什么? (1)busybox是Linux上的一个应用程序(application),即只有一个ELF文件头。 (2)它整合了许多Linux上常用的工具和命令(utilities), 如rm, ls, gzip, tftp等。对于这些工具和命令,busybox中的实现可能不是最全的,但 ...
分类:
移动开发 时间:
2018-11-24 20:57:25
阅读次数:
976
关于ELF文件的详细介绍,推荐阅读: ELF文件格式分析 —— 滕启明。ELF文件由ELF头部、程序头部表、节区头部表以及节区4部分组成。 通过objdump工具和readelf工具,可以观察ELF文件详细信息。 ELF文件加载过程分析 从编译、链接和运行的角度,应用程序和库程序的链接有两种方式。一 ...
分类:
其他好文 时间:
2018-11-03 19:22:09
阅读次数:
224
GOT应该保存的是puts函数的绝对虚地址,这里为什么保存的却是puts@plt的第二条指令呢? 原来“解释器”将动态库载入内存后,并没有直接将函数地址更新到GOT表中,而是在函数第一次被调用时,才会进行函数地址的重定位,这样做的好处是可以加快程序加载速度,尤其对大型程序来说。有关这方面的更详细的信 ...
分类:
其他好文 时间:
2018-11-03 19:21:27
阅读次数:
251
Lab 3: User Environments实验报告 tags:mit 6.828 os 概述: 本文是lab3的实验报告,主要介绍JOS中的进程,异常处理,系统调用。内容上分为三部分: 1. 用户环境建立,可以加载用户ELF文件并执行。 2. 建立异常处理机制。 3. 提供系统调用的能力。 P ...
分类:
其他好文 时间:
2018-10-23 20:50:16
阅读次数:
2128
(1)添加*.elf文件; 在Design Sources工作目录中右键选择添加源文件,找到SDK目录中对应的文件夹下的Debug内*.elf文件,将其添加。然后,源文件目录更新,多出一个ELF文件夹,其中包含了刚添加的*.elf文件。 (2)关联*.elf文件,然后生成的bit文件加载后软核是ru ...
分类:
系统相关 时间:
2018-10-14 01:46:11
阅读次数:
351
LF文件(Executable Linkable Format)是一种文件存储格式。Linux下的目标文件和可执行文件都按照该格式进行存储,有必要做个总结。 概要 本文主要记录总结32位的Intel x86平台下的ELF文件结构。ELF文件以Section的形式进行存储。代码编译后的指令放在代码段( ...
分类:
编程语言 时间:
2018-10-07 17:58:35
阅读次数:
164
使用JTAG调试器和Freemaster 2.0 进行powerpc架构的mpc5XXX系列的调试。 该功能可以方便实现实时监控程序中的变量的变化。非常方便。使用环境: 1、类PE的JTAG接口的调试器。 2、安装了Freemaster 2.0 的PC机 3、编译过程中产生的elf文件或者map文件 ...
分类:
其他好文 时间:
2018-09-28 15:25:05
阅读次数:
278
操作系统 操作系统运行程序 hello world程序的执行过程 1. 用户通知操作系统执行hello world应用程序 2. 操作系统找到hello world程序的相关信息, 程序的相关信息(ELF文件信息, 不包括.text, .data, .bss, stack segment, heap ...
分类:
其他好文 时间:
2018-09-23 13:37:28
阅读次数:
195
相信大家对makefile都不陌生,在Linux下编写程序基本都离不开makefile的编写,我们都知道多个.c文件经过编译器编译后得到多个.o文件,这些文件是互相独立的,但最终我们要得到一个可正常运行的文件,很显然这个过程就是连接,将多个.o文件连接为一个文件,这个文件是.elf文件。下面来举个例 ...
分类:
其他好文 时间:
2018-09-22 21:29:32
阅读次数:
135