使用时间分区技术确保访问工业控制系统.pdfVIP

使用时间分区技术确保访问工业控制系统.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
使用时间分区技术确保访问工业控制系统 Kerry Johnson QNX 软件系统公司 kjohnson@ 保证资源访问的时间分区技术 QNX 软件系统公司 摘要 “始终在线”的人机界面 (HMI) 是许多工业控制系统的核心要求。但是,当系统事件导致 CPU 负载过重时,人机界面会出现无响应或无法使用的情况。本文介绍了系统设计人员和开发人员如 何使用 CPU 时间分区技术预防此类问题,确保本机和远程操作人员在所有情况下都能访问系统 资源。利用时间分区技术,开发人员和系统设计人员能为每个软件子系统定量分配 CPU 时间, 不管系统负载如何。因此,每个子系统,包括人机界面,都能一直保持可用状态。 日益复杂 现代工业控制系统可能包含数十甚至上百个软件任务,这些任务都在争夺有限的内存和 CPU 时 间。为加快这类复杂系统的开发,公司通常会让多个开发团队承担开发任务,指定每个团队创建 一种单独的软件子系统。由于采用并行开发的模式,因此集成阶段往往会出现性能问题,各种子 系统会在这一阶段首次开始互相争夺系统资源。单独运行正常的子系统此时会响应缓慢,甚至 无法运行。因此,尽管每位开发人员都全力以赴,系统仍会出现许多未知问题——从无响应的 人机界面 (HMI) 到整个系统运行失败。 诊断并解决此类故障本身就很困难。设计人员必须灵活设定任务优先级,还可能会在整个系统内 改变线程的运行状态,然后针对修改进行重新测试和精确调整。整个过程很可能会持续数周, 造成成本增加和产品交付的延误。不幸地是,许多此类问题只会在集成和验证测试过程出现, 而此时重新设计软件和重新编码的成本最高。 分区技术提供解决方案 资源分区技术为解决这些复杂的集成问题提供了有效途径。利用这种技术,系统设计人员能将软 件子系统隔离成单独的容器或分区,并为每个分区定量分配内存或 CPU 时间。例如,设计人员 能将控制系统人机界面的进程置入分区,并为该分区分配 CPU 全部处理能力的 10% 。分区调度 程序会保证该分区能一直获得分配的 CPU 预算。 实际上,每个分区都能提供稳定、已知的运行环境,供开发人员单独创建和验证。如果分区内的 软件进程在单元测试过程中运行正常,它们在集成阶段也一定会保持同样的性能。子系统之间无 法预料的资源争夺能被抑制。 尽管对静态资源(如内存)进行分区很简单,但对 CPU 处理时间进行分区却十分困难。由于嵌 入式控制系统的成本和功耗都有限,因此,此类系统选用的处理器通常不具备额外的处理能力。 在这种环境下,CPU 时间就成为一种稀有资源,必须对其进行认真管理,特别是在 CPU 负载 较重时。CPU 时间分区技术为实现这一目标提供了最佳途径。 2 保证资源访问的时间分区技术 QNX 软件系统公司 实时操作系统调度程序 为理解时间分区的需求,我们必须首先考虑线程在常见的控制系统中是如何调度的。 为保证代码的可移植性,现代多数的操作系统都支持 POSIX 应用程序接口 (API) 。这种开发标准 定义了线程模型,其中的单独进程可能包含一个或多个可执行线程。为满足嵌入式系统所需的并 发和实时运行要求,基于 POSIX 的实时操作系统 (RTOS) 采用了基于优先级的可抢占式线程调 度程序。这种调度程序形式会一直为优先级最高且未闲置的线程提供 CPU 时间。如果优先级高 的线程已准备就绪(通常由外部事件触发),它会抢占目前运行的优先级更低的任何线程。 基于优先级的调度程序具有许多优势,包括: • 可预测的延迟——为优先级高的线程分配时序要求严格的功能,开发人员能精确控制系统 响应外部事件所需的时间。 • 并发性和灵活性——嵌入式系统使用优先级调度能处理多种任务混合的情况,包括截止期 限紧迫且定期发生的任务、优先级高的事件驱动的任务和后台处理任务。 • 经实用验证且众所周知——基于优先级的调度广泛应用于工业应用环境并为嵌入式系统开 发人员所熟知。 当线程准备运行时,它会以相同的优先级进入就绪线程的等候队列。开发人员针对每个线程确定 的调度策略会决定接下来应运行哪一个等候的线程。POSIX 定义了三种调度策略: • 先入先出 (FIFO) 调度——确保选择运行的线程在自动中断或被优先级

文档评论(0)

sdfgrt + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档