深入理解BootLoaderpdf下载

深入理解BootLoader百度网盘pdf下载

作者:
简介:深入理解BootLoader
出版社:机械工业出版社
出版时间:2015-01-01
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

内容简介
本书主要介绍BootLoader的开发理论、流程与实例,以当前流行的ARM和Linux为蓝本,详细介绍了如何一步步实现可用的BootLoader。该书既对Linux下的开发环境、编译器使用、处理器架构以及编译和链接、链接脚本的细节做了较全面的理论介绍,又结合具体的环境向读者说明了BootLoader的原理和开发流程,使读者真正懂得BootLoader是如何工作的,即便今后遇到其他处理器或者引导其他操作系统,也能熟知开发或者移植BootLoader的思路。本书是初涉BootLoader移植开发领域读者的一本不可多得的参考书。书中介绍的理论不仅仅对理解BootLoader有帮助,而且对理解计算机系统(嵌入式系统)也有启发意义,适合广大嵌入式系统爱好者和开发人员参考使用。
目录
版权信息
前言
第1章 BootLoader的概念
1.1 BootLoader的角色
1.2 BootLoader的来历
1.3 BootLoader的概念
1.4 本章小结
第2章 Linux开发环境
2.1 编辑器Vim
2.2 编译器GCC和交叉编译器
2.3 常用shell命令和脚本
2.4 工程管理Make和Makefile
2.5 本章小结
第3章 ARM体系结构
3.1 处理器模式
3.2 异常
3.3 ARM寄存器
3.4 通用寄存器
3.5 程序状态寄存器
3.6 本章小结
第4章 ARM指令集
4.1 数据处理指令
4.2 分支指令
4.3 软中断指令
4.4 程序状态寄存器指令
4.5 协处理器指令
4.6 加载常量的伪指令
4.7 本章小结
第5章 ARM寻址模式
5.1 寻址模式1——数据处理指令的寻址模式
5.2 寻址模式2——字或无符号字节的load/store指令
5.3 寻址模式3——杂类load/store指令的寻址方式
5.4 寻址模式4——批量load/store
5.5 寻址模式5——协处理器的load/store
5.6 本章小结
第6章 编译和链接
6.1 ELF文件结构描述
6.2 段表
6.3 符号表结构
6.4 存储空间分配
6.5 重定位信息
6.6 静态链接和重定位
6.7 本章小结
第7章 链接脚本
7.1 链接脚本的基本概念
7.2 链接脚本格式
7.3 简单的链接脚本示例
7.4 简单的链接脚本命令
7.5 为符号分配值
7.6 段命令
7.7 内存命令
7.8 链接脚本的表达式
7.9 本章小结
第8章 Linux下开发流水灯
8.1 GNU ARM汇编简介
8.2 流水灯的硬件描述
8.3 流水灯的汇编实现
8.4 流水灯的编译和链接
8.5 本章小结
第9章 U-Boot代码的分析
9.1 U-Boot简介
9.2 U-Boot目录结构
9.3 U-Boot配置和编译
9.4 U-Boot代码分析
9.5 本章小结
第10章 实现简单的BootLoader
10.1 STM32下的BootLoader设计
10.2 硬件平台pcDuino简介
10.3 三种方式实现代码复制和跳转
10.4 实现BootLoader
10.5 本章小结
精彩书摘
  第1章 BootLoader的概念
  本章导读
  本书讲述的主题是BootLoader,那么BootLoader是什么呢?首先从字面上来看,BootLoader是一个英文单词,那它是什么意思呢?如果使用词典查询一下,会得到这样的结果:“对不起,词库中没有您查询的单词!您要查找的是不是:Boot Loader Boot-Loader”Boot Loader[计]引导装载程序。
  可以看到BootLoader应该是Boot和Loader这两个单词的组合。Boot的意思是“[计算机科学]引导”,而Loader是“加载器”的意思。因此可以推断BootLoader这个词是随着计算机科学的发展而衍生出现的。
  1.1节介绍BootLoader在嵌入式系统或者计算机系统中所扮演的角色。
  1.2节结合半导体芯片技术、计算机技术以及软件工程技术的发展历史来探究BootLoader的出现过程,从而说明BootLoader的来历和它在整个计算机系统中的定位、概念以及作用。
  1.3节阐述BootLoader的概念,并以MCU下的BootLoader、嵌入式ARM和Linux下的BootLoader和PC下的引导流程为例进行说明。
精彩插图