《实时系统与控制》(续2)

上传人:艾力 文档编号:36699970 上传时间:2018-04-01 格式:PDF 页数:10 大小:520.36KB
返回 下载 相关 举报
《实时系统与控制》(续2)_第1页
第1页 / 共10页
《实时系统与控制》(续2)_第2页
第2页 / 共10页
《实时系统与控制》(续2)_第3页
第3页 / 共10页
《实时系统与控制》(续2)_第4页
第4页 / 共10页
《实时系统与控制》(续2)_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《《实时系统与控制》(续2)》由会员分享,可在线阅读,更多相关《《实时系统与控制》(续2)(10页珍藏版)》请在金锄头文库上搜索。

1、1实时系统与控制实时系统与控制(续续2)Real-Time Systems and Control课程性质课程性质:研讨课程研讨课程 计划学时计划学时12 C+16Lab +12D (12+8+16) 主讲教师主讲教师:马旭东马旭东东南大学东南大学实时系统与控制实时系统与控制1主讲教师主讲教师:马旭东马旭东 联系方式联系方式:13809022379/ 83795360 讲课讲课 三部分组成三部分组成实验实验(上机上机) 研究讨论研究讨论RTS关键1:调度与调度策略RTS关键1:调度与调度策略任务任务/作业(作业(Task/Job)的生命周期)的生命周期ReadyRunningDone处理器分

2、配到被抢占完成 被释放处理器分配到被抢占完成 被释放东南大学东南大学实时系统与控制实时系统与控制2 2资源使用?状态资源使用?状态(寄存器寄存器/变量变量) 处理器是特殊的资源 抢占情况下处理器是特殊的资源 抢占情况下:保存保存/清除清除? 非抢占非抢占: 操作过程一直持有资源操作过程一直持有资源?阻塞阻塞(Blocked)Blocked同步 如资源不可用所需资源可用 (除同步 如资源不可用所需资源可用 (除MPU外)外)?任务任务(线程线程,Thread):: 相对独立于其他任 务: 相对独立于其他任 务,处理器连续协调运行 的计算机指令序列。处理器连续协调运行 的计算机指令序列。RTS关键

3、1:调度与调度策略RTS关键1:调度与调度策略最优的最优的(Optimal) 根据最小化成本函数产生根据最小化成本函数产生(基于某最优指标基于某最优指标)Static:根据固定参数;根据固定参数;Dynamic:参数随时间变化参数随时间变化 Off-line: 所有调度决策在任务激活之前所有调度决策在任务激活之前,存在表里存在表里 (table-driven scheduling). On-line: 调度决策在运行时根据激活任务作出调度决策在运行时根据激活任务作出东南大学东南大学实时系统与控制实时系统与控制3 3根据最小化成本函数产生根据最小化成本函数产生(基于某最优指标基于某最优指标) 启

4、发式的启发式的(Heuristic) 根据启发式函数试图满足最优指标根据启发式函数试图满足最优指标,但不一定保证但不一定保证最优指标最优指标:可用性可用性:(可行的调度可行的调度)使最大的延迟最小使错过规定限时的次数最少量化每个任务使最大的延迟最小使错过规定限时的次数最少量化每个任务,使任务的量化值最小使任务的量化值最小RTS关键1:调度与调度策略RTS关键1:调度与调度策略Scheduling (allocation) policies ?CPU从就绪从就绪(ready)队列中选择执行?调度算法队列中选择执行?调度算法 ? 顺序调度顺序调度FCFS(First come first Serv

5、ed)? ? 时间片调度(时间片调度( Time sliced) ? 优先级分配(优先级分配(Priority assignments)东南大学东南大学实时系统与控制实时系统与控制4 4?若干控制线程?若干控制线程(Threads) 依序执行一组可执行的动作 总体依序执行一组可执行的动作 总体(任务任务/事件序列事件序列) 重量级重量级(进程进程Process) 轻量级轻量级(Lightweight Thread) 设计的核心技术:设计的核心技术:可调度性(满足时间要求)可调度性(满足时间要求)事件事件: 任务释放任务释放, 任务完成 任务阻塞任务完成 任务阻塞, 资源释放资源释放(非阻塞任务

6、非阻塞任务) 定时器定时器,I/O计数等计数等实时软件多任务运行实时软件多任务运行多任务控制软件数据流关系多任务控制软件数据流关系东南大学东南大学实时系统与控制实时系统与控制5关键:软件数据结构程序结构:任务分配-调度关键:软件数据结构程序结构:任务分配-调度简单实时软件多任务运行简单实时软件多任务运行实时性如何?实时性如何?非阻塞循环结构非阻塞循环结构(单任务单任务)条件:时间,条件:时间,I/O,逻辑逻辑东南大学东南大学实时系统与控制实时系统与控制6?课程设计大多数简单系统实现模式?课程设计大多数简单系统实现模式由最长循 环执行周 期决定由最长循 环执行周 期决定任务优先级任务优先级?2简

7、单实时软件多任务运行简单实时软件多任务运行中断中断例行例行(1)例行任务:后台(Background task)Routine Task (2)基本定时任务( 中断,嘀嗒服务)(1)例行任务:后台(Background task)Routine Task (2)基本定时任务( 中断,嘀嗒服务)构建基本时钟,实现各类软件定时器,定时调用各服务构建基本时钟,实现各类软件定时器,定时调用各服务东南大学东南大学实时系统与控制实时系统与控制7中断中断: INC CNT1 例行例行:CMP CNT1,xx1INC CNT2 JC NEXTCK1: CALL TASK1; MOV CNT1,0NEXTCK1

8、:CMP CNT2JC NEXTCK2IA-16多任务架构多任务架构-实验软件:多任务扩展实验软件:多任务扩展IA-16多任务软件架构实验IA-16多任务软件架构实验=典型控制软件架构:按时间调度=典型控制软件架构:按时间调度时间条件时间条件1东南大学东南大学实时系统与控制实时系统与控制8?单调速率调度算法RMS(?单调速率调度算法RMS(Rate-monotonic Scheduling)问题问题?时间条件时间条件2IA-16多任务软件架构IA-16多任务软件架构1、从调度角度:任务实时性保证2、从OS角度:不确定性3、从I/O角度:不确定性4、资源竞争(同步)1、从调度角度:任务实时性保证

9、2、从OS角度:不确定性3、从I/O角度:不确定性4、资源竞争(同步)研究方法!研究方法!东南大学东南大学实时系统与控制实时系统与控制91.前后台任务交换模式前后台任务交换模式;2.OS按时间调度模式按时间调度模式(时间片调度时间片调度)3. 如何实现两个课程设计任务同时执行如何实现两个课程设计任务同时执行? 5、多任务扩展的便捷性6、如果每个模块执行时间不确定的如何处理5、多任务扩展的便捷性6、如果每个模块执行时间不确定的如何处理其他调度算法其他调度算法复杂调度1、复杂调度1、SJF(Shortest Job First)/LJF(Longest Job First)选择最短计算时间任务(选

10、择最短计算时间任务(Ci常数,静态,最小平均响应时间)非实时常数,静态,最小平均响应时间)非实时2、EDF(Earliest Deadline First)/EDD(Earliest Due Date)东南大学东南大学实时系统与控制实时系统与控制10选择最早的相对时限选择最早的相对时限(the earliest relative Deadline)任务任务固定优先级,固定优先级,minimizes the maximum lateness (Lmax)3、3、LSF( (Least Slack-time First)?组合应用优先级调度算法优先级调度算法每个任务分配有优先级每个任务分配有优先级

11、priority: pi 0, 99/255?最高优先级任务选择执行相同优先级任务:最高优先级任务选择执行相同优先级任务:FCFS抢占式抢占式(Preemptive)东南大学东南大学实时系统与控制实时系统与控制11静态或动态 在线静态或动态 在线(On-line) 可在硬件(终端)支持基础上实现可在硬件(终端)支持基础上实现IA-16多任务软件架构IA-16多任务软件架构研究讨论研究讨论1: 分析课程设计中你的系统实现任务组成、实时性和优 先关系,研究确定合理的调度算法改进;分析课程设计中你的系统实现任务组成、实时性和优 先关系,研究确定合理的调度算法改进;研究讨论研究讨论2:=典型控制软件架

12、构:易于故障监测=典型控制软件架构:易于故障监测东南大学东南大学实时系统与控制实时系统与控制12如何合理调度,实现两个课程设计任务同时执行(假 设有两组所需资源)如何合理调度,实现两个课程设计任务同时执行(假 设有两组所需资源)? 研究讨论研究讨论3: 其他调度算法在课程设计应用系统中的使用其他调度算法在课程设计应用系统中的使用 (可作为研究报告内容)(可作为研究报告内容)3简单实时软件多任务运行简单实时软件多任务运行中断中断: INC CNT1 例行例行:CMP CNT1FLAG,0FFHINC CNT2 JNZ NEXTCK1: MOV CNT1FLAG,0CMP CNT1,XX1 CAL

13、L TASK1 加法计数,控制方法2加法计数,控制方法2东南大学东南大学实时系统与控制实时系统与控制13JC TINT1 NEXTCK1:CMP CNT2FLAG,0FFHMOV CNT1,0 JNZ NEXTCK2MOV CNT1FLAG,0FFH CALL TASK2TINT1: CMP CNT2,XX2简单实时软件多任务运行简单实时软件多任务运行中断中断: DEC CNT1 例行例行:CMP CNT1,0 DEC CNT2 JNZ NEXTCK1 : MOV CNT1,XX1 CALL TASK1 NEXTCK1:CMP CNT2,0 JNZ NEXTCK2东南大学东南大学实时系统与控制

14、实时系统与控制14JNZ NEXTCK2 CALL TASK2;XX2减法计数,方式控制1减法计数,方式控制1单任务查询式程序的优点在于其结构简单、功能确切、调试方 便。适用于具有专项功能的小型化的计算机测控系统,也可以 应用于规模较大的、任务相互关系简单且实时性要求不高的的 测控系统中单任务查询式程序的优点在于其结构简单、功能确切、调试方 便。适用于具有专项功能的小型化的计算机测控系统,也可以 应用于规模较大的、任务相互关系简单且实时性要求不高的的 测控系统中简单实时软件多任务运行简单实时软件多任务运行中断中断: CMP CNT1, 0JNZ TINT1MOV CNT1FLAG,0FFH M

15、OV CNT1,XX1减法计数减法计数例行例行:CMP CNT1FLAG,0FFHJNZ NEXTCK1MOV CNT1FLAG,0CALL TASK1 东南大学东南大学实时系统与控制实时系统与控制15TINT1: DEC CNT1CMP CNT2,0JNZ TINT2MOV CNT2FLAG,0FFHMOV CNT2,XX2TINT2: DEC CNT2NEXTCK1:CMP CNT2FLAG,0FFHJNZ NEXTCK2MOV CNT1FLAG,0FFH CALL TASK2:Non-OS实时软件多任务运行Non-OS实时软件多任务运行(1)例行任务:后台(Background task)Routine Task(2)基本定时任务( 嘀嗒服务)(1)例行任务:后台(Background task)Routine Task(2)基本定时任务( 嘀嗒服务)构建基本时钟,实现各类软件定时器,定时调用各类构建基本时钟,实现各类软件定时器,定时

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号