深入理解BOOTLOADERPDF电子书下载
- 电子书积分:11 积分如何计算积分?
- 作 者:胡尔佳编著
- 出 版 社:北京:机械工业出版社
- 出版年份:2015
- ISBN:711148570X
- 页数:268 页
第1章 BootLoader的概念 1
1.1 BootLoader的角色 1
1.2 BootLoader的来历 2
1.3 BootLoader的概念 6
1.3.1 MCU下的BootLoader 10
1.3.2 嵌入式ARM和Linux下的BootLoader 17
1.3.3 PC下的引导流程 18
1.4 本章小结 20
第2章 Linux开发环境 21
2.1 编辑器Vim 21
2.1.1 Vim介绍 22
2.1.2 Vim的两个基本模式 22
2.1.3 Vim的两个常用模式 24
2.1.4 Vim的启动与退出 25
2.1.5 Vim下光标的移动 26
2.1.6 Vim下的复制、粘贴和删除 28
2.1.7 Vim下的撤销和重复 28
2.1.8 Vim下的查找和替换 28
2.1.9 Vim下的文件恢复 29
2.1.10 Vim下的插件 29
2.2 编译器GCC和交叉编译器 30
2.2.1 GCC的编译流程 30
2.2.2 GCC的常用编译选项 31
2.2.3 交叉编译器 35
2.3 常用shell命令和脚本 37
2.3.1 find命令 38
2.3.2 grep命令 42
2.3.3 管道与重定向 46
2.4 工程管理Make和Makefile 49
2.4.1 Make和Makefile 49
2.4.2 Makefile中的变量 52
2.4.3 自动推导规则 53
2.4.4 嵌套的Makefile 53
2.4.5 Make伪目标 54
2.4.6 自动化变量 56
2.4.7 Make的内嵌函数 56
2.5 本章小结 60
第3章 ARM体系结构 61
3.1 处理器模式 61
3.2 异常 62
3.3 ARM寄存器 63
3.4 通用寄存器 64
3.4.1 未分组的寄存器:R0~R7 65
3.4.2 分组的寄存器:R8~R14 65
3.4.3 寄存器R15:程序计数器 66
3.5 程序状态寄存器 66
3.5.1 PSR位的类型 66
3.5.2 条件标志位 67
3.5.3 中断禁止位 68
3.5.4 模式位 68
3.6 本章小结 68
第4章 ARM指令集 69
4.1 数据处理指令 69
4.2 分支指令 73
4.3 软中断指令 74
4.4 程序状态寄存器指令 75
4.5 协处理器指令 76
4.6 加载常量的伪指令 78
4.7 本章小结 78
第5章 ARM寻址模式 79
5.1 寻址模式1——数据处理指令的寻址模式 79
5.1.1 编码格式 80
5.1.2 移位器操作数 80
5.1.3 数据处理操作——立即数 81
5.1.4 数据处理操作——寄存器 82
5.1.5 数据处理操作——立即数的逻辑左移 83
5.1.6 数据处理操作——寄存器的逻辑左移 84
5.1.7 数据处理操作——立即数的逻辑右移 85
5.1.8 数据处理操作——寄存器的逻辑右移 85
5.1.9 数据处理操作——立即数的算术右移 86
5.1.10 数据处理操作——寄存器的算术右移 87
5.1.11 数据处理操作——立即数的循环右移 88
5.1.12 数据处理操作——寄存器的循环右移 89
5.1.13 数据处理操作——扩展的循环右移 90
5.2 寻址模式2——字或无符号字节的load/store指令 90
5.2.1 编码格式 91
5.2.2 立即数偏移 92
5.2.3 寄存器偏移 93
5.2.4 比例寄存器偏移 94
5.2.5 立即数的前变址寻址 95
5.2.6 寄存器的前变址寻址 96
5.2.7 比例寄存器的前变址寻址 97
5.2.8 立即数的后变址寻址 99
5.2.9 寄存器的后变址寻址 100
5.2.10 比例寄存器的后变址寻址 101
5.3 寻址模式3——杂类load/store指令的寻址方式 103
5.3.1 编码格式 103
5.3.2 杂类load/store——立即数偏移 104
5.3.3 杂类load/store——寄存器偏移 105
5.3.4 杂类load/store——立即数的前变址寻址 106
5.3.5 杂类load/store——寄存器的前变址寻址 107
5.3.6 杂类load/store——立即数的后变址寻址 108
5.3.7 杂类load/store——寄存器的后变址寻址 109
5.4 寻址模式4——批量load/store 110
5.4.1 编码格式 110
5.4.2 批量load/store——执行后增加 111
5.4.3 批量load/store——执行前增加 112
5.4.4 批量load/store——执行后减少 112
5.4.5 批量load/store——执行前减少 113
5.4.6 用于栈操作的批量load/store 114
5.5 寻址模式5——协处理器的load/store 115
5.5.1 编码格式 115
5.5.2 协处理器的load/store——立即数偏移 116
5.5.3 协处理器的load/store——立即数的前变址寻址 117
5.5.4 协处理器的load/store——立即数的后变址寻址 118
5.5.5 协处理器的load/store——无索引 119
5.6 本章小结 119
第6章 编译和链接 120
6.1 ELF文件结构描述 122
6.2 段表 128
6.3 符号表结构 133
6.4 存储空间分配 138
6.4.1 简单的存储布局 138
6.4.2 实际采用的空间布局 139
6.5 重定位信息 140
6.5.1 重定位表项 140
6.5.2 重定位类型 142
6.6 静态链接和重定位 143
6.6.1 符号和符号表 144
6.6.2 符号解析 145
6.6.3 重定位 146
6.7 本章小结 150
第7章 链接脚本 151
7.1 链接脚本的基本概念 152
7.2 链接脚本格式 152
7.3 简单的链接脚本示例 153
7.4 简单的链接脚本命令 154
7.4.1 入口点 154
7.4.2 文件命令 155
7.4.3 格式命令 156
7.4.4 区域别名 157
7.4.5 杂类命令 159
7.5 为符号分配值 160
7.5.1 简单的分配 161
7.5.2 HIDDEN 161
7.5.3 PROVIDE 162
7.5.4 PROVIDE HIDDEN 162
7.5.5 源代码引用 162
7.6 段命令 164
7.6.1 输出段描述 164
7.6.2 输出段名称 165
7.6.3 输出段地址 165
7.6.4 输入段描述 166
7.6.5 输出段数据 171
7.6.6 输出段关键字 172
7.6.7 输出段丢弃 172
7.6.8 输出段属性 172
7.6.9 覆盖描述 175
7.7 内存命令 177
7.8 链接脚本的表达式 178
7.8.1 常量 178
7.8.2 符号常量 179
7.8.3 符号名称 179
7.8.4 孤立的段 179
7.8.5 位置计数器 180
7.8.6 运算符 182
7.8.7 赋值 183
7.8.8 内建函数 183
7.9 本章小结 187
第8章 Linux下开发流水灯 188
8.1 GNU ARM汇编简介 188
8.2 流水灯的硬件描述 191
8.3 流水灯的汇编实现 193
8.4 流水灯的编译和链接 195
8.5 本章小结 196
第9章 U-Boot代码的分析 197
9.1 U-Boot简介 197
9.2 U-Boot目录结构 198
9.3 U-Boot配置和编译 200
9.4 U-Boot代码分析 207
9.4.1 SPL代码追踪 208
9.4.2 U-Boot代码追踪 233
9.5 本章小结 245
第10章 实现简单的BootLoader 246
10.1 STM32下的BootLoader设计 246
10.2 硬件平台pcDuino简介 251
10.2.1 pcDuino nano配置 252
10.2.2 pcDuino nano的接口和外设 253
10.2.3 平台和主芯片介绍 254
10.3 三种方式实现代码复制和跳转 255
10.3.1 方式一 255
10.3.2 方式二 258
10.3.3 方式三 259
10.4 实现BootLoader 261
10.4.1 广义上的BootLoader 261
10.4.2 如何引导Linux 264
10.4.3 引导代码实现 266
10.4.4 BootLoader引导Linux总结 267
10.5 本章小结 267
- 《深入推进自我革命》任仲文 2019
- 《行测言语理解与表达》李永新主编 2019
- 《深入浅出区块链核心技术与项目分析》梁伟 2019
- 《深入浅出Ruby 影印版》Jay McGavren 2017
- 《棘手孩子 理解孩子的天生气质》(美国)斯坦利·图雷克,莱斯利·唐纳 2019
- 《高中英语核心词汇理解性记忆》(加)林维龙,郑瑶菲编著 2019
- 《2021年考研英语(二)阅读理解精读80篇 精练篇 第13版》老蒋主编 2019
- 《理解奢侈品》王资译;(法国)亚历山大·德·圣马里 2019
- 《国际英语口音可理解性研究与语音教学》邓军 2019
- 《深入浅出设计模式》(美)埃里克·弗里曼(Eric Freeman)等著 2019
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《高等教育双机械基础课程系列教材 高等学校教材 机械设计课程设计手册 第5版》吴宗泽,罗圣国,高志,李威 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中国十大出版家》王震,贺越明著 1991
- 《近代民营出版机构的英语函授教育 以“商务、中华、开明”函授学校为个案 1915年-1946年版》丁伟 2017
- 《新工业时代 世界级工业家张毓强和他的“新石头记”》秦朔 2019
- 《智能制造高技能人才培养规划丛书 ABB工业机器人虚拟仿真教程》(中国)工控帮教研组 2019
- 《AutoCAD机械设计实例精解 2019中文版》北京兆迪科技有限公司编著 2019