用于验证存储器器件完整性的方法和系统的制作方法_1

上传人:ting****789 文档编号:310025133 上传时间:2022-06-14 格式:DOCX 页数:6 大小:23.55KB
返回 下载 相关 举报
用于验证存储器器件完整性的方法和系统的制作方法_1_第1页
第1页 / 共6页
亲,该文档总共6页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《用于验证存储器器件完整性的方法和系统的制作方法_1》由会员分享,可在线阅读,更多相关《用于验证存储器器件完整性的方法和系统的制作方法_1(6页珍藏版)》请在金锄头文库上搜索。

1、用于验证存储器器件完整性的方法和系统的制作方法专利名称:用于验证存储器器件完整性的方法和系统的制作方法技术领域:本文描述的实施例一般涉及验证存储器器件完整性,更具体而言,涉及在线计算设备中的存储器验证。背景技术:在有限场景中使用基于校验和的系统来验证计算机存储器的完整性是已知的。例如,纠错码(ECC)随机存取存储器(RAM)检测存储器错误但是只在访问存储器的特定部分时执行这种错误检测。以离线模式验证存储器完整性也是已知的,诸如通过执行存储器测试实用程序而不是传统的操作系统。然而,现有系统和方法没有提供在计算机在线一正在需求分页的(demand paged)操作系统内执行一个或多个应用程序一时的

2、连续存储器验证。尤其在需要长时间段内的高可靠性的计算设备中,适当的存储器器件功能的验证是必要的。例如,某些高可靠性系统在很少活动的情况下运行数月或数年,但是期望这些系统在紧急情况下无瑕疵地发挥功能。因此,存在对于计算设备中的连续在线存储器验证的需要。发明内容在一个方面,提供一种用于验证存储器器件的完整性的方法。该方法包括通过耦合于该存储器器件的处理器来标识与该存储器器件内的至少一个存储器位置相对应的至少一个存储器块。该至少一个存储器块包括与先前校验和相关联的第一存储器块。通过该处理器确定该第一存储器块是否被指定为只读。至少部分地基于该第一存储器块内的数据由该处理器计算当前校验和。当该第一存储器

3、块被指定为只读且该先前校验和表示该第一存储器块内的预期数据时,通过该处理器确定该当前校验和是否等于该先前校验和。当该当前校验和不等于该先前校验和时,经由通知接口指示该第一存储器块的验证失败。在另一个方面,提供一种用于验证存储器器件的完整性的系统。该系统包括存储器器件和耦合于该存储器器件的处理器,该存储器器件包括多个存储器位置。对于与该多个存储器位置中的一个或多个存储器位置相对应的多个存储器块中的每个存储器块,该处理器被编程成确定该存储器块是否被指定为只读。该处理器还被编程成计算表示该存储器块内的数据的当前校验和。该存储器块与表示在前一时间的该存储器块内的数据的先前校验和相关联。当该存储器块被指

4、定为只读且该先前校验和表示该存储器块内的预期数据时,该处理器被进一步编程成确定该当前校验和是否等于该先前校验和。该系统还包括耦合于该处理器的通知接口。当该多个存储器块的第一存储器块的当前校验和不等于该第一存储器块的先前校验和时,该通知接口被配置成指示验证失败。在又一个方面,提供一个或多个计算机可读存储介质。该计算机可读存储介质具有计算机可执行组件,该计算机可执行组件用于使用耦合于存储器器件的至少一个处理器来验证该存储器器件的完整性。该组件包括控制组件、验证组件和通知组件。该控制组件在由该至少一个处理器执行时致使该处理器标识与该存储器器件内的至少一个存储器位置相对应的并与先前校验和相关联的存储器

5、块。该验证组件在由该至少一个处理器执行时致使该处理器至少部分地基于所标识的存储器块内的数据来计算当前校验和,以及当该所标识的存储器块被指定为只读且该先前校验和表示该所标识的存储器块内的预期数据时,确定该当前校验和是否等于该先前校验和。该通知组件在由该至少一个处理器执行时致使该处理器在该当前校验和不等于该先前校验和时,经由通知接口指示该所标识的存储器块的验证失败。图1-5示出了本文描述的系统和方法的示例性实施例。图1是带有具有存储器器件的计算设备的系统的框图。图2是用于验证图1中所示的存储器器件的完整性的示例性方法的流程图。图3是图1中所示的存储器器件内的存储器块的框图。图4是用于确定校验和是否

6、表示图3中所示的存储器块内的预期数据的示例性方法的流程图。图5是包括经由网络与多个被监视的计算设备通信地耦合的监视计算设备的系统的框图。具体实施例方式本文描述的系统和方法的实施例便于连续地验证在线计算设备内的存储器器件的完整性。尽管某些实施例是结合被映射到存储器件内的文件的存储器的页来描述的,然而本文提供的实施例与任何形式的存储器器件均能一起工作。而且,术语“文件”在本文中被用来包括而不限于非易失性信息的任何集合,诸如可执行应用、操作系统图像和/或对象、动态链接共享代码库、和/或固定参数数据,无论它们对计算设备是在本地还是远程,它们适于与本文描述的方法一起使用。此外,这些实施例便于连续的存储器

7、器件验证而不截取对存储器器件的写操作且不对操作系统(OS)内核的可执行指令进行直接修改。例如,本文描述的操作中的至少一些操作可被与操作系统交互的可加载内核模块执行,和/或被在“用户空间(即,具有被赋予计算设备的用户的特权)”中执行的实用应用执行。本文描述的系统和方法的技术效果可包括以下的一个或多个Ca)标识与存储器器件内的至少一个存储器位置相对应的存储器块,该存储器块与该存储器块在第一时间所映射到的第一文件的第一部分以及表示该第一时间的该存储器块内的数据的先前校验和相关联;(b)确定在该第一时间之后的第二时间处该存储器块是否被映射到该第一文件的第一部分;以及(c)至少部分地基于确定在第二时间处

8、该存储器块被映射到该第一文件的第一部分,指示该先前校验和表示该第二时间处的该存储器块内的预期数据。图1是带有计算设备105的系统100的框图。计算设备105包括存储器器件110并耦合于存储器器件110的处理器115以执行指令。在某些实施例中,可执行指令被存储在存储器器件110中。计算设备105被编程成由编程处理器115执行本文中描述的一个或多个操作。例如,可以通过将操作编码为一个或多个可执行指令并在存储器器件110中提供所述可执行指令来编程处理器115。处理器115可包括一个或多个处理单元(例如,成多核配置)。存储器器件110是允许诸如可执行指令和/或其他数据的信息被存储和取回的一个或多个器件

9、。存储器器件110可包括一个或多个计算机可读介质,诸如但不限于动态随机存取存储器(DRAM)和/或静态随机存取存储器(SRAM)。计算设备105还可包括存储器件120。与存储器器件110 样,存储器件120允许数据被存储并取回。存储器件120耦合于处理器115,并可选地耦合于存储器器件110。例如,计算设备105可提供存储器件120和存储器器件110之间的直接存储器访问(DMA)。存储器件120可包括一个或多个计算机可读介质,诸如但不限于固态磁盘、硬盘、电池支持的SRAM和/或闪存器件。存储器器件110和/或存储器件120可被配置成存储(无限制地)与操作系统(OS)对应的可执行指令(例如,OS

10、内核和/或内核模块)、与应用程序对应的可执行指令、配置数据、程序数据、动态链接共享代码库、和/或任何其他类型的数据。存储器件120可具有比存储器器件110的存储器容量更大的存储器容量。在某些实施例中,存储器器件110被配置成存储在存储器件120内存储的数据的至少一部分数据的副本。例如,存储器器件110可被配置成存储在存储器件120内存储的可执行指令的副本,而处理器115可被配置成访问并执行来自存储器器件110的可执行指令。计算设备105还包括被配置成与用户130和/或远程设备(图1中未示出)交互的至少一个通知接口 125。在某些实施例中,通知接口 125包括耦合于处理器115的呈现接口135。

11、呈现接口 135被配置成向用户130呈现信息,诸如验证失败和/或验证成功。例如,呈现接口 135可包括显示适配器(图1中未示出),该适配器被配置成耦合于显示设备,诸如发光二极管(LED)指示器、阴极射线管(CRT)、液晶显示器(IXD)、有机LED (OLED)显示器和/或“电子墨水”显示器。在某些实施例中,呈现接口 135包括一个或多个显示设备。附加地或替代地,呈现接口 135可包括音频适配器(图1中未示出),该适配器被配置成耦合于音频设备,诸如扬声器。在某些实施例中,呈现接口 135包括一个或多个音频设备。在某些实施例中,通知接口 125包括耦合于处理器115的通信接口 140。通信接口

12、140被配置成与远程设备(诸如另一计算设备105)通信地耦合。例如,通信接口 140可包括而不限于有线网络适配器、无线网络适配器、和/或移动电信适配器。图2是用于验证存储器器件110的完整性的示例性方法200的流程图。参考图3描述了方法200,存储器器件110和存储器件120内的数据的框图。存储器器件110和存储器件120各包括多个存储器位置150。例如,每个存储器位置150可对应于存储器器件110和/或存储器件120内的一个字节的数据。多个存储器位置150被组织成存储器块155。例如,在存储器器件110中,存储器块155可被称为存储器的“页”。在一个实施例中,存储器的页对应于4096个存储器

13、位置150或4千字节(4kB),尽管也构想了其他的页大小。方法200包括通过处理器115标识205存储器块155中与存储器器件110内的至少一个存储器位置150对应的至少一个存储器块160。例如,与存储器器件110内的所有存储器位置150相对应的存储器块155可被标识205。在另一示例中,标识205存储器块160包括接收与存储器器件110内的存储器位置150相对应的地址以及标识存储器块160,存储器块160对应于(例如,包括)存储器位置150。可至少部分地基于预定存储器块大小(诸如页大小)来标识205存储器块160。在某些实施例中,存储器块160是与存储器器件110内的一个或多个存储器位置15

14、0相对应的虚拟存储器的页。一个或多个存储器位置150对应于存储器件120内的一个或多个存储器位置150。附加地或替代地,可标识205与单个文件165相对应的一个或多个存储器块155。如图3中所示,存储器块160表示文件165的部分170。文件165的剩余部分也存储在存储器件120内而不被复制到存储器器件110。标识205存储器块160可包括接收指示文件165的文件索引(file reference)以及标识存储器器件110内与文件165相关联的存储器块 155。存储器块160与先前校验和相关联,该先前校验和表示在先前时刻存储器块160内所包含的数据。通过处理器115确定210存储器块160是否

15、被指定为只读。例如,处理器115可被编程为将元数据与存储器块160相关联并基于该元数据来确定210存储器块160是否是只读的。与存储器块160相关联的元数据可包括而不限于存储器块类型(例如,复合页)、内容类型(例如,内核对象高速缓存)、访问模式(例如,只读或读写)、文件映射属性(例如,存储器块160是否被映射到文件)和/或能够将数据写到映射文件的一些存储器块155,如果存在的话。通过处理器115至少部分地基于存储器块160内的数据来计算215当前校验和。例如,处理器115可被编程成计算存储器块160内的数据的数学和和/或散列值。通过处理器115确定220先前校验和是否表示存储器块160内的预期

16、数据。例如,与存储器块160相关联的元数据可被用来确定220该先前校验和是否表示预期数据,如下面参考图4所描述的。当存储器块160被指定为只读,且先前校验和表示存储器块160内的预期数据时,通过处理器115确定225当前校验和是否等于先前校验和。当当前校验和不等于先前校验和时,存储器块160的验证失败经由通知接口 125指示230。例如,验证失败可通过经由呈现接口 135呈现可见警告、通过经由呈现接口 135呈现可听警告、和/或通过经由通信接口140传送验证失败消息来指示230。当确定220先前校验和不表示存储器块160内的预期数据时,当前校验和可与存储器块160相关联222。在为存储器块160后续执行方法200时,将当前校验和当作先前校验和。换言之,当前校验和可被定义为存储器块160的先前校验和。在某些实施例中,方法200跟踪存储器块160的成功验证。如果确定225当前校验和等于先前校验和,则指示232验证成功。例如,处理器115可被编程为记录(例如,在存储器器件110内)确定225当前校验和等于先前校验和的验证成功时间。在方法200的后续执行中

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号