嵌入式实时多任务软件开发幻灯片.pdf
文本预览下载声明
嵌入式系统
An Introduction to Embedded System
第七课、嵌入式实时多任务
软件开发基础
浙江大学计算机学院人工智能研究所
航天科技-浙江大学基础软件研发中心
1
课程大纲
嵌入式多任务软件开发过程简介
嵌入式多任务软件开发实例
2
嵌入式多任务软件开发过程
任务/中断划分
任务/中断优先级设计
任务/中断总体关联图、关联性分析(同步/互斥设计、
优先级逆转分析)
任务可调度性分析
出错处理及恢复设计
任务代码详细设计
3
任务划分的目标
满足“实时性”指标
任务数目合理
满足操作系统裁剪要求
降低系统资源需求
4
任务划分的方法-设备依赖性任务的划分(1/2)
将系统中的各类输入、输出设备、控制系统封装成任务。
例如,针对手机系统的任务划分:
键盘任务 射频收发
射频收发任务
触摸屏
麦克风任务
扬声器任务 电源 麦克风
摄像头任务
扬声器
触摸屏显示任务
有线 键盘
有线通信任务
电源管理任务
5
任务划分的方法-设备依赖性任务的划分(2/2)
例如,车载导航系统的任务划分:
GPS信号接收 GPS 实时 语音
交通 提示
实时导航信息接收 电源
导航语音提示
电源管理任务
路径规划任务
人机交互任务
路径
规划
人机
交互
6
任务划分的方法-关键任务的分离
“关键”功能的任务指:系统中的这种功能若不能正常实现,
将造成重大影响,因此,必须得到运行机会。
例如,超市的火警检测系统工作过程为:
烟雾传感器-自动报警-启动喷淋灭火-保存火警记录
显示全部