保护存储器中的数据的计算机系统和方法技术方案

技术编号:2888911 阅读:181 留言:0更新日期:2012-04-11 18:40
一个计算机系统的存储器包括可见部分和隐式部分。存储器的可见部分是可由处理器及在计算机系统内运行的操作系统寻址的。对于存储器的隐式部分来说,则排除了由处理器或操作系统寻址的可能性。存储器的隐式部分用来存储由处理器或操作系统传送的数据。位于存储器可见部分的通信区接收来自处理器或操作系统的数据存取请求。既定址存储器的可见部分,又定址存储器的隐式部分的隐式服务程序接收来自通信区的数据存取请求,并启动从隐式存储器的数据存取。(*该技术在2017年保护过期,可自由使用*)

【技术实现步骤摘要】
总的来说,本专利技术涉及计算机系统,更准确地说,它涉及对存储在位于计算机系统内的存储器部分中的数据的保护。特别是公开了在计算机系统和操作系统对其没有直接访问权的存储器的部分之间传送数据的机制。当一个进程在计算机系统上进行时,该进程利用存储器的指定部分存储和检索数据。其它进程也可能访问存储器的那些指定部分。当在计算机系统上运行的第一个进程被中断而随后又恢复时,在第一个进程被中断的期间,在计算机系统上运行的第二个进程可能会访问先前被第一个进程使用过的存储器的部分。当第一个进程被中断时,如果第二个进程重写由第一个进程存储在存储器中的数据值,那末,当第一个进程恢复时,在它被中断以前它曾存储在存储器中的数据值可能将不复存在,这就可能产生错误。此外,如果几个进程在一个计算机系统内同时运行,一个进程可能把数据存储到另一进程正在使用的存储器的部分中去。这样,在一个进程检索其已存储的数据之前,该数据可能已被破坏。一个计算机系统可能经历系统再启动,这也是典型的。这样的计算机系统可能有一个提供数据缓冲器的软件应用程序在运行,该缓冲器的内容不会因系统再启动而被擦除。例如,这种情况可能会在纽约州Armonk镇的IBM公司的一项产品,称为“事项处理设施(TPF)”的软件包中遇到。在TPF中,如果有系统再启动,某些数据缓冲器的内容不会被擦除。在再启动完成之后,当TPF继续在系统再启动之前它所处的点上运行时,未被擦除的数据缓冲器的内容仍保持原样是最理想的。但是,这些数据缓冲器是系统上运行的任何应用程序都可以访问的。因此,这些数据缓冲器可能会被操作系统中的或在操作系统上运行的应用程序中的错误所破坏。一个计算机系统的存储器包括可见部分和隐式部分。存储器的可见部分可由处理器及在计算机系统内运行的操作系统访问。对于存储器的隐式部分来说,则排除了由处理器或操作系统访问的可能性。存储器的隐式部分用来存储由处理器或操作系统传送的数据。位于存储器可见部分的通信区接收来自处理器或操作系统的数据存取请求。既能访问存储器的可见部分,又能访问存储器的隐式部分的隐式服务程序接收来自通信区的数据存取请求,并启动从隐式存储器的数据存取。附图说明图1是根据本专利技术的典型实施例说明存储器配置及其与多个处理器和多个输入/输出(I/O)装置关系的框图。图2是说明图1所示的可见存储器的结构及图1所示的可见存储器与隐式存储器之间的通信路径的框图。图3是说明图1所示的隐式存储器内部结构的框图。图4是根据本专利技术的典型实施例说明操作系统放弃处理器对隐式服务程序的控制权的某些处理步骤的流程图。图5是根据本专利技术的典型实施例说明图3的隐式服务程序所完成的步骤的流程图。图6是根据本专利技术的典型实施例说明用来向隐式服务程序传送请求的队列结构的框图。图1根据本专利技术的典型实施例说明一个计算机系统。如图所示,计算机硬件包括一个或多个处理器15a-15n,它们通过某个总线或其它互连机构10与存储器20连接。可以使用任何计算机系统,但是,根据本专利技术的典型实施例,可以使用1994年6月第24届国际容错计算专题讨论会汇编第414-423页,由Abbott,M.,Har,D.Herger,L.,kauffman,M.,Mak,K.,Murdock,J.,Schulz,C.,Smith,T.B.,Tremaine,B.,Yeh,D.,Wong,L.所著的“耐用存储器RS/6000系统设计”中所描述的“耐用存储器RS/6000(DM/6000)”。这个系统提供这样的硬件冗余,使任一硬件部件或电源的故障都不会使计算机停机。存储器20的一个部分是可见存储器30。在每个处理器15a-15n上运行的程序有权访问可见存储器30。如图2所示,可见存储器30包括一个象AIX(由纽约州Armonk镇的IBM公司生产)那样的通用操作系统40以及应用程序5a-5n。存储器20的另一部分是隐式存储器60。有几种方法可防止操作系统40及应用程序5a-5n访问这个隐式存储器。一种较可取的方法利用一种能力通知AIX,存储器20的某些部分是有故障的。当AIX被引导时,它期待着找到一个包括对有故障的存储器部分的描述的IPL控制块。AIX将决不访问或以任何方式改变被确定为有故障的任何存储器的内容,在其虚拟地址表中对这类存储器不作记录。因此,当AIX为其正在使用的无论那个处理器15a-15n一接通虚拟地址变换时,这个存储器就被有效地隐藏起来。这样,即使在它可被访问的短暂的初始化阶段,存储器60也决没有被修改的危险。其它操作系统在引导时能指定可用存储器。如果引导时指定的可用存储容量小于总的实际存储容量。可用存储器指定区域之外的存储器部分对于操作系统来说将是不可见的。隐式服务程序70控制对隐式存储器60的存取。隐式服务程序70是装入隐式存储器60的一个程序。隐式服务程序70中的地址转换可以断开。隐式服务程序70及操作系统40和应用程序5a-5n共同使用位于可见存储器30内的通信区80。这是隐式服务程序70和操作系统40及应用程序5a-5n后两者赖以通信的机构。把所有的通信机构都放置在可见存储器30之内,就排除了操作系统40和应用程序5a-5n损坏隐式存储器的可能性。在最佳实施例中,通信区80包括队列90和请求块100a-100n。队列90最好占有存储器的单独一页,用来形成队列的链式单元的所有指示字最好不是地址,而是那一页内的位移。这样,队列90能被在虚拟地址变换接通时工作的在操作系统40下运行的程序控制,以及能被在虚拟地址变换断开的情况下可以工作的隐式服务程序70所控制。队列90的条目有链式位移,以便连接队列条目及请求块100a-100n的实地址。通过利用队列的首部指示字的实地址,隐式服务程序70不使用AIX的虚拟地址变换机制,就能使用首部指示字。如图3所示,隐式存储器60的一部分是稳态存储器110。它包括一个稳态存储器描述符120,隐式服务程序70利用预先安排的地址能确定描述符120的位置,隐式服务程序70还利用描述符120来确定,稳态存储器110的那些部分正在使用。稳态存储器110的一小部分被隐式服务程序70用来保持其自己的记录,但是,稳态存储器110的大部分由专用服务程序130a-130n使用,这些服务程序都是隐式服务程序70可访问的程序。例如,最佳实施例包括一个VDISK服务程序130a及一个PCACHE服务程序130b,以及其它服务程序。VDISK服务程序130a处理使用稳态存储器110的空间存储数据的命令,好象是在一个或多个磁盘上。以这种方式被使用的存储器的每个空间都称之为VDISK。VDISK服务程序130a最好至少能提供处理下述请求的能力,即分配稳态存储器110中被用来存储数据的空间的请求,把数据从可见存储器30复制到稳态存储器110的请求,以及把数据从稳态存储器110复制到可见存储器30的请求。PCACHE服务程序130b超高速缓存准备在较晚的时候写到磁盘上去的数据。PCACHE服务程序130b把数据的磁盘地址与数据本身一起存储起来,以便在操作系统40发生故障后再现超向速缓存的信息。当装入并启动隐式服务程序70后,就要测试稳态存储器描述符120的有效性,如果它不是有效时,就使其初始化,以表明稳态存储器中没有一个空间在使用。本文档来自技高网...

【技术保护点】
包括存储器,至少一个处理器和一个操作系统的计算机系统,它包括:可由所述的至少一个处理器和所述的操作系统寻址的所述存储器的可见部分;a)排除了所述的至少一个处理器和所述的操作系统对其寻址的可能性的以及b)用来存储由所述的至少一个处理器 和所述的操作系统两者之一传送的数据的所述存储器的隐式部分;位于所述存储器的所述可见部分的,用来接收来自a)所述的至少一个处理器以及b)所述的操作系统两者之一的数据存取请求的通信区;以及a)既定址所述存储器的所述可见产部分,又定址所述 存储器的所述隐式部分的,b)接收来自所述通信区的所述数据存取请求的,以及c)启动从所述隐式存储器的所述数据存取的隐式服务程序。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:弗兰克诺曼埃克森迈克尔亨利索多尔哈克纳吉哈里姆理查德帕尔文金
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1