目录
目录
配套资料
第1章实时操作系统基础
1.1背景
1.2开发高质量的软件
1.3软件建模
1.4时间和时序的重要性
1.5处理多个任务
1.6多个任务的复杂情形
1.7中断作为执行引擎——简单的准并发
1.8实时操作系统的基本功能
1.9执行系统、内核和操作系统
1.10基于任务的软件设计——回顾
1.11回顾
第2章调度——概念和实现
2.1简介
2.2简单循环、周期循环和合作调度
2.3时间分片调度
2.4任务优先级
2.5使用队列
2.6基于优先级的抢占式调度
2.7任务队列的实现——任务控制块
2.8进程描述符
2.9滴答
2.10优先级和系统响应速度
2.11绕过调度器
2.12代码共享和重入
2.13运行时行为的不可预测性
2.14更多关于任务的细节
2.15回顾
第3章使用互斥机制控制资源共享
3.1共享资源使用中的问题
3.2使用单个标志实现互斥
3.3信号量
3.3.1二值信号量
3.3.2通用或计数信号量
3.3.3信号量的限制和缺陷
3.4互斥量
3.5简单监视器
3.6互斥机制综述
3.7回顾
第4章资源共享和争用问题
4.1资源争用产生的死锁问题详解
4.2设计无死锁的系统
4.3防止死锁
4.3.1允许资源共享
4.3.2允许请求抢占
4.3.3控制资源分配
4.4优先级翻转及任务阻塞
4.4.1优先级翻转问题
4.4.2基本优先级继承协议
4.4.3立即优先级天花板协议
4.5死锁预防和性能问题
4.6回顾
第5章任务间通信
5.1简介
5.1.1任务间通信概述
5.1.2协同与同步
5.2无数据传输的任务交互
5.2.1任务协同机制
5.2.2使用事件标志单向同步任务
5.2.3使用信号双向同步任务
5.3无任务同步或协同的数据传输
5.3.1概述
5.3.2内存池
5.3.3队列
5.4有数据传输的任务同步
5.5回顾
第6章存储的使用和管理
6.1在嵌入式系统中存储数字信息
6.1.1简介
6.1.2非易失性数据存储
6.1.3易失性数据存储
6.1.4内存设备——Flash和RAM的简单比较
6.1.5内存设备——SRAM和DRAM的简单比较
6.1.6嵌入式系统——存储设备结构
6.2存储的概念与实现
6.3消除任务间干扰
6.3.1一种控制内存访问的简单方法
6.3.2使用内存保护单元控制内存访问
6.3.3使用内存管理单元控制内存访问
6.4动态内存分配及其问题
6.4.1内存分配与碎片化
6.4.2内存分配和泄漏
6.4.3安全的内存分配
6.5内存管理和固态驱动器
6.6回顾
第7章多处理器系统
7.1什么是嵌入式多处理器
7.1.1为什么要用多处理器
7.1.2处理器架构概述
7.1.3多核处理器——同构和异构类型
7.1.4多机系统结构
7.2软件问题——作业的划分和分配
7.2.1介绍
7.2.2将软件构建为一组功能
7.2.3将软件构建为一组数据处理的操作
7.3软件控制和执行的问题
7.3.1基本的操作系统问题
7.3.2AMP系统的调度和执行
7.3.3SMP系统的调度和执行
7.3.4BMP和混合系统的调度和执行
7.3.5多处理器模式间的比较
7.4回顾
第8章分布式系统
8.1分布式系统的软件结构
8.2分布式系统的通信和时序问题
8.3将软件映射到分布式系统的硬件上
8.4回顾
第9章调度策略的分析
9.1概述
9.2基于优先级的非抢占式调度策略
9.3基于优先级的静态抢占调度策略——概述
9.4基于优先级的静态抢占调度策略——单调速率调度
9.5基于优先级的静态抢占调度策略——结合优先级和重要性的启发式方法
9.6基于优先级的动态抢占调度策略——概述
9.7基于优先级的动态抢占调度策略——最早截止时间调度
9.8基于优先级的动态抢占调度策略——计算时间调度
9.9基于优先级的动态抢占调度策略——空闲时间/松弛度调度
9.10改善处理器利用率——速率组
9.11调度策略——最后的解释
9.12调度时序图——符号一览
9.13回顾
第10章操作系统: 基本结构和功能
10.1背景
10.2通过中断实现简单的多任务处理
10.3超微内核
10.4微内核
10.5通用的嵌入式RTOS
10.6回顾
第11章RTOS的性能和基准测试
11.1概述
11.2测量计算机性能——基准测试
11.2.1概述
11.2.2计算性能基准测试
11.2.3操作系统性能
11.3处理器系统的时间开销
11.4操作系统性能和代表性基准测试
11.5操作系统性能和综合基准测试
11.5.1概述
11.5.2基础要求
11.5.3测试类别
11.5.4基线(参考)测试数据
11.5.5压力测试方法
11.6回顾
第12章多任务软件的测试和调试
12.1场景引入
12.2测试和开发多任务软件——专业方法
12.3在目标机内测试——实用工具功能
12.3.1概述
12.3.2使用专用的控制和数据采集工具测试RTOS
12.3.3使用片上数据存储方法测试RTOS
12.3.4使用主机系统数据存储设施测试RTOS
12.4目标系统测试——实用要点
12.4.1介绍
12.4.2测试单个任务的并发性
12.4.3实现和测试并发操作
12.5回顾
第13章在关键系统中使用RTOS
13.1关键系统和安全完整性等级简介
13.2操作系统问题
13.3RAM使用中的问题及补救措施
13.3.1概述
13.3.2内存丢失
13.3.3内存耗尽
13.4堆栈使用
13.4.1堆栈使用静态分配的RAM
13.4.2改善堆栈可靠性
13.5运行时间问题
13.5.1概述
13.5.2截止时间和响应时间问题
13.5.3减少任务之间的干扰
13.5.4处理不可预测的功能行为
13.6监控和检测运行时故障
13.6.1看门狗定时器介绍
13.6.2在单任务设计中使用WDT
13.6.3窗口看门狗定时器
13.6.4在多任务设计中使用WDT
13.7操作系统与关键分布式应用
13.8通过时间分区运行多个不同的应用
13.9设计指南
13.10回顾
第14章结语
14.1任务、线程和进程
14.1.1概述
14.1.2嵌入式环境的程序执行——入门指导
14.1.3软件的活动、应用和任务
14.1.4单处理器任务内的并发
14.1.5运行多个应用
14.1.6总结
14.2RTOS与GPOS的比较
附录A重要的基础设施
A.1处理器间通信
A.2嵌入式系统中的图形用户界面
A.3回顾
附录B参考指南
附录C缩略语表