前言
Foreword
随着消费群体对产品要求的日益提高,嵌入式技术在机械器具制造、电子产品制造,通信、信息服务等领域得到了大显身手的机会,应用日益广泛,相应地,企业对嵌入式人才的需求也越来越多。近几年来,很多院校纷纷开设了嵌入式专业或方向。虽然目前市场上的嵌入式开发相关书籍比较多,但很多是针对有一定基础的行业内研发人员而编写的,并不完全符合学校的教学要求。学校教学需要一套充分考虑学生现有知识基础和接受程度、明确各门课程教学目标的、便于学校安排课时的嵌入式专业教材。
针对教材缺乏的问题,我们以多年来在嵌入式工程技术领域内人才培养、项目研发的经验为基础,汇总了近几年积累的数百家企业对嵌入式研发相关岗位的真实需求,调研了数十所开设嵌入式专业的院校的课程设置情况、学生特点和教学用书现状。经过细致的整理和分析,对专业技能和基本知识进行合理划分,我们于2013年编写了这套高等院校嵌入式人才培养规划教材,包括以下4本。
《嵌入式操作系统(Linux 篇)(微课版)》
《嵌入式 Linux C 语言程序设计基础教程(微课版)》
《ARM 嵌入式体系结构与接口技术(Cortex-A9版)(微课版)》
《嵌入式应用程序设计综合教程(微课版)》
经过了3年,嵌入式行业发生了巨大变化,产品也得到了升级换代,同时,高等院校嵌入式专业日臻成熟,首批教材有些已无法满足新的需要,所以本次编写对原有教材进行修订。
全书共7章,内容涵盖嵌入式 Linux 应用开发的主要方面。
第1章介绍 Linux 标准 I/O 编程,让读者了解用户编程接口(API)和系统调用之间的关系并掌握基本的文件访问方法。
第2章介绍 Linux 文件 I/O 编程,分析了标准 I/O 和文件 I/O 的区别,重点讲解文件描述符的含义和具体的文件 I/O 编程接口。
第3章介绍 Linux 多任务编程,主要讲解 Linux 中进程和线程的区别和联系、如何创建多进程以及守护进程。
第4章介绍 Linux 进程间通信,主要讲解几种常用的进程通信方法,包括管道通信、信号通信、共享内存、消息队列等。
第5章介绍 Linux 多线程编程,主要讲解 Linux 环境下的多线程编程方法及注意事项。
第6章介绍 Linux 网络编程基础,主要讲解 Linux 环境下的网络编程方法,涉及网络体系结构、TCP 编程、UDP 编程和服务器模型等。
第7章介绍 Linux 高级网络编程,主要讲解网络超时检测、广播、组播和 UNIX 域套接字的基本编程方法。
本书由刘洪涛、熊家、王建秋、安东合作编写。本书的完成需要感谢华清远见嵌入式学院,教材内容参考了学院与嵌入式企业需求无缝对接的、科学的专业人才培养体系。同时,嵌入式学院从业或执教多年的行业专家团队也对教材的编写工作做出了贡献,季久峰、贾燕枫、关晓强、刘金格等在书稿的编写过程中认真阅读了所有章节,提供了大量在实际教学中积累的重要素材,对教材结构、内容提出了中肯的建议,并在后期审校工作中提供了很多帮助,在此表示衷心的感谢。
本书所有源代码、PPT 课件、教学素材等辅助教学资料,请到人民邮电出版社教育社区(www.ryjiaoyu.com)免费下载。
由于作者水平所限,书中不妥之处在所难免,恳请读者批评指正。对于本书的批评和建议,可以发到 www.embedu.org 技术论坛。
编者
2016年11月