[发明专利]使用存储器保护单元来支持客户操作系统的虚拟化有效
申请号: | 201380071716.4 | 申请日: | 2013-02-05 |
公开(公告)号: | CN104956342B | 公开(公告)日: | 2018-04-27 |
发明(设计)人: | 理查德·罗伊·格里森思怀特;西蒙·约翰·克拉斯克;安东尼·约翰·古达克 | 申请(专利权)人: | ARM有限公司 |
主分类号: | G06F12/14 | 分类号: | G06F12/14 |
代理公司: | 北京东方亿思知识产权代理有限责任公司11258 | 代理人: | 李晓冬 |
地址: | 英国*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 使用 存储器 保护 单元 支持 客户 操作系统 虚拟 | ||
技术领域
本发明涉及数据处理系统的领域。更特别地,本发明涉及数据处理系统内存储器保护单元的提供和使用。
背景技术
为了通过在系统上执行的程序来控制对存储区域的访问这一目的而向数据处理系统提供存储器保护单元(MPU)的做法是公知的。存储器保护单元接收物理地址,并根据一组访问许可来判定存储器访问操作是否被许可。存储器保护单元非常适合于在实时系统内使用,在所述实时系统中,关于完成特定处理任务要花费多长时间期望确定的行为。在这样的系统中使用虚拟寻址是有问题的,因为由于转换后备缓冲器错过需要页表行走在主存储器内以便检索将虚拟地址转换为物理地址所需的翻译数据,虚拟寻址(例如)可能引入潜在的长延时。
随着处理系统技术的进步,伴随着在每单元时间可以被执行的处理量方面的那些系统性能的上升。此外,在可能的情况下降低数据处理系统的成本存在持续的压力。
发明内容
从一个方面看,本发明提供用于对数据进行处理的装置,该装置包括:
处理电路,该处理电路被配置为执行程序指令流;
第一存储器保护单元,该第一存储器保护单元被配置为:
接收直接指定存储器内存储器地址位置的物理地址,以便所述处理电路执行存储器访问操作;以及
根据第一组许可来判定所述存储器访问操作是否被许可;和第二存储器保护单元,该第二存储器保护单元被配置为:
接收所述物理地址;以及
根据第二组许可来判定所述存储器访问操作是否被许可;其中
仅当所述存储器访问操作满足所述第一组许可和所述第二组许可二者时,所述存储器访问操作被许可。
本技术提供用于对数据进行处理的装置,该装置包括第一存储器保护单元和第二存储器保护单元;仅当存储器访问操作满足由这些存储器保护单元监督的许可时存储器访问操作被许可,例如,第一存储器保护单元代表客户实时操作系统(使用所有的物理地址)应用第一组访问许可,第二存储器保护单元代表超管理程序应用第二组访问许可,超管理程序管理多个客户操作系统之间底层硬件的共享。由于每个虚拟实时系统可以使用第一存储器保护单元来执行它的存储器访问许可,然后管理客户操作系统的超管理程序可以使用第二存储器保护单元来执行由超管理程序监督的访问许可,因此具有这种形式的系统能够虚拟化一个或多个实时系统。实时处理器的虚拟化采取行动来反对技术领域内的已接受的智慧和偏见,因为这通常将被视为不可接受地危害实时处理器的确定性行为,并可能抑制它充分及时地处理任务的能力。然而,本技术认识到,随着由处理器技术的进步提供的处理速度的提高,在仍旧维持可接受的处理速度和响应水平的同时对实时处理器进行虚拟化是可能的。使用第一存储器保护单元(操作物理地址以执行与虚拟实时处理器相关联的许可)和第二存储器保护单元(也操作物理地址以执行与超管理程序相关联的许可)起到的作用是:即使对于虚拟实时处理器,也可以避免与处理虚拟地址相关联的无限延迟,并且可以提供存储器访问操作可接受的最大处理延迟。提供虚拟实时处理器具有降低成本的优势,因为可以避免该处理器的单独的真实实例。
在支持异常级别层级的系统内可以通过以下操作来辅助虚拟实时处理器和超管理程序之间安全性的管理:对处理电路进行配置,使得当在第一异常级别处操作时处理电路被许可改变第一组许可并且不被许可改变第二组许可,而当在第二异常级别处操作时处理电路被许可改变第二组许可。因此,除了系统在第二异常级别处操作之外,可以防止第二组许可被改变,由此管理一个或多个虚拟实时处理器(它的客户操作系统在第一异常级别处操作)的超管理程序(其在第二异常级别处操作)的安全性可以得到保护。
处理器可以支持多个实时处理器,每个实时处理器执行被选中的实时操作系统并且具有相关联的第一组许可。系统可以与一个或多个其它处理器(其没有这种实时操作限制)相结合地提供一个或多个虚拟实时处理器也是可能的,例如,支持图形用户界面(GUI)的“丰富”操作系统。
应当领会的是,在一些实施例中,第一存储器保护单元和第二存储器保护单元可以作为完全分离的电路被提供。在其它实施例中第一存储器保护单元和第二存储器保护单元的实现方式也可能是它们共享它们的一些或全部硬件。在一些实施例中,可能提供一组硬件,这组硬件先进行操作以执行当前活跃的客户操作系统的第一组许可来用作第一存储器保护单元,然后进行操作以执行超管理程序的第二组许可并因此用作第二存储器保护单元。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于ARM有限公司,未经ARM有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201380071716.4/2.html,转载请声明来源钻瓜专利网。