[发明专利]用于在实时操作系统的实施中识别错误的方法有效
申请号: | 201110410036.3 | 申请日: | 2011-12-09 |
公开(公告)号: | CN102591736A | 公开(公告)日: | 2012-07-18 |
发明(设计)人: | 奥托·尼塞尔 | 申请(专利权)人: | 西门子公司 |
主分类号: | G06F11/07 | 分类号: | G06F11/07 |
代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 余刚;李慧 |
地址: | 德国*** | 国省代码: | 德国;DE |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 实时 操作系统 实施 识别 错误 方法 | ||
技术领域
本发明涉及一种用于在执行实时操作系统的实施中识别错误的方法、一种计算机程序产品、以及一种用于在实时操作系统的实施中识别错误的装置。
背景技术
多种现代化的处理器当前提供了更多处理器核心和虚拟化技术。在此,使用了所谓的系统管理程序(Hypervisor)。在此,这是指一种软件,该软件通过应用虚拟化技术使得一个或多个客户操作系统在真实的硬件上运行,并且在此管理能使用的资源。资源在此可以被分配给客户,也可以处于在系统管理程序控制下。与前面的能使用的技术相比,以较小的性能缺陷使其实现并且不会干预客户操作系统。
首要的目标在于,最佳地充分利用现有的高处理器效率,这由此实现,即为各个处理器核心分配不同的任务。因此例如可以在一个核心上委托具有控制任务的、有实时能力的操作系统,而在另一个核心上应用标准操作系统、如Windows系统,以对进行的过程虚拟化。
在执行实时操作系统时的一个问题在于,即必须针对错误的实施对该系统进行保护。程序错误、以及硬件方面的错误可以特别在自动化系统中导致自动化系统引起错误的产品生产或产品加工,或者使自动化系统的完全关闭。在所有情况下产生了较大的经济损失,其可能通过适合的错误识别机构,在实时操作系统的实施中被避免。
发明内容
因此本发明的目的在于,提出一种方法、一种计算机程序产品以及一种装置,用于在实时操作系统的实施中识别错误。
本发明的目的通过独立权利要求所述的特征来实现。本发明的优选的实施方式在从属权利要求中给出。
在此提出了一种用于在实时操作系统的实施中识别错误的方法,其中实时操作系统的逻辑相同的实例(Instanz)在共用的虚拟化环境中的第一处理器的至少两个处理器核心上被并行地实施,其中系统管理程序监测实例的并行实施,其中在执行通过实例引发的硬件访问时,通过系统管理程序将在对于每个实例的硬件访问时传输的数据相互比较,其中,在传输的数据之间出现差别的情况下,或者在单方面的通过实例之一引发的硬件访问的情况下,通过系统管理程序识别为是错误。
本发明因此提出了一种系统保护的方案,其中系统管理程序用于并行处理用于控制任务的实时操作系统(在下面也称为固件)的多种不同的版本。目的在于,识别出在两个核心上的处理过程中的差别,以及例如可能由于数据失真而对用户产生损害之前,停止所分配的自动化系统中的控制。
表面上,利用在此提出的用于确保用户的系统安全的措施使得控制器的系统性能不发生变化。必须分别在产品特性方面考虑对于性能、特别是处理速度以及等待时间的影响。
在固件的行动不同时需要系统管理程序的相互作用(例如访问虚拟的或真实的硬件)。在这种情况下,对虚拟机的处理被中断,并且将中断原因通知给系统管理程序。对于虚拟化软件也可能的是,通过对特殊的操作码(Hypercall超级调用)的处理,中断虚拟机,以便帮助系统管理程序做准备工作。
两种类型的中断可以用于使得虚拟化的固件实例的工作-或中间结果实现匹配(Abgleich)。
所述类型的在中断时的匹配在下面称为“同步点”。
因此实现了一种控制实例,其在控制器的内部的执行中识别出错误,并且可以相应地作出反应。可以因此如在下面还要进一步探讨地,有助于解决由于未识别的存储器错误引起的错误运行的问题,这并不能在所有情况下都利用前述的解决办法来实现。
最少所需要的匹配包括检测写在硬件上的数据和分配由硬件读取的数据。如果应该描述不同的数据,达到不同的同步点或者单方面地达到仅仅一个同步点,则因此可以假定固件发生故障。
根据本发明的一个实施方式,通过实例之一引发的硬件访问是直接的硬件访问或者是在应用半虚拟化的情况下通过超级调用实现的硬件访问。
基本上,固件通过例如输入-和输出区域(I/O端口)、存储器映像设备(memory mapped device)、中断请求(interrupt)和直接存储器访问(direct memory access-DMA)和硬件集成在一起。所有这些相互作用可以而且必须通过系统管理程序实现匹配和同步。
硬件访问在此基本上可以借助于两个方法来实现。一方面可能的是,使虚拟化的固件中的硬件驱动器保持原状,并且对系统管理程序中产生的硬件访问进行拦截和匹配(硬件虚拟化)。其它可能性在于,将硬件驱动器的最下层移动到系统管理程序中,并且通过超级调用实现对其的访问(半虚拟化)。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西门子公司,未经西门子公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110410036.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:可降解环保震源药柱
- 下一篇:瞄准器的光纤定位结构