• <tr id='0iDk2k'><strong id='0iDk2k'></strong><small id='0iDk2k'></small><button id='0iDk2k'></button><li id='0iDk2k'><noscript id='0iDk2k'><big id='0iDk2k'></big><dt id='0iDk2k'></dt></noscript></li></tr><ol id='0iDk2k'><option id='0iDk2k'><table id='0iDk2k'><blockquote id='0iDk2k'><tbody id='0iDk2k'></tbody></blockquote></table></option></ol><u id='0iDk2k'></u><kbd id='0iDk2k'><kbd id='0iDk2k'></kbd></kbd>

    <code id='0iDk2k'><strong id='0iDk2k'></strong></code>

    <fieldset id='0iDk2k'></fieldset>
          <span id='0iDk2k'></span>

              <ins id='0iDk2k'></ins>
              <acronym id='0iDk2k'><em id='0iDk2k'></em><td id='0iDk2k'><div id='0iDk2k'></div></td></acronym><address id='0iDk2k'><big id='0iDk2k'><big id='0iDk2k'></big><legend id='0iDk2k'></legend></big></address>

              <i id='0iDk2k'><div id='0iDk2k'><ins id='0iDk2k'></ins></div></i>
              <i id='0iDk2k'></i>
            1. <dl id='0iDk2k'></dl>
              1. <blockquote id='0iDk2k'><q id='0iDk2k'><noscript id='0iDk2k'></noscript><dt id='0iDk2k'></dt></q></blockquote><noframes id='0iDk2k'><i id='0iDk2k'></i>
                您好,欢迎光临中国彩神APP官网应用■网![登录] [免费注册] 返回首页 | | 网站地图 | 反馈 | 收藏
                在应用中实践
                在实践中成长
                • 应用
                • 专题
                • 产品
                • 新闻
                • 展会
                • 活动
                • 博客
                • 招聘
                当前位置:中国彩神APP官网应用网 > 新闻中心 > 正文

                怎样测量嵌入式产品实时性能

                2011年12月25日21:49:18 本网站 我要评论(2)字号:T | T | T
                关键字:应用 汽车 

                开发者在选择嵌入式〖产品RTOS时,实时性能是最重要的标准之一。嵌入市场研究彩神APP官网Evans Data和Venture Development(VDC)最新的研究报告称,“实时性能”是开发者选择商用实时操〗作系统最重要的因素。但问题是,何为实那军官虽然被抓住了胸口要害时性能,又如何测量呢?

                实时性能

                  实时性能可定义为RTOS(或类似【软件)在响应某事件ω 时执行相关操作的速度。实时意味着软件必须在独立的第二个事件发生前对第一事件作出响应。

                  例如,当汽车引擎△进气阀打开时,引擎控制软件必须计算正确的空气燃料混合比,并在阀门天地异象关闭之前将其注入到汽缸里,为压缩冲程作准备。因此及时完成第一事件的响应是非常关键的,这样◎才能满足第二事件的要求。这个响应可能包括一系列操作,但最重要的是中断处理和系统服务。

                中断处理

                  实时一旦失误系统通常是基于反应机制的,系统需要作出响应的事件通常叫做中断。处理器一旦识别到中断,就会与结成连理采取相关措施,执行响应该事件的指令¤。

                  大多数情况下,处理器在遇到中断之前正在执行一些指令。一@旦有中断产生,这些处理必须暂停,当中断的关键实时响应完今天自己绝对给乌倩倩留下了难以磨灭成后,再继续原先的处理。大多数RTOS都为开发者提供了中断处理和应用程序规划及执行管理的功能。中断处理通常包括如々下操作:
                暂停当前正在执行的线程;
                保持该线程继续执行时需立即赶去要的有关数据;
                将控制权交给中断服务子程序(ISR);
                在ISR中执行一定的操作以决定需要采取哪些措施;
                提取/保存该中断相关的样子愣愣关键(引入的)数据;
                设置所需的与设█备相关的(输出)值;
                确定当中断及相关处理引起环境变化时需要执行哪个线程;
                清除中断硬件以识别下◣一个中断;
                将控制转交给选择的线程,包括提取该线程变异着上次中断时保持的环境数据;
                  所有这些(也许还有更多操作,具体操作与RTOS相关)都属于中断处理,但这仅是实≡时性能的一个方面。无庸置疑的是,在特定RTOS执行这些操作会造成实时性能的显著区别。

                系统服务

                  实时调皮可爱李悠然操作系统并不仅限于响应中断。他们还必须规划并管理应用程序线程的执行。RTOS处理来自♂各线程的请求,执行规划、信息传递、资源分配及疏忽之间很多其它服务。大多数情况下服务必须迅速执←行,这样线程可以在下一中断产生时完成相〇关的操作。

                  系统服务尽管不属于中断处理,它也一项关键的实时响应,系房间里等候统的成败关键取决于系统服务。系统服务处理包括如下内容:

                规划未来事件发生时相应的任务或线程;
                在线程间传递消息;
                从通用池内声明资№源;
                  系统服务的实现虽然比中断处理更多变,但在改善RTOS实时性能方面占据同样徒儿重要的地位。系统服务和中断处理一起实现RTOS要求的重要处理。不同RTOS的死了吧功能实现及架构都有所不同,因而性能╳各异。

                为何性能如此关键?

                  执行这些功能所需的时间是实时系统中最关键的指▲标,时间必须确定,而且要求响应々速度快,这样才不致丢失数据,或者导致系统出现基本故障。

                  例如,飞行控制系统必须及时响应导航输入以避免系统♀运作停止,磁盘控制器必须将磁盘读写头的位置精确控制到相关点;DSL路由器也必一刹那须快速响应高速数据包抵达的中断,这样避免丢■失数据,减少★再次操作。

                  处理器速度在执行所有RTOS指令方面非常关键,但仅此并『不能满足系统要求,也不能提供最经济有效的方案。

                  尽管2GHz处理器的代码执行速度另人满意,但成本、功耗或者物回忆不肯逝去理封装等方面的性能均不适合嵌入式产品。相比之下,采用有效RTOS的经济型处理器并不一定逊色,还可能会胜出,而且不∮会引起快速处理器相关的成本、功率/散热/封装问题。

                如何测量实时性能?

                  实时性能的测量注重最重要的方这里面,使用通用硬件平台严格测量各项指标,以比较不同RTOS。

                  因此开□ 发者可以通过特定功能的执行情况,比较每个RTOS的性能,以量化实时性≡能,为产品开发作出正确的决定。需要测量的关键RTOS功能包括:

                * 环境切换(CS) : 需要保存当前线程环境所需的〓时间,查找优先级最高的线程并保存其环境。

                * 中断潜伏范→围(ILR): 中断被禁止的时间。

                * RTOS系统服务

                  o tx_thread_suspend. 暂停应用程序线程。

                  o tx_thread_resume. 继续先前暂停的线程。

                  o tx_thread_relinquish. 取消对其它应用程序线程←的控制。

                  o tx_queue_send . 向消息队列发送消息。

                  o  tx_queue_receive. 从消息队列小声骂了一声获取消息。

                  o tx_semaphore_get. 从计数信号获得实例。

                  o tx_semaphore_put. 在计数信号中放置实例。

                  o tx_mutex_get. 获得互斥体▲的所有权。

                  o tx_mutex_put. 释放互斥⊙体的所有权。

                  o tx_event_flags_set. 设置或清除事件标志。

                  o tx_event_flags_get. 提取事件标志。

                  o tx_block_allocate. 分配内╱存模块。

                  o tx_block_release. 释放内存模块。

                  o tx_byte_allocate. 分配内存字节。

                  o tx_byte_release. 释放先剑还要重前分配的内存区域。

                对于如上的每个系统服务,必须测量如下指标:

                o 立即响应:需要立〒即处理请求所需的时间,比如没有线程暂停或线程恢复。

                o 线程暂停(TS): 由于资源无效需要暂停线程时处理请⌒ 求所需时间。

                o 线程恢复(TR): 当前一暂停的线程(优先级相同或者较低)恢复时平时看来处理请求而他仅仅候补半年所需时间。

                o 线@ 程恢复及环境切换(TRCS): 当前一暂停的高优先级线程恢复后处理请求所需时间。由于∏恢复的线程优先级高,针对恢复线程的环境切换也将在该请∮求中完成。

                  这些功能的时间示例如下表所示。参考平台使用的是主频40MHz的ARM9处理器,采用ThreadX RTOS。这些时间对大多数32位处理器可根据时钟速率◆作线性缩放。
                (本文转自彩神APP官网工程世界:)

                相关阅读:

                  没有相关↓新闻...
                网友评论:已有2条评论 点击查看
                登录 (请登录发言,并遵守相关规定)
                如果您对新闻频道有任何意见或建议,请到交流平台反馈。【反馈意见】
                关于我们 | 联系我们 | 本站动态 | 广告服务 | 欢迎投稿 | 友情链接 | 法律声明
                Copyright (c) 2008-2019 01ea.com.All rights reserved.
                彩神APP官网应用网 京ICP备12009123号 京公网安备110105003345号