分布式实时系统原理与设计方法(原书第2版)
作者 : [奥地利]赫尔曼·科佩茨(Hermann Kopetz)著
译者 : 吴际 龙翔 尚立宏 等译
丛书名 : 计算机科学丛书
出版日期 : 2018-12-07
ISBN : 978-7-111-61377-0
定价 : 89.00元
教辅资源下载
扩展信息
语种 : 简体中文
页数 : 277
开本 : 16
原书名 : Real-Time Systems:Design Principles for Distributed Embedded Applications,Second Edition
原出版社: Springer-Verlag
属性分类: 教材
包含CD : 无CD
绝版 :
图书简介

实时系统的行为确定性是个艰深的主题,需要对系统全局特性有深入的理解。准确和完整理解这个特性的主要困难在于系统的时域行为,需要在各个抽象层次上开展分析和设计,而这一直是经典的实时系统著作有所欠缺的地方。本书从体系结构层面介绍了分布式实时系统的设计,主要内容包括实时系统环境、简洁性、全局时间、实时模型、时间关系、依赖性、实时通信、能量、实时操作系统、实时调度、系统设计、验证性、物联网以及实时触发体系结构方面的内容。

图书特色

图书前言

本书适合用作高年级本科生或一年级研究生的实时嵌入式系统(也称为信息物理融合系统)课程的教材,首要目标是系统地介绍相关知识。本书内容划分为14章,正好对应一个学期的14周教学。本书也可作为技术参考书,向工业界的实践者提供实时嵌入式系统设计的现状,以及该领域涉及的基础性概念。从本书第1版出版至今的14年间,维也纳技术大学有超过1000名学生使用该书作为教材来学习实时系统课程。这些学生的反馈和嵌入式实时系统这个动态变化领域的许多新进展,都融入了第2版中。本书关注体系结构层次的分布式实时系统设计。然而我们发现,相当大一部分计算机科学文献都忽略了实时时间的推进,这使得实时系统设计者不掌握这个关键知识的抽象层次就无法开展系统设计工作。因此,物理时间推进是本书中最重要的概念,在此基础上定义很多相关的概念。本书使用大量来自工业界的案例来洞察解释与时间推进相关的基础性概念。本书扩展了分布式实时系统的概念模型,并精确定义了与时间相关的重要概念,如稀疏时间、状态、实时数据的时域精确性和确定性等。
大规模计算机系统的认知复杂性演化是个极为受关注的主题,第2版专门增加了一章来论述简约设计(第2章)。本章采纳了认知领域的一些最新研究发现,包括概念形成、理解、人类的简化策略、模型构建,并形成了有助于简约系统设计的7个原则。在后续的12章中,都围绕这些原则展开论述。另外还新增了两章,分别是第8章和第13章,论述移动设备这一巨大市场中越来越重要的主题。关于第6、7、11、12章都进行了系统性修订,并特别关注基于组件的设计和基于模型的设计。在第6章中,新增了关于信息安全和功能安全的多个小节。第14章介绍了时间触发体系结构,把本书论述的概念整合成连贯一致的框架,用来开发可信嵌入式实时系统。自本书第1版出版以来,在许多应用领域都可以清楚地看到,已经从采用事件触发设计方法学转向采用时间触发设计方法学来设计可信分布式实时系统。
本书假设读者拥有计算机科学或计算机工程方面的背景知识,或者在嵌入式系统设计、实现方面有一些实践经验。
作为不可分割的组成部分,本书最后对贯穿全书的技术术语给出了相应定义。如果读者在阅读过程中不确定某些术语的确切内涵,建议参考术语定义部分。
致谢
无法在这里一一列举所有对本书第2版有贡献的学生、工业界和科学界同行的姓名,他们在过去十几年为本书提出了诸多富有启发的问题或给出了建设性的评论。在完成本书第2版的最后阶段——2010年10月,我在范德堡大学讲授一门由Janos Sztipanovits组织的课程,从听众那里得到了宝贵的意见。在这里要特别感谢Christian Tessarek,他承担了本书的插图设计工作。感谢阅读了部分或全部手稿并提出了许多宝贵修改建议的Sven Bünte、Christian El-Salloum、Bernhard Fr?mel、 Oliver H?ftberger, Herbert Grünbacher、Benedikt Huber、Albrecht Kadlec、Roland Kammerer、Susanne Kandl、Vaclav Mikolasek、Stefan Poledna、Peter Puschner、Brian Randell、Andreas Steininger、Ekarin Suethanuwong、 Armin Wasicek、Michael Zolda,以及来自范德堡大学的学生Kyoungho An、Joshua D. Carl、Spencer Crosswy、Fred Eisele、Fan Qui和 Adam C. Trewyn。

上架指导

计算机/嵌入式

封底文字

硬实时系统是一种要求在所有预见到的负载和故障场景下都必须满足其时域规格的计算系统。本书主要关注硬实时系统(又称为安全关键系统)的技术原理和设计方法,从系统整体视角来分析实时性、分布式和容错等问题。本书内容跨越多个技术栈层次,从时间理论、实时模型到时间触发机制,从片上系统、操作系统到分布式应用,从通信协议、分布式控制到容错机制。

本书特点
作为时间触发技术的理论建立者,作者结合丰富的理论和工程经验,从工程实践角度给出了利用时间触发方法学来设计可信分布式实时系统的方法,在基础理论、工程技术和设计方法学之间建立了平衡。
相较于第1版,第2版中加入了复杂性管理、能耗和功耗管理、可信性和物联网等内容,这些都是移动设备这一巨大市场领域中越来越重要的主题。第2版还修订了通信、可信性、系统设计和确认等内容,并特别关注基于组件的设计和基于模型的设计。此外,新增了关于信息安全和功能安全的内容。
从教学的角度,本书每一章都提供了要点回顾和一定数量的复习题,并针对相应主题对学术领域的主要著作进行了点评和推荐,可作为实时嵌入式系统或信息物理融合系统方向的高年级本科生或研究生教材。

译者序

知悉本书第1版大概是2010年,那时我因科研项目的需要开始接触嵌入式实时系统,虽然还称不上硬实时系统。做领域调研分析时,我从网络上找相关资源时看到了本书的介绍。阅读的第一印象是该书提供了非常坚实的理论分析,同时概念也非常简洁清晰。当时绝对没有想到我会在四年后接下本书第2版的翻译工作。翻译此书的提议是在拜访本书作者(维也纳,2014年7月)之前提出的,并在拜访中经过交流讨论最终形成决定。与本书作者Hermann Kopetz的认识则可追溯到2012年,那时我与Simula研究所的Tao Yue和Bran Selic共同策划SafeMOVE 2013国际研讨会,并邀请Hermann Kopetz来北京做主题报告和关于时间触发技术的专题培训。
不得不说,本书的翻译具有相当大的难度,甚至可以说具有挑战性。实时系统的行为确定性、设计的可组合性和故障管理等都是艰深的主题,需要对系统全局特性有深入的理解。准确和完整理解这特性的主要困难在于系统的时域行为,需要在各个抽象层次上开展分析和设计,而这一直是经典的实时系统著作有所欠缺的地方。
时间触发技术恰恰就是为了这个目标所提出的,在对时间进行精确度量和控制的基础上,逐步构造组件行为和组件间的交互行为,并以可组合的方式实现整个系统行为的确定性控制目标。时间触发技术涉及全局时间、时间推进的任务控制、实时调度、冗余和容错、通信控制、设计原则和体系结构风格等多方面的方法和技术。经过多年的发展和应用,时间触发技术已形成了相应的国际标准,并在航空、航天、汽车等领域的核心系统中得到了广泛应用。
随着网络通信技术的不断发展,实时性正在得到越来越多的关注,目前时间敏感网络(TSN,可近似理解为松弛的时间触发技术)正呈现井喷式的发展态势。目前国内对实时系统的设计技术与验证技术的关注度越来越高,有不少科研单位听闻我们在翻译本书后,多次表达了希望尽快看到中文版出版的意愿。
在整个翻译过程中得到了本书作者的大量无私帮助。我们经常就一些关键概念和论述与作者进行沟通。了解越多,越是由衷佩服作者的睿智和前瞻性。非常感谢作者专门为本书的中文版作序。在组织译文的过程中,我们意识到准确理解相关核心概念的重要性,而很多概念涉及多方面的知识,甚至是跨领域的知识。为了增强中文版的可读性,我们在每一章都增加了一定数量的必要译者注,为相关概念补充一定的解读分析。
本书的翻译历时四年,经过了四个阶段:初步翻译阶段、整理阶段、分章节校对阶段和整体校对阶段。有不少研究生参与了初步翻译阶段的工作,按照章节独立进行了文字翻译。在整理阶段,对相关概念的把握分析和统一翻译是主要工作。在分章节校对阶段,主要解决论述表达方式和中文字句组织的差异化问题,尽可能使各章统一。最后的整体校对阶段,通读全书并统一术语。每一遍校对都能发现一定数量的逻辑问题和文字表达问题,我们意识到“英文味”的译文一定不能让读者满意,因此在确保遵从原作的论述逻辑的前提下,尽量按照中文表达方式来组织译文。
龙翔老师承担了本书第3、4、8、10章的翻译工作,赵永望老师完成了第5、6、9、13章的初步翻译,尚立宏老师对第5、6、9章进行了修订翻译,李云春老师则对第13章进行了修订翻译。吴际老师承担了第1、2、7、11、12、14章的翻译,并负责全书的校对、翻译修订和译者注梳理工作。在翻译过程中得到了高小鹏老师、刘超老师和马殿富老师的大力支持和帮助,也得到了TTTech中国分公司的欧阳杨经理的很多关心和支持。陈逊、胡京徽、吕佳辉、姜徐、孙思杰、谭宇、杨经纬、燕保跃、张峰等同学参与了本书翻译的相关工作,在此一并致谢。
限于译者的业务水平,对原作的理解和译文的组织都不可避免地存在错误和不足,希望读者在阅读中指正并告知我们。

吴际
于北京航空航天大学
2018年7月

图书目录

出版者的话
译者序
中文版序
前言
第1章 实时环境 1
1.1 实时计算机系统 1
1.2 功能需求 2
1.2.1 数据采集 2
1.2.2 直接数字控制 4
1.2.3 人机交互 4
1.3 时域需求 5
1.3.1 时域需求的出处 5
1.3.2 最小延迟抖动 7
1.3.3 最小错误检测延迟 7
1.4 可信需求 7
1.4.1 可靠性 7
1.4.2 安全性 8
1.4.3 可维护性 8
1.4.4 可用性 9
1.4.5 信息安全 9
1.5 实时系统分类 9
1.5.1 硬实时系统与软实时系统 10
1.5.2 失效安全系统与失效可运作系统 11
1.5.3 响应有保证系统与尽力而为系统 11
1.5.4 资源充分系统与资源受限系统 12
1.5.5 事件触发系统与时间触发系统 12
1.6 实时系统产品的市场分析 12
1.6.1 嵌入式实时系统 13
1.6.2 工厂自动化系统 14
1.6.3 多媒体系统 15
1.7 实时系统典型案例 15
1.7.1 管道流量控制系统 15
1.7.2 发动机控制器 16
1.7.3 自动轧钢系统 17
要点回顾 18
文献注解 19
复习题 19
第2章 简约设计 21
2.1 认知 21
2.1.1 问题求解 21
2.1.2 概念定义 23
2.1.3 认知复杂性 23
2.1.4 简化策略 25
2.2 概念图谱 25
2.2.1 概念形成 25
2.2.2 科学概念 27
2.2.3 消息 27
2.2.4 变量的语义内容 28
2.3 建模的本质 29
2.3.1 目标与视角 29
2.3.2 设计的主要挑战 30
2.4 涌现行为 31
2.4.1 不可约性 31
2.4.2 基础特性和推导特性 31
2.4.3 复杂系统 32
2.5 如何开展简约设计 33
要点回顾 34
文献注解 35
复习题 36
第3章 全局时间 37
3.1 时间和序 37
3.1.1 不同(性质)的序 37
3.1.2 时钟 38
3.1.3 精度和准确度 40
3.1.4 时间标准 41
3.2 时间测量 42
3.2.1 全局时间 42
3.2.2 区间测量 43
3.2.3 π/Δ优先序 44
3.2.4 时间测量的根本局限 45
3.3 稠密时间与稀疏时间 45
3.3.1 稠密时基 46
3.3.2 稀疏时基 46
3.3.3 时空划分 47
3.3.4 时间的周期性表示 48
3.4 内时钟同步 48
3.4.1 同步条件 49
3.4.2 集中式主控同步 50
3.4.3 容错同步算法 51
3.4.4 状态校正与速率校正 53
3.5 外时钟同步 54
3.5.1 外部时间源 54
3.5.2 时间网关 55
3.5.3 时间格式 56
要点回顾 56
文献注解 57
复习题 57
第4章 实时模型 59
4.1 模型概述 59
4.1.1 组件和消息 59
4.1.2 组件集群 60
4.1.3 时域控制与逻辑控制 61
4.1.4 事件触发控制与时间触发控制 62
4.2 组件状态 63
4.2.1 状态的定义 63
4.2.2 袖珍计算器案例 63
4.2.3 基状态 64
4.2.4 数据库组件 66
4.3 消息 66
4.3.1 消息结构 66
4.3.2 事件信息与状态信息 66
4.3.3 事件触发消息 67
4.3.4 时间触发消息 68
4.4 组件接口 68
4.4.1 接口特性 69
4.4.2 链接接口 70
4.4.3 技术独立控制接口 70
4.4.4 技术相关调试接口 70
4.4.5 本地接口 71
4.5 网关组件 71
4.5.1 特性失配 72
4.5.2 网关组件的LIF与本地接口 72
4.5.3 标准化的消息接口 73
4.6 链接接口规格 74
4.6.1 传输规格 74
4.6.2 操作规格 74
4.6.3 元级规格 75
4.7 组件集成 76
4.7.1 可组合性原则 76
4.7.2 集成视角 77
4.7.3 成体系系统 77
要点回顾 79
文献注解 80
复习题 80
第5章 时域关系 82
5.1 实时实体 82
5.1.1 控制范围 82
5.1.2 离散实时实体和连续实时实体 83
5.2 观测 83
5.2.1 不带时间戳的观测 83
5.2.2 间接观测 84
5.2.3 状态观测 84
5.2.4 事件观测 84
5.3 实时镜像与实时对象 85
5.3.1 实时镜像 85
5.3.2 实时对象 85
5.4 时域精确性 86
5.4.1 定义 86
5.4.2 实时镜像的分类 88
5.4.3 状态估计 89
5.4.4 可组合性考虑 90
5.5 持久性和幂等性 90
5.5.1 持久性 90
5.5.2 动作延迟时长 91
5.5.3 精确性时间间隔与动作延迟 92
5.5.4 幂等性 92
5.6 确定性 92
5.6.1 确定性的定义 93
5.6.2 一致的初始状态 95
5.6.3 不确定性设计成分 95
5.6.4 重获确定性 96
要点回顾 97
文献注解 98
复习题 98
第6章 可信性 99
6.1 基本概念 99
6.1.1 故障 100
6.1.2 错误 101
6.1.3 失效 102
6.2 信息安全 104
6.2.1 安全信息流 104
6.2.2 安全威胁 105
6.2.3 加密方法 106
6.2.4 网络身份认证 108
6.2.5 实时控制数据的保护 109
6.3 异常检测 109
6.3.1 什么是异常 109
6.3.2 失效检测 111
6.3.3 错误检测 111
6.4 容错 112
6.4.1 故障假设 113
6.4.2 容错单元 114
6.4.3 成员关系服务 116
6.5 健壮性 117
6.5.1 基本概念 117
6.5.2 健壮系统的结构 118
6.6 组件重集成 118
6.6.1 重集成时间点 119
6.6.2 最小化基状态规模 119
6.6.3 组件重启 120
要点回顾 120
文献注解 122
复习题 122
第7章 实时通信 123
7.1 需求 123
7.1.1 实时性需求 123
7.1.2 可信性需求 124
7.1.3 灵活性需求 126
7.1.4 物理结构需求 126
7.2 设计问题 127
7.2.1 腰际线通信模型 127
7.2.2 物理性能限制 128
7.2.3 流量控制 129
7.2.4 颠簸 130
7.3 事件触发通信 132
7.3.1 以太网 132
7.3.2 控制器局域网络 133
7.3.3 用户数据报协议 133
7.4 速率受限通信 134
7.4.1 令牌协议 134
7.4.2 最小时间槽对齐协议ARINC 629 134
7.4.3 航电全双工交换以太网 135
7.4.4 音视频总线 135
7.5 时间触发通信 136
7.5.1 时间触发协议 137
7.5.2 时间触发以太网 138
7.5.3 FlexRay 139
要点回顾 139
文献注解 140
复习题 140
第8章 功耗和能耗感知 141
8.1 功率与能量 141
8.1.1 基本概念 141
8.1.2 能耗估算 142
8.1.3 热效应与可靠性 145
8.2 硬件节能技术 147
8.2.1 器件工艺尺寸缩减 147
8.2.2 低功耗硬件设计 148
8.2.3 降低电压和频率 148
8.2.4 亚门限逻辑 149
8.3 系统体系结构 149
8.3.1 技术无关设计 149
8.3.2 Pollack定律 150
8.3.3 电源门控 151
8.3.4 实时时间与执行时间 152
8.4 软件技术 152
8.4.1 系统软件 153
8.4.2 应用软件 153
8.4.3 软件工具 154
8.5 能源 154
8.5.1 电池 154
8.5.2 能量回收 155
要点回顾 155
文献注解 156
复习题 156
第9章 实时操作系统 157
9.1 组件间通信 157
9.1.1 技术独立接口 157
9.1.2 链接接口 158
9.1.3 技术相关调试接口 158
9.1.4 通用中间件 158
9.2 任务管理 158
9.2.1 简单任务 159
9.2.2 触发器任务 160
9.2.3 复杂任务 161
9.3 时间的双重作用 161
9.3.1 时间作为数据 162
9.3.2 时间用于控制 163
9.4 任务间交互 163
9.4.1 协调的静态调度表 164
9.4.2 非阻塞写入协议 164
9.4.3 信号量操作 165
9.5 进程输入与输出 165
9.5.1 模拟量输入与输出 166
9.5.2 数字量输入与输出 166
9.5.3 中断 167
9.5.4 容错的作动器 168
9.5.5 智能仪表 169
9.5.6 物理安装 170
9.6 协商协议 170
9.6.1 原始数据、测量数据与议定数据 170
9.6.2 语法层次协商 170
9.6.3 语义层次协商 171
9.7 错误检测 171
9.7.1 任务执行时间监视 171
9.7.2 中断监视 171
9.7.3 两次执行任务 172
9.7.4 看门狗 172
要点回顾 172
文献注解 173
复习题 173
第10章 实时调度 174
10.1 调度问题 174
10.1.1 调度算法的分类 174
10.1.2 可调度性测试 175
10.1.3 对手论证 176
10.2 最坏执行时间 177
10.2.1 简单任务的WCET 177
10.2.2 复杂任务的WCET 179
10.2.3 全时算法 179
10.2.4 应用现状分析 180
10.3 静态调度 180
10.3.1 基于搜索的静态调度 181
10.3.2 增加静态调度的灵活性 182
10.4 动态调度 183
10.4.1 独立任务调度 183
10.4.2 非独立任务调度 184
10.5 其他调度策略 186
10.5.1 分布式系统中的调度 186
10.5.2 反馈调度 186
要点回顾 187
文献注解 188
复习题 188
第11章 系统设计 189
11.1 系统设计概述 189
11.1.1 设计过程 189
11.1.2 约束条件的作用 190
11.1.3 系统设计与软件设计 191
11.2 设计阶段 192
11.2.1 目标分析阶段 192
11.2.2 需求捕获阶段 193
11.2.3 体系结构设计阶段 193
11.2.4 组件设计阶段 193
11.3 设计风格 194
11.3.1 基于模型的设计 194
11.3.2 基于组件的设计 195
11.3.3 体系结构设计语言 195
11.3.4 对体系结构分解的检查 196
11.4 安全关键系统的设计 198
11.4.1 什么是安全性 198
11.4.2 安全性分析 200
11.4.3 安全案例 202
11.4.4 安全标准 204
11.5 多样性设计 205
11.5.1 多版本软件 206
11.5.2 失效安全系统案例 206
11.5.3 多级系统 207
11.6 可维护性设计 208
11.6.1 维护成本 208
11.6.2 维护策略 208
11.6.3 软件维护 209
要点回顾 210
文献注解 211
复习题 211
第12章 系统确认 212
12.1 确认与验证 212
12.2 测试面临的挑战 213
12.2.1 可测试性设计 214
12.2.2 测试数据的选择 214
12.2.3 测试预言 215
12.2.4 系统演化 216
12.3 基于组件系统的测试 216
12.3.1 组件提供者 217
12.3.2 组件使用者 217
12.3.3 组件通信 217
12.4 形式化方法 218
12.4.1 形式化方法的实际使用 218
12.4.2 形式化方法的分类 218
12.4.3 形式化方法的益处 219
12.4.4 模型检测 219
12.5 故障注入 220
12.5.1 软件实现的故障注入 220
12.5.2 物理故障注入 220
12.5.3 传感器和作动器失效 221
要点回顾 222
文献注解 222
复习题 222
第13章 物联网 224
13.1 物联网的愿景 224
13.2 物联网的发展动力 225
13.2.1 统一的访问 225
13.2.2 物流 225
13.2.3 节能 225
13.2.4 物理空间信息安全与功能安全 226
13.2.5 工业 226
13.2.6 医学 226
13.2.7 生活方式 227
13.3 物联网的技术问题 227
13.3.1 集成到互联网 227
13.3.2 命名和标识 227
13.3.3 近场通信 228
13.3.4 物联网设备能力与云计算 229
13.3.5 自治组件 229
13.4 RFID 技术 230
13.4.1 概述 230
13.4.2 电子产品代码 230
13.4.3 RFID标签 231
13.4.4 RFID阅读器 231
13.4.5 RFID的信息安全性 231
13.5 无线传感器网络 233
要点回顾 234
文献注解 235
复习题 235
第14章 时间触发体系结构 236
14.1 TTA的历史 236
14.1.1 MARS项目 236
14.1.2 工业TTA原型 237
14.1.3 GENESYS项目 237
14.2 体系结构风格 238
14.2.1 复杂性管理 238
14.2.2 面向组件 238
14.2.3 一致的通信机制 239
14.2.4 可信性 240
14.2.5 时间感知体系结构 240
14.3 TTA服务 241
14.3.1 基于组件的服务 241
14.3.2 核心系统服务 241
14.3.3 可选的系统服务 242
14.4 时间触发MPSoC 243
要点回顾 244
文献注解 245
复习题 245
缩略词 246
术语定义 248
参考文献 257

教学资源推荐
作者: 胡伟武 等著
作者: [美]威廉·斯托林斯(William Stallings) 著
作者: Daniel D.Gajski Frank Vahid Sanjiv Narayan Jie Gong
作者: 袁静波 丁顺利 宋欣 王和兴 编著
参考读物推荐
作者: [英]姚文祥(Joseph Yiu) 著
作者: [土耳其] 卡格特·古尔图克(Cagatay Gurturk)著
作者: (美)Elecia White 著