第1章 什么是嵌入式编程
我们将学到:
·嵌入式系统的基础知识
·面向对象编程与结构化编程
·使用C语言实现类、继承、状态机
1.1嵌入式系统有何特殊之处
本书完全着眼于嵌入式系统的开发。为此,需要区分嵌入式系统和其他系统。在深入讨论之前,我们需要理解这种区别,这样才能领会用来开发嵌入式系统的那些模式和技术的真谛。
嵌入式系统可以定义为:不提供通用的计算环境,而是致力于完成现实世界中具体功能的计算系统。显然,这样定义的嵌入式系统非常宽泛,它包括了心脏起搏器中的微型8位嵌入式计算机,与控制航天设备相关的32位计算机,交通设施、飞行器的消防控制,以及C4ISR(Command,Control,Communications,Computers,Intelligence,Surveillance,and Reconnaissance,指挥、控制、通信、计算机、情报、监视和侦察)系统的广域网中用于战场管理的数以百计的强大计算机系统。很多嵌入式系统没有磁盘,没有人机交互,并且仅有很少的存储空间,但是嵌入式系统的市场空间却远比这些简单设备更宽广。
嵌入式系统无处不在:
·在医药领域,嵌入式系统包括植入设备(如心脏起搏器、去纤颤器、胰岛素泵)、监测设备(如心电图(ECG/EKG)监视器、血气监测仪、血压计、肌电图(EMG)显示器)、成像系统(如CT、SPECT、PET、TEM和X射线成像仪),以及治疗输送装置(如病人呼吸机、药物汽化器和输液泵)。
·在电信行业,涵盖了手机、交换设备、路由器、调制解调器和卫星等设备。
·在汽车制造领域,嵌入式系统优化发动机燃烧,管理变速器中的能量传输,监控传感器数据,控制防抱死系统,提供安全保障并且提供咨询娱乐服务,例如:CD和DVD播放器、GPS导航(在一些地方,它可以提供雷达和激光探测甚至是主动雷达和激光探测应对系统)。
·在办公领域,嵌入式系统管理电话、打印机、复印机、传真机、照明设备、数字投影仪、安保系统、防火系统和灭火系统。
·在家中,例子包括微波炉、电视机、收音机、洗衣机,甚至包括真空吸尘器。
嵌入式系统已经能控制、增强、监控和管理几乎所有高科技设备,从电视机到火车,再到工厂自动化系统,而且其应用呈上升趋势。
嵌入式系统有个重要的子集即实时系统。很多人错误地认为“实时”就是“很快”,这种理解是不正确的。实时系统是一种在系统中必须满足实时性约束才能正确运行的系统。通常来看,可以将实时系统简单地分为两类:其中的一类是“硬”实时系统,它以系统实时性约束中的最后期限作为建模依据,在最后期限到来之前,指定的活动必须完成;“软”实时系统则是相对于“硬”实时系统而言的,它加入时间期限以外的标准(经常是随机的)来满足系统的实时性约束。这些标准包括平均吞吐量、平均执行时间、最大脉冲长度或其他的衡量标准。所有的系统都可以建模为硬实时系统,但是这样做经常造成“过度设计”,过度设计造成系统运行速度过快且拥有更多可用资源(实际上这些都是不需要的),同时也提高了系统的续生成本(recurring cost,近似于“制造成本”)。
尽管所有的系统都以硬实时系统作为建模模型,但事实上很多系统并不是真正的硬实时系统。如果系统响应偶尔延迟,甚至整个输入事件丢失,大多数系统将继续正常工作。把实时系统建模为“硬”实时的主要原因是,可以通过数学分析简化系统的实时性约束。
……
译者序
前言
作者简介
第1章 什么是嵌入式编程
1.1 嵌入式系统有何特殊之处
1.2 面向对象还是结构化
1.3 小结
第2章 嵌入式实时过程Harmony的嵌入式编程
2.1 Harmony过程的基本原理
2.2 方法
2.3 接下来是什么
第3章 访问硬件的设计模式
3.1 基本的硬件访问概念
3.2 硬件代理模式
3.3 硬件适配器模式
3.4 中介者模式
3.5 观察者模式
3.6 去抖动模式
3.7 中断模式
3.8 轮询模式
3.9 小结
第4章 嵌入并发和资源管理的设计模式
4.1 并发基本概念
4.2 循环执行模式
4.3 静态优先级模式
4.4 临界区模式
4.5 守卫调用模式
4.6 队列模式
4.7 汇合模式
4.8 同时锁定模式
4.9 排序锁定
4.10 小结
第5章 状态机的设计模式
5.1 哦,行为
5.2 基本状态机概念
5.3 单事件接收器模式
5.4 多事件接收器模式
5.5 状态表模式
5.6 状态模式
5.7 与状态
5.8 分解与状态模式
5.9 小结
第6章 安全性和可靠性模式
6.1 关于安全性和可靠性的一些事
6.2 二进制反码模式
6.3 CRC模式
6.4 智能数据模式
6.5 通道模式
6.6 保护单通道模式
6.7 双通道模式
6.8 小结
附录A UML表示法