ARM嵌入式Linux系统设计与开发
作者 : 俞辉 李永 刘凯 王晓虹 等编著
出版日期 : 2010-04-20
ISBN : 978-7-111-30004-5
定价 : 30.00元
教辅资源下载
扩展信息
语种 : 简体中文
页数 : 281
开本 : 16
原书名 :
原出版社:
属性分类: 教材
包含CD :
绝版 :
图书简介

本书全面介绍以ARM-Linux为操作系统的嵌入式系统设计与开发技术,秉承理论与实践相结合的指导思路,帮助读者快速跨入嵌入式系统开发的门槛。本书共11章,分三篇,其中,第一篇(第1~3章)主要介绍嵌入式硬件平台和软件系统的基础知识,第二篇(第4~7章)主要介绍基于ARM-Linux系统的驱动开发、软件移植、图形用户接口以及通信应用等内容,第三篇(第8~11章)主要介绍一些基于ARM-Linux的实际应用方案和案例。
本书内容丰富、概念清楚,适合作为高等院校计算机、电子、通信、软件工程等专业嵌入式课程的教材,也可供广大工程技术人员参考。

图书特色

ARM嵌入式Linux系统设计与开发
俞辉 李永 刘凯 王晓虹 等编著

嵌入式Linux具有开源、网络功能强大、内核稳定高效等特性,广泛应用于中低端智能电子设备中。而它与ARM的结合,更是一种主流的解决方案,嵌入式Linux+ARM已经广泛应用于机顶盒、掌上电脑、消费电子、MPC、网络设备、工业控制等领域。
本书基于作者多年对课程教学的思考和实践编写而成,充分体现了理论与实践相结合的特色。

本书特点
采取理论与实践相结合的指导思路,介绍以ARM-Linux为操作系统的嵌入式系统设计与开发技术。
内容丰富,涵盖进行嵌入式Linux系统开发所需掌握的相关知识。
为读者提供源代码,并为授课教师提供电子教案,可登录华章网站(http://www.hzbook.com)下载。

图书前言

嵌入式Linux由于具有开源、网络功能强大、内核稳定高效等特性,在产品开发周期、产品的功能可扩充性、开发时的人力投入等方面都具有显著的优势,因此广泛应用于中低端智能电子设备中。而它与ARM的结合,更是一种主流的解决方案,嵌入式Linux+ARM已经广泛应用于机顶盒、掌上电脑、消费电子、MPC、网络设备、工业控制等领域,并且具有良好的市场前景。
  本书全面介绍以ARM-Linux为操作系统的嵌入式系统设计与开发技术,秉承理论与实践相结合的指导思路,帮助读者快速跨入嵌入式系统开发的门槛。本书内容丰富、概念清楚、层次分明、通俗易懂,可以作为各类高等院校计算机、电子、通信、软件工程等专业高年级学生嵌入式Linux程序设计或嵌入式系统程序设计等课程的教材,也可作为相关工程技术人员和计算机爱好者学习嵌入式程序设计的参考书。
本书的编写目的与特色
  本书在总结作者多年的教学经验的同时,为嵌入式Linux系统等相关课程提供配套的教材,通过实例,使读者能够较容易地掌握相关的嵌入式Linux程序设计方面的基本概念和技能;通过综合实例的学习和模拟,达到训练实际开发能力的目的。
  “实践”和“创新”是嵌入式系统课程的两个主要特点。实践是整个嵌入式系统课程体系中重要的环节,而创新的思想贯穿整个嵌入式教学的始终,最后要通过案例的实现来对所学的嵌入式知识进行检验。
本书的主要内容与结构安排
  本书共11章,分为三篇。第一篇(第1~3章)为“ARM嵌入式Linux系统的基础与平台构建”,主要介绍嵌入式硬件平台和软件系统的基础知识,以期帮助读者达到构建嵌入式系统开发平台的目的。
  第二篇(第4~7章)为“ARM嵌入式Linux系统的驱动开发与软件应用”,主要介绍基于ARM-Linux系统的驱动开发、软件移植、图形用户接口以及通信应用等内容。这些内容构成了嵌入式软件系统相关实验的基础,涵盖了嵌入式Linux系统的几乎所有要点。在完成该篇内容的学习之后,即可进入ARM-Linux的实际应用部分。
  第三篇(第8~11章)为“ARM嵌入式Linux系统的解决方案与应用场合”,主要介绍一些基于ARM-Linux的实际应用方案和案例。本篇包含OMAP5910的相关应用、实时Mobile Linux系统、嵌入式Linux系统的设计与优化以及一个嵌入式Linux综合实例——数字油田生产监控系统。学生在了解该篇内容后,会对嵌入式系统目前的应用场合和解决方案有较深入的了解。
阅读本书时的注意事项
  理论与实践相结合是本书的一大特色。若读者有相应的实验开发环境,建议动手验证书中安排的每一个环节,会取得良好的效果。具体实验可以参考《嵌入式Linux程序设计案例与实验教程》1该书已由机械工业出版社出版,书号为:978-7-111-26327-2。——编辑注。读者需要特别注意:1)某些代码需考虑平台的差异性,部分硬件相关代码需要修改;2)相关软件的版本与依赖关系,同一软件(包括交叉编译器)的不同版本在编译环境、使用方式、编程要求上存在一些差异,具体要求与区别均需参考相关文档。
  教学建议中的学时为教授各章全部知识点的所需学时,教师可以根据实际情况增删。
  由于篇幅问题,我们将本书的一些代码和说明文档放到了网站上,读者可以登录http://www.hzbook.com下载。
  本书在撰写过程中参考了许多相关公司的技术文档与网络资源,包括北京博创科技兴业有限公司。读者在阅读本书的同时,也可以查阅相关资料(参见本书最后的参考文献)。
结语
  本书由俞辉执笔,李永、刘凯、王晓虹审定写作提纲。具体分工如下:中国石油大学(华东)李永编写了第2、3、4、5章,长沙民政学院刘凯编写了第8章,辽宁石油化工大学王晓虹编写了第6章,其余章节由俞辉编写,并负责统一校稿。另外,王爱国、黄晶等也参与了编写工作。
  在本书的编写过程中,得到了许多同仁、北京博创科技兴业有限公司和机械工业出版社华章分社的大力支持和帮助,在此一并表示衷心的感谢。
  由于时间仓促,加之水平有限,书中的不足之处在所难免,敬请读者批评指正。编者的电子邮箱是bysj2004@126.com,欢迎来信交流。

编者
2010年1月于中国石油大学(华东)青岛校区

上架指导

计算机\嵌入式编程

封底文字

嵌入式Linux具有开源、网络功能强大、内核稳定高效等特性,广泛应用于中低端智能电子设备中。而与ARM的结合,更是一种主流的解决方案,嵌入式Linux+ARM已经广泛应用于机顶盒、掌上电脑、消费电子、MPC、网络设备、工业控制等领域。
本书是对《嵌入式Linux程序设计案例与实验教程》的总结和升华,基于作者多年对课程教学的思考和实践编写而成,充分体现了理论与实践相结合的特色。
本书特点
? 采取理论与实践相结合的指导思路,介绍以ARM-Linux为操作系统的嵌入式系统设计与开发技术。
? 内容丰富,涵盖进行嵌入式Linux系统开发所需掌握的相关知识。
? 为读者提供源代码,并为授课教师提供电子教案,可登录华章网站(http://www.hzbook.com)下载。

Embedded Linux System Design and Development on ARM


加《嵌入式Linux程序设计案例与实验教程》一书的书号和定价

图书目录

前 言
教学建议
第一篇 ARM嵌入式Linux
系统的基础与平台构建
第1章 嵌入式系统基础1
1.1 嵌入式系统的概念与特点 1
 1.1.1 嵌入式系统的概念 1
 1.1.2 嵌入式系统的特点 1
 1.1.3 嵌入式系统的软硬件可裁剪 2
 1.1.4 嵌入式系统与单片机、传统PC的区别 2
1.2 嵌入式系统开发基础 3
 1.2.1 嵌入式系统的硬件基础 3
 1.2.2 嵌入式系统的软件基础 10
1.3 嵌入式系统开发流程与方法 14
 1.3.1 嵌入式系统的抽象体系结构 14
 1.3.2 实时软件分析设计方法DARTS 15
 1.3.3 嵌入式系统的开发流程 16
 1.3.4 嵌入式Linux系统的程序部署 17
习题 18
第2章 ARM与Linux基础 19
2.1 ARM概述 19
 2.1.1 ARM体系结构 19
 2.1.2 XScale体系结构 24
2.2 Linux系统的使用 27
 2.2.1 Linux的使用基础 27
 2.2.2 Linux内核与结构 37
 2.2.3 嵌入式Linux的启动过程 41
2.3 LinuxC程序设计 42
 2.3.1 LinuxC程序设计基础 43
 2.3.2 调试工具 45
 2.3.3 Linux多线程库编程 52
习题 56
第3章 嵌入式Linux内核、文件系统与存储 57
3.1 嵌入式引导系统技术 57
 3.1.1 概述 57
 3.1.2 u灢boot目录结构 58
 3.1.3 u灢boot启动流程及相关代码分析 59
 3.1.4 u灢boot的常用命令 67
3.2 Linux内核定制、裁剪和添加 68
 3.2.1 概述 68
 3.2.2 配置文件和配置工具 69
 3.2.3 内核的编译命令 71
 3.2.4 内核的烧写过程 71
3.3 文件系统的构建 73
 3.3.1 概述 73
 3.3.2 BusyBox的移植 74
3.4 关于2.6版本内核的几点改进 78
习题 79
第二篇 ARM嵌入式Linux系统的驱动开发与软件应用
第4章 嵌入式Linux接口设计与驱动程序 81
4.1 驱动程序设计基础 81
 4.1.1 Linux驱动程序简介 81
 4.1.2 开发驱动程序的方法 81
 4.1.3 设备驱动程序的分类 82
4.1.4 主设备号和次设备号82
 4.1.5 udev介绍83
4.2 虚拟驱动模块实验90
 4.2.1 内核的配置90
 4.2.2 编写驱动程序94
 4.2.3 测试程序和 Makefile96
 4.2.4 测试程序的执行过程96
4.3 AD接口驱动程序97
 4.3.1 AD转换器97
 4.3.2 AD转换有关参数99
 4.3.3 ARM自带的AD转换装置99
 4.3.4 程序说明100
4.4 触摸屏接口设计与驱动104
 4.4.1 触摸屏的工作原理104
 4.4.2 S3C2410芯片的触摸屏相关配置寄存器105
 4.4.3 程序说明109
4.5 帧缓冲与LCD驱动移植110
 4.5.1 帧缓冲机制介绍110
 4.5.2 LCD简介111
 4.5.3 LCD控制器初始化时所需的数据结构111
 4.5.4 移植LCD驱动程序115
4.6 V4L程序设计119
 4.6.1 V4L概述119
 4.6.2 视频驱动实验121
习题128
第5章 嵌入式Linux开源软件移植与应用129
5.1 开源软件移植的一般过程129
 5.1.1 软件移植的概念129
 5.1.2 软件移植过程129
5.2 嵌入式 WebServerGoAhead的移植与应用130
 5.2.1 嵌入式 Web服务器130
 5.2.2 GoAhead介绍131
 5.2.3 GoAhead在ARM平台上的移植131
 5.2.4 页面操作133
5.3 嵌入式 WebServicegSOAP的移植与应用134
 5.3.1 gSOAP介绍134
 5.3.2 gSOAP裁剪137
 5.3.3 gSOAP应用140
 5.3.4 gSOAP移植145
5.4 嵌入式数据库SQLite的移植与应用147
 5.4.1 SQLite介绍147
 5.4.2 SQLite在ARM平台上的移植148
 5.4.3 SQLite的使用151
5.5 播放器 Mplayer的移植154
 5.5.1 Mplayer介绍154
 5.5.2 Mplayer在ARM平台上的移植154
5.6 J2ME灢phoneME的移植157
 5.6.1 phoneME介绍157
 5.6.2 软件移植过程157
5.7 嵌入式浏览器Konqueror的移植158
 5.7.1 Konqueror介绍158
 5.7.2 软件移植过程159
习题161
第6章 嵌入式Linux图形用户接口162
6.1 嵌入式GUI简介162
 6.1.1 嵌入式GUI的特点162
 6.1.2 嵌入式GUI的种类162
6.2 嵌入式GUI———Qt163
 6.2.1 Qt与Qt/Embedded简介163
 6.2.2 Qt的特点163
 6.2.3 Qt的执行过程164
 6.2.4 Qt的插槽机制166
 6.2.5 一个完整的Qt程序166
 6.2.6 QtDesigner介绍166
6.3 Qt/E4与键盘鼠标接口的映射167
 6.3.1 Qt/E4的移植过程167
 6.3.2 Qt/E4键盘鼠标接口的工作原理170
 6.3.3 Qt/E4与LinuxPS/2
键盘鼠标驱动的衔接172
 6.3.4 Qt/E4键盘驱动映射的实现172
习题174
第7章 嵌入式Linux下的通信应用175
7.1 嵌入式Linux下的串口通信175
 7.1.1 串口简介175
 7.1.2 串口编程175
 7.1.3 串口编程应用实例177
7.2 嵌入式Linux网络编程179
 7.2.1 网络通信179
 7.2.2 Socket简介179
 7.2.3 网络编程180
 7.2.4 网络编程应用实例182
7.3 嵌入式蓝牙技术185
 7.3.1 蓝牙技术185
 7.3.2 蓝牙体系结构185
 7.3.3 蓝牙通信网络186
 7.3.4 LinuxBluetooth软件层186
 7.3.5 USB适配器186
 7.3.6 蓝牙应用实例187
7.4 CAN总线191
 7.4.1 CAN总线简介191
 7.4.2 CAN总线硬件特征191
 7.4.3 CAN控制器驱动194
 7.4.4 CAN总线编程实例196
7.5 GPS和GPRS的应用199
 7.5.1 GPS原理与应用199
 7.5.2 GPS编程实例200
 7.5.3 GPRS原理与应用203
 7.5.4 GPRS编程实例204
习题205
第三篇 ARM嵌入式Linux系统的解决方案与应用场合
第8章 OMAP5910与Linux Gateway207
8.1 OMAP5910体系结构207
 8.1.1 MPU子系统207
 8.1.2 DSP子系统208
8.2 LinuxDSPGateway210
 8.2.1 DSPGateway的由来210
 8.2.2 DSPGateway的 Mailbox机制210
 8.2.3 通信缓冲210
 8.2.4 Mailbox命令协议213
 8.2.5 DSPGateway的设备接口214
8.3 OMAP5910图像处理215
 8.3.1 图片格式215
 8.3.2 数字图像算法216
8.4 基于OMAP的加密终端的实现(软件部分)218
 8.4.1 加密算法简介218
 8.4.2 加密终端的具体实现220
习题221
第9章 实时MobileLinux系统222
9.1 LiMo基金会222
 9.1.1 LiMo基金会介绍222
 9.1.2 LiMo手机解决方案的软件体系结构222
9.2 开放手机联盟224
 9.2.1 开放手机联盟与Android 224
 9.2.2 Android应用程序结构分析227
 9.2.3 Android开发环境搭建229
 9.2.4 Android应用程序开发———HelloWorld234
9.3 MobileLinux系统的构建实例236
 9.3.1 MarvellPXA310简介236
 9.3.2 基于PXA310的 MobileLinux系统构建过程237
习题240
第10章 嵌入式Linux系统的设计桖与优化241
10.1 嵌入式产品的生产链与关键因素241
10.2 嵌入式系统开发方法241
 10.2.1 软硬件 “分离暠设计方法241
 10.2.2 非形式化建模方法与形式化建模方法242
 10.2.3 结构化设计范式与面向对象设计范式243
10.3 硬件选型对性能的影响243
 10.3.1 硬件平台的分类244
 10.3.2 嵌入式处理器的选择244
 10.3.3 外围设备的选择244
 10.3.4 硬件成本245
10.4 软件设计对性能的影响245
 10.4.1 嵌入式软件开发的特点245
 10.4.2 嵌入式软件开发中存在的问题245
 10.4.3 常用嵌入式软件设计方法246
10.5 软硬件协同设计方法247
 10.5.1 传统设计方法的局限性247
 10.5.2 嵌入式软硬件协同设计方法247
习题249
第11章 嵌入式Linux综合实例———数字油田生产监控
系统的设计与实现250
11.1 系统概述250
 11.1.1 系统结构和功能简介250
 11.1.2 软硬件环境252
11.2 系统设计252
 11.2.1 系统总体方案设计252
 11.2.2 无线传感器节点设计253
 11.2.3 远程测控终端RTU设计254
11.3 软件设计259
 11.3.1 远程测控终端RTU软件设计259
 11.3.2 监控中心软件设计266
参考文献271

教学资源推荐
作者: [美]玛里琳·沃尔夫(Marilyn Wolf)著
作者: 李东,朱东杰,陈源龙
作者: [美]莫里斯·赫利希(Maurice Herlihy),[美]尼尔·沙维特(Nir Shavit),[美]维克多·卢昌科(Victor Luchangco),[美]迈克尔·斯皮尔(Michael Spear) 著
作者: (美)Edward Ashford Lee, Sanjit Arunkumar Seshia 著
参考读物推荐
作者: Douglas Schmidt,Michaes Stal,Hans Rohnert,Frank Buschmann
作者: 陆平 赵培 左奇 等编著
作者: (美)Sun Microsystems, Inc