uboot-2011.12移植到S3C2440(序一)——ELF可执行文件及其组成

发布者:算法之手最新更新时间:2022-04-21 来源: eefocus关键字:uboot  移植  S3C2440  ELF  可执行文件 手机看文章 扫描二维码
随时随地手机看文章

我们可以把可执行文件分为2种情况:存放态和运行态

1.存放态:可执行文件经过烧到存储介质上(flash或磁盘)的分布,此时可执行文件通常有2部分组成,代码段和数据段,代码段又分为可执行代码段 (.text)和只读数据段(.rodata),数据段可以分为初始化数据段(.data)和未初始化代码段(.bss),如下:

+-------------+-----------

| .bss        | (ZI)

+-------------+-- 数据段

| .data    | (RW)

+-------------+-----------

| .rodata     |

|_____________| 代码段(RO)

| .text    |

+-------------+-----------

.text代码段,.rodata只读数据段,.bss是未初始化全局变量段, .data是初始化被赋值的全局变量


2.运行态:可执行文件经过装载后就变成为运行态,

当可执行文件装载后, 在RAM中的分布如下:

| ...       |

+-------------+-- ZI段结束地址

| ZI 段    |

+-------------+-- ZI段起始地址

| 保留区2     |

+-------------+-- RW段结束地址

| RW 段    |

+-------------+-- RW段起始地址

| 保留区1     |

+-------------+-- RO段结束地址

| RO 段    |

+-------------+-- RO段起始地址

ZI段主要是未初始化数据,RW主要是自动变量,RO主要是代码段。


elf文件


elf文件是UNIX系统实验室开发的,主要包括可执行文件,可充分定位文件与可共享库文件等。按功能分又可分为链接文件和可执行文件。一个elf文件可以使用binutils工具集里面的readelf来查看,比如readelf -h u-boot查看u-boot文件头。


ELF Header:

  Magic:   7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00 

  Class:                             ELF32

  Data:                              2's complement, little endian

  Version:                           1 (current)

  OS/ABI:                            UNIX - System V

  ABI Version:                       0

  Type:                              DYN (Shared object file)

  Machine:                           ARM

  Version:                           0x1

  Entry point address:               0x0

  Start of program headers:          52 (bytes into file)

  Start of section headers:          1835468 (bytes into file)

  Flags:                             0x5000000, Version5 EABI

  Size of this header:               52 (bytes)

  Size of program headers:           32 (bytes)

  Number of program headers:         4

  Size of section headers:           40 (bytes)

  Number of section headers:         25

  Section header string table index: 22

关键字:uboot  移植  S3C2440  ELF  可执行文件 引用地址:uboot-2011.12移植到S3C2440(序一)——ELF可执行文件及其组成

上一篇:ARM微处理器的指令集概述(三)—— .word的含义
下一篇:uboot-2011.12移植到S3C2440(序二)—— binutils二进制工具集与u-boot

推荐阅读最新更新时间:2024-11-17 10:59

【Linux高级驱动】触摸屏驱动的移植
触摸屏驱动的移植 流程 注意:看框架图 1.添加input.c组件 Device Drivers --- Input device support --- Generic input layer (needed for keyboard, mouse, ...) 2.添加evdev.c组件 Device Drivers --- Input device support --- * Event interface 3.添加s3c2410_ts.c触摸屏驱动 修改driver/input/touchscreen/Kconfig config TOUCHSCREEN_S3C2410 tristate Samsun
[单片机]
TinyOS移植技术分析及在CC2430平台的应用
    无线传感器网络(Wireless Sensor Network,WSN)由部署在监测区域内大量廉价微型传感器节点组成,通过无线通信方式形成的一个网络系统,其目的是协作的感知、采集和处理网络覆盖区域中感知对象的信息,并发送给观察者,被誉为21世纪最具影响技术之一。传感器节点通常是一个微型的资源受限的嵌入式系统,因此要求一个小型高效的操作系统管理组织硬件并完成软件功能。     由于无线传感器网络节点的资源十分有限,传统的嵌入式操作系统难以正常有效地运行和工作,特别对能量和内存的需求矛盾比较突出。因此,需要一种全新的嵌入式操作系统来满足无线传感器节点的基本需求。近年来,科研机构不断开发出具有多种功能的WSN操作系统。大多数操作
[嵌入式]
嵌入式环境下分层的串行帧通信的设计与实现
嵌入式系统之间的通信通常有两种方式:并行通信和串行通信。并行方式传输数据速度快,但占用的通信线多,传输数据的可靠性随距离的增加而下降,只适用于近距离的数据传送。在远距离数据通信中,一般采用串行通信方式,它具有占用通信线少、成本低等优点。目前RS 232串口是PC机与通信工业中应用最广泛的一种串行接口,它应用于点对点通信模式,实际使用中多采用最简单的三线方式连接,即两端设备的串口只连接收、发、地三根线,即可实现简单的全双工通信。通信协议是两端设备数据交换的语言,是通信可靠性的保证,在保证功能的前提下,通信协议应该力求简洁。   1 系统通信需求   本系统主要完成野外环境下时间间隔测量和瞬态数据采集的功能,系统内各模块均选
[单片机]
嵌入式环境下分层的串行帧通信的设计与实现
uC/OS-II实时操作系统在嵌入式平台上进行移植的一般方法和技巧
引言 ---实时操作系统的使用,能够简化嵌入式系统的应用开发,有效地确保稳定性和可靠性,便于维护和二次开发。 μC/OS-II是一个基于抢占式的实时多任务内核,可固化、可剪裁、具有高稳定性和可靠性,除此以外,μC/OS-II的鲜明特点就是源码公开,便于移植和维护。 在μC/OS-II官方的主页上可以查找到一个比较全面的移植范例列表。但是,在实际的开发项目中,仍然没有针对项目所采用芯片或开发工具的合适版本。那么,不妨自己根据需要进行移植。 本文则以在TMS320C6711 DSP上的移植过程为例,分析了μC/OS-II在嵌入式开发平台上进行移植的一般方法和技巧。μC/OS-II移植的基本步骤 在选定了系统平台和开发
[嵌入式]
s3c2440的2440init.s详解_补充
1.S3C2440支持两种启动方式:NAND FLASH和NOR FLASH。 网上有很多文章分析TQ2440的启动文件2440init.s。介绍的很详细,我这里只是把S3C2440上电后的程序流程描述下。 不管在哪种启动方式下,ARM上电启动都是从0X00000000开始运行。下面是复位程序入口。 AREA Init,CODE,READONLY ENTRY ResetEntry b ResetHandler …… ResetEntry的值在ARM上电运行时是0X00000000,在JTAG仿真时是0X30000000。这个值很关键,在拷贝程序时会用到。 从NAND FLASH启动时,在ARM上电时,ARM会自动把
[单片机]
s3c2440裸机-nandflash编程-1-nandflash原理及结构简介
1.nandflash的原理图如下: 引脚属性见下表: 引脚名称 引脚功能 IO0~IO7 数据输入输出(命令、地址、数据共用数据总线) CLE 命令使能 ALE 地址使能 /CE 芯片使能(片选) /RE 读使能 /WE 写使能 R/B 就绪/忙输出信号(低电平表示操作还在进行中,高电平表示操作完成) ##2.nandflash内部存储结构 nandflash内部存储结构如下: 我们常见的Nand Flash,内部只有一个chip,每个chip只有一个plane。但也有些复杂的,容量更大的Nand Flash,内部有多个chip,每个chip有多个plane,这类的Nan
[单片机]
S3C2440时钟设置
S3C2440时钟设置 #define MDIV_405 0x7f 12 #define PSDIV_405 0x21 #define LOCKTIME_OFFSET 0x00 #define MPLLCON_OFFSET 0x04 #define CLKCON_OFFSET 0x0c #define CLKDIVN_OFFSET 0x14 #define CAMDIVN_OFFSET 0x18 /******************************************************************************************* * Referenc
[单片机]
基于2.6.19内核的小型Linux系统制作与移植
引言 ARM9 S3C2410微处理器与Linux的结合越来越紧密,逐渐在嵌入式领域得到广范的应用。目前,在便携式消费类电子产品、无线设备、汽车、网络、存储产品等都可以看到S3C2410与Linux相结合的身影。 S3C2410微处理器是一款由Samsung公司为手持终端设计的低价格、低功耗、高性能,基于ARM920T核的微处理器。它带有内存管理单元(MMU),采用0.18mm工艺和AMBA新型总线结构,主频可达203MHz。同时,它支持Thumb 16位压缩指令集,从而能以较小的存储空间获得32位的系统性能。 在众多嵌入式操作系统中,Linux目前发展最快、应用最为广泛 。性能优良、源码开放的Linux具有体积小、内核可裁
[嵌入式]

推荐帖子

教你IC翻新货识別法
大家如果购买芯片有三五十片的量,最好找代理公司或其分销商去购买,或者找些好的交易平台,像香港电子库存网和中国电子市场网,都有个买家服务部,可以打电话过去,让他们推荐好的,优势供应商,而不要去一般“统货”柜台拿货,一般什么都作的(所谓统货)柜台上的现货基本上是翻新货或旧货,而且他们看人报价,行家或熟人他们大多不敢太过分,但普通人他们还是能蒙就蒙、能骗则骗了,这已是比较普遍的现象,大家要多留神。如果你在这样的柜台上拿货,你一定要先“货比三家”,然后一定要讲清楚,要包换的。另外,成交
ESD技术咨询 安防电子
(转贴)[电路设计心得] 一个硬件高手的设计经验分享
本文转自AMOBBS的帖子,有很好参考意义:原帖子地址:http://www.amobbs.com/thread-5470101-1-1.html一个硬件高手的设计经验分享一:成本节约现象一:这些拉高/拉低的电阻用多大的阻值关系不大,就选个整数5K吧点评:市场上不存在5K的阻值,最接近的是4.99K(精度1%),其次是5.1K(精度5%),其成本分别比精度为20%的4.7K高4倍和2倍。20%精度的电阻阻值只有1、1.5、2.2、3.3、4.
dingzy_2002 Microchip MCU
推荐一种高速ad芯片
想自己做个示波器,用ads830采样,东西买回来了,发现ADS830引脚间距太小,不在我的能力范围之内,(我是自己腐蚀电路板,技术粗糙),就放在哪儿一直没敢下手,大家帮忙推荐一种和ADS830差不多的芯片,好焊接的哈,DIP封装的最好当然价格不能太贵了,我的要求也不是很高,只要和ads830差不多就行差一点也可以。。。。。谢谢了哈推荐一种高速ad芯片兄弟,你可以这样,看看ads830是啥样封装的,买那种万能贴片版,焊在上面,外围引脚都给你引出来了,拿线连就好了。其他的ad芯片
jialaolian DIY/开源硬件专区
线束绝缘电阻测试,聪明的你会选哪种方式?
全功能+批量化线束测试,和单一功能+费时费力线束测试,聪明的你会选哪种方式?线束绝缘电阻测试,聪明的你会选哪种方式?
aigtekatdz 测试/测量
笔记本电池长期不用后,没有输出电压,锁板了,大神们有解救办法吗?
华硕笔记本电池长期不用后,没有输出电压,锁板了,大神们有解救办法吗?笔记本电池长期不用后,没有输出电压,锁板了,大神们有解救办法吗?既然已经拆开那就好办。先逐节测试一下各电芯的电压,对端电压过低的电芯用两根飞线引出稍充一下电即可。充电甚至可用其它锂电池甚至干电池,三点几伏特的直流电都可以,短时充一下就好。待保护板解锁后安装回笔记本电脑,然后即可正常充电。先试试能不能充电,长期放后一般可能有1节或N节电芯损坏,可以查找一下。充一阵电,看看,俗称饿死了你这个是9个18650
soyoco 以拆会友
考考你的工程实践能力!设计室内路径记录仪
“RIGOL杯电子系统设计大赛”的着眼点在于培养大学生的工程实践能力,让学生们从实际入手,掌握更多工作中需要的知识和技能。这些题目也欢迎有经验的大虾们集思广益,参与设计!RIGOL电子系统设计大赛介绍http://rigol.eitp.com.cn/题目五:设计室内路径记录仪设计一个室内路径记录仪,不依赖卫星导航系统,以一个初始点为原点,实时记录和显示在室内行动的轨迹。在原点为坐标参照,每隔≤0.2s以(X,Y,Z)格式记录一个当前所处坐标位置。同时记录采样数据的日期和时间。能
EEWORLD社区 测试/测量
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved