中国科学技术大学计算机系

中国科学技术大学计算机系

ID:45660284

大小:895.50 KB

页数:22页

时间:2019-11-16

中国科学技术大学计算机系_第1页
中国科学技术大学计算机系_第2页
中国科学技术大学计算机系_第3页
中国科学技术大学计算机系_第4页
中国科学技术大学计算机系_第5页
资源描述:

《中国科学技术大学计算机系》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、操作系统关键指标 对应用性能的影响陈香兰中国科学技术大学计算机系Saturday,September04,2021提纲操作系统关键指标嵌入式实时操作系统性能测试方法2操作系统关键指标有哪些?最多支持进程/线程的个数是否支持虚拟内存SystemcalltimeRTOS相关指标:系统响应时间上下文切换时间中断延迟时间中断响应时间任务切换时间调度器延迟时间周期性抖动(jitter)3系统响应时间从系统发出处理要求到系统给出应答信号的时间。这是RTOS一个比较综合的性能指标。4中断延迟时间从接收到中断信号到操作系统

2、做出响应,并完成进入中断服务例程(如Linux的do_IRQ)所需要的时间。中断延迟时间Tirq_latency=T1+T2T1=最长关中断时间T2=硬件开始处理中断到开始执行中断服务例程第一条指令之间的时间T2由硬件决定,因此,Tirq_latency主要取决于T1硬实时操作系统的关中断时间通常是几微秒,而Linux最坏可达几毫秒。Linux2.4内核的中断处理5中断响应时间从计算机接收到中断信号到操作系统作出响应,并完成切换转入用户中断处理程序(即驱动程序注册的ISR)的时间。中断响应时间Trespon

3、se=T1+T2+T3T3=从中断服务例程到开始执行驱动注册的ISR的第一条指令时间。在硬RTOS中,Tresponse通常比Tirq_latency多几微秒。INTR最长关中断时间T1CPU接收到INTR保存上下文T2do_IRQT3ISR实际关中断时间(不可测)Linux2.4内核的中断处理6上下文切换时间Tcontext_switch保存当前任务的上下文和恢复被调度任务的上下文的时间。Tcontext_switch取决于CPU有多少寄存器要保存和恢复CPU的内部寄存器越多,额外负荷就越重。还与指令周期

4、长度有关实时内核的性能不应该以每秒钟能做多少次任务切换来评价。RTOS中通常是1微秒左右7任务抢占时间当一个事件引起更高优先级的任务TaskHigh就绪到这个任务开始运行之间的时间。Ttask_preemption=T4+Tsched+Tcontext_switchT4=从TaskHigh就绪到开始执行调度函数的时间(并且这次调度正好选择了TaskHigh任务)Tsched=从调度程序开始执行到开始从当前任务Taskany切换到TaskHigh的时间Tcontext_switch=上下文切换时间与调度策略有

5、关:是否允许优先级抢占?与调度算法相关:常数/可变时间与硬件有关8调度抖动一个周期任务的周期间隔之间的变化。通常,实时应用以周期性任务的形式,即以一特定的周期被调度,并且在硬件定时器产生一个中断唤醒调度器时开始执行。虽然定时器中断可能发生的跟时钟一样有规律,但是许多不确定因素会导致调度器的运行时间变得不确定,导致接下来的任务的开始时间就会相应地变化,这个影响就叫调度抖动。抖动跟具体的应用紧密相关。9嵌入式实时操作系统性能测试方法Rhealstone方法进程分派延迟时间法三维表示法10Rhealstone方法

6、:测量ERTOS中六个关键操作的时间,并将它们的加权和称为Rhealstone数1、任务切换时间(taskswitchingtime):即系统在两个独立的、处于就绪态并具有相同优先级的任务之间切换所需要的时间。包括三个部分:保存当前任务上下文的时间调度程序选中新任务的时间恢复新任务上下文的时间。此时间取决于1)保存任务上下文所用的数据结构2)操作系统采用的调度算法的效率。112、抢占时间(preemptiontime)即系统将控制从低优先级的任务转移到高优先级任务所花费的时间。系统必须首先识别引起高优先级任

7、务就绪的事件,比较两个任务的优先级,确定发生抢占抢占时间中包括了任务切换时间。3、中断延迟时间(interruptlatencytime)即从中断第一条指令所持续的时间间隔由四部分组成:硬件延迟部分(通常可忽略不计)关中断时间处理器完成当前指令的时间中断响应周期的时间124、信号量混洗时间(semaphoreshufflingtime)即从一个任务释放信号量到另一个等待该信号量的任务被激活的时间延迟。基于信号量的互斥访问保证了任一时刻只有一个任务能访问公共资源。此时间反映了与互斥有关的时间开销5、死锁解除时

8、间(deadlockbreakingtime)即系统解开处于死锁状态的多个任务所需花费的时间。死锁解除时间反映了RTOS解决死锁的算法的效率。6、数据包吞吐率(datagramthroughputtime)指一个任务通过调用ERTOS的原语,把数据传送到另一个任务去时,每秒可以传送的字节数。13进程分派延迟时间法PDLTProcessDispatchLatencyTime这是另一个常用的测量ERTOS性能的方法实

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。