嵌入式Linux系统开发 基于Yocto ProjectPDF电子书下载
- 电子书积分:13 积分如何计算积分?
- 作 者:(美)鲁道夫·J.,斯特雷夫著
- 出 版 社:北京:机械工业出版社
- 出版年份:2018
- ISBN:9787111603825
- 页数:352 页
第1章 用于嵌入式系统的Linux 1
1.1 为什么为嵌入式系统选择Linux 1
1.2 嵌入式Linux形势 3
1.2.1 嵌入式Linux发行版 3
1.2.2 嵌入式Linux开发工具 4
1.3 定制Linux发行版——为什么困难 6
1.4 关于开源许可的几句话 8
1.5 组织、相关实体和标准 9
1.5.1 Linux基金会 9
1.5.2 Apache软件基金会 9
1.5.3 Eclipse基金会 9
1.5.4 Linux标准基 10
1.5.5 消费电子产品工作组 10
1.6 总结 11
1.7 参考文献 11
第2章 Yocto项目 12
2.1 启动第一个Yocto项目构建 12
2.1.1 先决条件 13
2.1.2 获取Yocto项目工具 14
2.1.3 设置构建主机 15
2.1.4 配置构建环境 16
2.1.5 启动构建 18
2.1.6 验证构建结果 19
2.1.7 Yocto项目构建器具 19
2.2 Yocto项目系列 20
2.3 历史概览 22
2.3.1 OpenEmbedded 22
2.3.2 BitBake 22
2.3.3 Poky Linux 23
2.3.4 Yocto项目 23
2.3.5 OpenEmbedded和Yocto项目的关系 23
2.4 Yocto项目术语 24
2.5 总结 25
2.6 参考文献 26
第3章 OpenEmbedded构建系统 27
3.1 构建开源软件包 27
3.1.1 获取 28
3.1.2 解压 28
3.1.3 打补丁 28
3.1.4 配置 29
3.1.5 构建 29
3.1.6 安装 29
3.1.7 打包 30
3.2 OpenEmbedded工作流 30
3.2.1 元数据文件 31
3.2.2 工作流过程步骤 33
3.3 OpenEmbedded构建系统架构 35
3.3.1 构建系统结构 36
3.3.2 构建环境结构 39
3.3.3 元数据层结构 41
3.4 总结 44
3.5 参考文献 44
第4章 BitBake构建引擎 45
4.1 获取和安装BitBake 45
4.1.1 使用发布快照 46
4.1.2 克隆BitBake开发仓库 46
4.1.3 构建和安装BitBake 46
4.2 运行BitBake 46
4.2.1 BitBake执行环境 47
4.2.2 BitBake命令行 48
4.3 BitBake元数据 54
4.4 元数据语法 55
4.4.1 注释 55
4.4.2 变量 55
4.4.3 包含 59
4.4.4 继承 60
4.4.5 可执行元数据 61
4.4.6 元数据属性 66
4.4.7 元数据名(键)扩展 66
4.5 源下载 66
4.5.1 使用Fetch类 67
4.5.2 获取器实现 68
4.5.3 镜像 72
4.6 HelloWorld—— BitBake方式 74
4.7 依赖处理 77
4.7.1 配置 77
4.7.2 声明依赖 78
4.7.3 多个提供器 79
4.8 版本选择 79
4.9 变体 80
4.10 默认元数据 80
4.10.1 变量 81
4.10.2 任务 84
4.11 总结 84
4.12 参考文献 85
第5章 故障排除 86
5.1 记日志 86
5.1.1 日志文件 87
5.1.2 使用记日志语句 90
5.2 任务执行 92
5.2.1 执行特定任务 93
5.2.2 任务脚本文件 94
5.3 分析元数据 94
5.4 开发shell 95
5.5 依赖性关系图 95
5.6 调试层 97
5.7 总结 98
第6章 Linux系统架构 100
6.1 Linux或者GNU/Linux? 100
6.2 Linux系统的剖析 101
6.3 引导加载程序 102
6.3.1 引导加载程序的角色 102
6.3.2 Linux引导加载程序 103
6.4 内核 106
6.4.1 主要Linux内核子系统 107
6.4.2 Linux内核启动 111
6.5 用户空间 112
6.6 总结 113
6.7 参考文献 113
第7章 构建定制Linux发行版 114
7.1 核心镜像——Linux发行版蓝图 114
7.1.1 通过本地配置来扩展核心镜像 117
7.1.2 用QEMU测试镜像 118
7.1.3 使用构建历史验证和比较镜像 119
7.1.4 用菜谱扩展核心镜像 120
7.1.5 镜像特性 120
7.1.6 包组 122
7.2 从头构建镜像 126
7.3 镜像选项 128
7.3.1 语言和区域 128
7.3.2 包管理 128
7.3.3 镜像大小 129
7.3.4 根文件系统类型 130
7.3.5 用户、组和密码 131
7.3.6 调整根文件系统 132
7.4 发行版配置 134
7.4.1 标准发行版策略 134
7.4.2 Poky发行版策略 135
7.4.3 发行版特性 140
7.4.4 系统管理器 142
7.4.5 默认发行版设置 143
7.5 外部层 144
7.6 Hob 145
7.7 总结 147
第8章 软件包菜谱 148
8.1 菜谱布局和惯例 148
8.1.1 菜谱文件名 149
8.1.2 菜谱布局 149
8.1.3 格式指导方针 156
8.2 写新菜谱 157
8.2.1 建立菜谱 159
8.2.2 获取源代码 159
8.2.3 解压源代码 160
8.2.4 为源代码打补丁 161
8.2.5 增加许可信息 161
8.2.6 配置源代码 162
8.2.7 编译 163
8.2.8 安装构建输出 164
8.2.9 设置系统服务 165
8.2.10 打包构建输出 166
8.2.11 定制安装脚本 168
8.2.12 变体 169
8.3 菜谱例子 170
8.3.1 C文件软件包 170
8.3.2 基于makefile的软件包 171
8.3.3 基于CMake的软件包 173
8.3.4 基于GNU Autotools的软件包 174
8.3.5 外部构建软件包 175
8.4 devtool 175
8.4.1 使用devtool的往返开发 176
8.4.2 用于现有菜谱的工作流 179
8.5 总结 180
8.6 参考文献 180
第9章 内核菜谱 181
9.1 内核配置 182
9.1.1 菜单配置 182
9.1.2 配置片段 184
9.2 内核补丁 186
9.3 内核菜谱 188
9.3.1 从一个Linux内核树构建 188
9.3.2 从Yocto项目内核仓库构建 192
9.4 树外模块 202
9.4.1 开发内核模块 202
9.4.2 创建用于第三方模块的菜谱 205
9.4.3 把模块包含在根文件系统中 206
9.4.4 模块自动加载 207
9.5 设备树 207
9.6 总结 208
9.7 参考文献 208
第10章 板支持包 209
10.1 Yocto项目板支持包理念 209
10.2 用板支持包构建 212
10.2.1 为BeagleBone构建 212
10.2.2 外部Yocto项目板支持包 218
10.3 Yocto项目板支持包内部 222
10.3.1 许可文件 224
10.3.2 维护者文件 224
10.3.3 README文件 224
10.3.4 README.sources文件 224
10.3.5 预构建二进制 225
10.3.6 层配置文件 225
10.3.7 机器配置文件 225
10.3.8 类 226
10.3.9 菜谱文件 226
10.4 创建Yocto项目板支持包 226
10.4.1 Yocto项目板支持包工具 227
10.4.2 用Yocto板支持包工具创建板支持包 230
10.5 调优 232
10.6 创建可启动介质镜像 233
10.6.1 用烹制模式创建镜像 234
10.6.2 用原始模式创建镜像 235
10.6.3 kickstart文件 236
10.6.4 kickstart文件指令 237
10.6.5 插件 239
10.6.6 传输镜像 240
10.7 总结 240
10.8 参考文献 241
第11章 应用开发 242
11.1 Yocto项目ADT内部 242
11.2 设置Yocto项目ADT 244
11.2.1 构建工具链安装程序 244
11.2.2 安装工具链 245
11.2.3 用工具链工作 247
11.2.4 目标上执行 249
11.2.5 远程目标上调试 250
11.3 构建应用 253
11.3.1 基于makefile的应用 253
11.3.2 基于Autotools的应用 254
11.4 Eclipse集成 254
11.4.1 安装Eclipse IDE 255
11.4.2 集成Yocto项目ADT 257
11.4.3 开发应用 258
11.4.4 在目标上部署、运行和测试 260
11.5 使用模拟目标的应用开发 266
11.5.1 为用QEMU进行应用开发做准备 266
11.5.2 构建应用并在QEMU中启用它 268
11.6 总结 268
11.7 参考文献 269
第12章 许可和合规 270
12.1 管理许可 270
12.1.1 许可追踪 271
12.1.2 通用许可 273
12.1.3 商业许可的包 273
12.1.4 许可部署 274
12.1.5 黑名单许可 274
12.1.6 提供许可程序清单和文本 275
12.2 管理源代码 275
12.3 总结 277
12.4 参考文献 277
第13章 高级主题 278
13.1 Toaster 278
13.1.1 Toaster操作模式 279
13.1.2 Toaster设置 279
13.1.3 本地Toaster开发 280
13.1.4 Toaster配置 281
13.1.5 Toaster生产部署 283
13.1.6 Toaster Web用户界面 287
13.2 构建历史 289
13.2.1 启用构建历史 289
13.2.2 配置构建历史 289
13.2.3 推送构建历史到Git仓库服务器 290
13.2.4 理解构建历史 292
13.3 源镜像 295
13.3.1 使用源镜像 296
13.3.2 设置源镜像 297
13.4 自动构建器 298
13.4.1 安装自动构建器 299
13.4.2 配置自动构建器 300
13.5 总结 303
13.6 参考文献 303
附录A开源许可协议 304
附录B元数据参考 327
- 《管理信息系统习题集》郭晓军 2016
- 《信息系统安全技术管理策略 信息安全经济学视角》赵柳榕著 2020
- 《区块链DAPP开发入门、代码实现、场景应用》李万胜著 2019
- 《高含硫气藏开发腐蚀控制技术与实践》唐永帆,张强 2018
- 《系统解剖学速记》阿虎医考研究组编 2019
- 《慢性呼吸系统疾病物理治疗工作手册》(荷)瑞克·考斯林克(RikGosselink) 2020
- 《社会文化系统中的翻译》姜秋霞,杨正军 2019
- 《中国生态系统定位观测与研究数据集 森林生态系统卷 云南西双版纳》邓晓保·唐建维 2010
- 《物联网与嵌入式技术及其在农业上的应用》马德新 2019
- 《主题公园开发与管理》梁增贤编著 2019
- 《SQL与关系数据库理论》(美)戴特(C.J.Date) 2019
- 《魔法销售台词》(美)埃尔默·惠勒著 2019
- 《看漫画学钢琴 技巧 3》高宁译;(日)川崎美雪 2019
- 《优势谈判 15周年经典版》(美)罗杰·道森 2018
- 《社会学与人类生活 社会问题解析 第11版》(美)James M. Henslin(詹姆斯·M. 汉斯林) 2019
- 《海明威书信集:1917-1961 下》(美)海明威(Ernest Hemingway)著;潘小松译 2019
- 《反常识》张娟责任编辑;(美国)邓肯·J.瓦茨 2019
- 《迁徙 默温自选诗集 上》(美)W.S.默温著;伽禾译 2020
- 《上帝的孤独者 下 托马斯·沃尔夫短篇小说集》(美)托马斯·沃尔夫著;刘积源译 2017
- 《巴黎永远没个完》(美)海明威著 2017
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《高等教育双机械基础课程系列教材 高等学校教材 机械设计课程设计手册 第5版》吴宗泽,罗圣国,高志,李威 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中国十大出版家》王震,贺越明著 1991
- 《近代民营出版机构的英语函授教育 以“商务、中华、开明”函授学校为个案 1915年-1946年版》丁伟 2017
- 《新工业时代 世界级工业家张毓强和他的“新石头记”》秦朔 2019
- 《智能制造高技能人才培养规划丛书 ABB工业机器人虚拟仿真教程》(中国)工控帮教研组 2019
- 《AutoCAD机械设计实例精解 2019中文版》北京兆迪科技有限公司编著 2019