出版时间:2009-5 出版社:杨震伦、 熊茂华 清华大学出版社 (2009-05出版) 作者:杨震伦,熊茂华 著 页数:234
前言
嵌入式技术是计算机技术、通信技术、半导体技术、微电子技术等先进技术在具体应用对象中的有机融合,是技术密集、高度分散、不断创新的知识密集型系统,反映着当代最新技术的先进水平。嵌入式操作系统作为嵌入式系统的重要组成部分,在嵌入式技术近几年的快速发展中功不可没。嵌入式操作系统的出现,使得在嵌入式项目开发中,对上层开发人员屏蔽了底层的硬件细节,对于底层软件开发人员只需要按照固有的开发流程为上层实现相应的接口,从而为项目开发的明确分工、并行开发提供了重要的基础。目前,对于嵌入式开发从业人员而言,只有对嵌入式操作系统具有一定的了解并掌握它的开发技能,才有可能做好工作并求得进一步发展。目前市面上嵌入式系统和嵌入式操作系统开发的书籍可谓多如牛毛,但是纵观这些书籍,适合初学者特别是在校学生的较少,有相当一部分书籍的出版初衷是帮助初学者入门,但是多在“入门”和“进阶”,在“了解知识”和“掌握技能”上难以取得平衡。或是初始难度过大,让初学者难以入门;或是只介绍基础的内容,对于应用价值高的部分较少涉及,让初学者只是泛泛了解皮毛。本书主要内容如下。第l章介绍了嵌入式系统和嵌入式操作系统的概念,同时给出了嵌入式操作系统的学习路径参考。第2章根据嵌入式操作系统学习的要求,选择了操作系统中核心的进程管理、进程控制等概念进行重点介绍,让读者快速对操作系统的相关知识有大致的了解,为后续的学习打下基础。第3章基于μC/OS-II对嵌入式操作系统的开发方法进行了介绍,其中对μC/OS-II的每个功能模块都以一个综合性较高的例子为中心进行讲解。第4章介绍了LinuX的一些基础知识,包括文件系统、常用命令以及最常见的文本编辑器——vi。第5章简单介绍了Linux程序设计的预备知识,包括C语言知识的回顾、常用的数据结构和C库函数。第6章介绍了LinuXShell程序设计,包括Shell程序的开发流程和Shell程序的语法,并结合实例将这些知识综合组织起来。
内容概要
本书从初学者的角度出发,由简单的嵌入式操作系统μC/OS-II引导初学者入门,让其快速掌握操作系统的相关概念和嵌入式操作系统的特性,具备基本的开发能力;再进阶到嵌入式Linux程序开发,掌握具有更广泛应用范围的开发技术。在全书中“知识”和“技能”相结合,既有对概念深入浅出的解释,也有短小精悍的应用代码,从而帮助读者快速掌握嵌入式操作系统的开发技能。 本书既可作为高等院校电子类和计算机类专业的教材,也可作为专业技术人员的技术参考书。
书籍目录
第1章 绪论1.1 嵌入式系统概述1.1.1 嵌入式系统的发展历史1.1.2 嵌入式系统的特点1.1.3 嵌入式系统的发展前景和趋势1.2 嵌入式操作系统概述1.2.1 嵌入式操作系统的特点1.2.2 嵌入式操作系统的发展前景1.2.3 几种主流的嵌入式操作系统1.3 嵌入式操作系统的学习路径本章小结第2章 操作系统基础知识2.1 操作系统概论2.1.1 什么是操作系统2.1.2 操作系统的特征2.1.3 操作系统的功能2.1.4 操作系统的发展史2.1.5 操作系统的分类2.2 进程管理2.2.1 程序的并发执行2.2.2 进程的定义2.2.3 进程的特征和状态2.2.4 进程控制块2.2.5 进程控制2.3 进程同步与互斥本章小结第3章 μC/OS-II应用编程3.1 μc/OS-II简介3.2 实验环境搭建3.3 一个例子3.4 任务管理API应用3.5 信号量管理API应用3.6 互斥型信号量管理API应用3.7 事件标志组管理API应用3.8 消息邮箱管理API应用3.9 消息队列管理API应用3.1 0内存管理API应用本章小结第4章 Linux入门4.1 Linux概述4.1.1 Linux起源.特性及应用领域4.1.2 Linux操作系统发行版简介4.2 Linux文件及文件系统4.3 Linux常用操作命令4.4 Debian(Ubuntu)常用命令4.4.1 设置apt源4.4.2 常用命令4.5 vi使用入门4.5.1 进入vi4.5.2 退出vi4.5.3 基本编辑4.5.4 vi常用指令表本章小结第5章 Linux程序设计预备知识5.1 C语言基础回顾5.1.1 数据类型5.1.2 运算符和表达式5.1.3 程序流程控制5.1.4 数组5.1.5 函数5.1.6 指针5.1.7 位操作5.2 常用数据结构5.2.1 链表5.2.2 哈希表5.3 常用C库函数本章小结第6章 LinuxShell程序设计6.1 Shell概述6.1.1 什么是Shell6.1.2 Shell历史和常见的Shell6.1.3 Shell的元字符(通配符)6.1.4 创建和执行Shell程序6.2 Shell程序设计的语法6.2.1 变量6.2.2 条件测试6.2.3 条件语句6.2.4 循环语句6.2.5 函数6.2.6 杂项命令6.3 Shell应用实例6.3.1 软件安装脚本6.3.2 歌曲管理程序本章小结第7章 LinuxC程序设计7.1 GCC概述7.1.1 GCC简介7.1.2 编译一个简单的C程序7.1.3 Makefile7.1.4 gdb调试器7.2 Linux进程7.2.1 查看Linux进程7.2.2 启动Linux进程7.2.3 Linux进程相关程序设计7.3 Linux信号7.4 文件操作7.4.1 简介7.4.2 文件操作例子7.5 消息队列.信号量和共享内存7.5.1 消息队列7.5.2 信号量7.5.3 共享内存7.6 Linux网络编程7.6.1 网络体系结构简介7.6.2 网络编程简介7.6.3 Socket编程流程7.6.4 网络编程例子7.7 Linux应用程序调试技术7.7.1 打印语句7.7.2 strace命令7.7.3 memwatch7.8 Linux驱动程序设计7.8.1 驱动程序设计概述7.8.2 驱动程序例子本章小结第8章 嵌入式Linux应用设计8.1 嵌入式开发环境的搭建8.1.1 嵌入式交叉编译环境的搭建8.1.2 超级终端和Minicom配置及使用8.1.3 下载映像文件到开发板8.2 BootLoader应用设计8.2.1 BootLoader概述8.2.2 VIVI简介8.2.3 VIVI移植主要步骤8.3 内核移植8.3.1 Linux内核文件结构8.3.2 Linux内核移植本章小结第9章 嵌入式操作系统典型应用——手机开发9.1 手机开发概述9.2 搭建开发环境9.3 应用程序开发和内核开发9.3.1 应用程序开发9.3.2 内核开发本章小结附录A μC/OS-II中使用的数据类型附录B μC/OS-Il的PC显示函数附录C 常用LinuxC函数参考文献
章节摘录
插图:第1章 绪论本章将介绍嵌入式系统和嵌入式操作系统的基础知识,通过学习这些基础知识,可以快速了解本书的框架。同时,本章还提供了嵌入式操作系统的学习路径参考,读者可以基于该路径设计适合自己的学习路径。本章主要内容:嵌入式系统概述嵌入式操作系统概述嵌入式操作系统的学习路径1.1 嵌入式系统概述嵌人式系统的定义是:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适用于应用系统,对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。可以看出,嵌入式系统的特点是基于特定的应用,往往要根据具体的应用需求进行规划和设计。下面我们通过学习嵌入式系统的发展历史、特点及发展前景和趋势来进一步了解嵌入式系统。1.1.1 嵌入式系统的发展历史20世纪70年代,微处理器的出现,计算机发生了历史性的变化。以微处理器为核心的微型计算机以其小型、价廉、高可靠性特点,迅速从计算机机房走进了各种设备的控制单元中。这些微型机嵌入到某些应用场合中固定的设备当中,实现了对这些设备的智能化控制。例如,将微控制器配置上各种外围接口电路,安装到纺织机械设备中,对纺织生产过程进行控制,对生产的纱线、布料等进行缺陷检测等。很明显,这种形式的计算机与传统观念中在机房的通用计算机是有所区别的。为了区别于原有的通用计算机系统,把嵌入到某些设备中,实现这些对象的智能化控制的计算机,称作嵌入式计算机系统。由于嵌入式计算机系统要嵌入到对象中,实现对对象的智能化控制,因此,它有着与通用计算机系统完全不同的技术要求与技术发展方向。嵌入式计算机系统的技术要求是对象的智能化控制能力;技术发展方向是与对象系统密切相关的嵌人性能、控制能力与控
编辑推荐
《嵌入式操作系统及编程》既可作为高等院校电子类和计算机类专业的教材,也可作为专业技术人员的技术参考书。
图书封面
评论、评分、阅读与下载