一种内存镜像的方法及系统、一种内存监控器的制造方法

文档序号:8457197阅读:410来源:国知局
一种内存镜像的方法及系统、一种内存监控器的制造方法
【技术领域】
[0001 ] 本发明涉及计算机技术领域,特别涉及一种内存镜像的方法及系统、一种内存监控器。
【背景技术】
[0002]系统可靠性对应于企业商用级的服务器型计算机来说,有至关重要的作用。而内存镜像即是实现可靠性的一项非常有效的手段。内存镜像的工作原理很像磁盘镜像,就是将数据同时写入到两个独立的配置相同的内存卡中,系统正常运行时,内存数据读取只在激活的内存卡中进行。如果一个内存中发生足以引起系统报警的软故障,系统频繁报告管理员这个内存条将要出故障,或者整个内存条都要彻底损坏,服务器就会自动地切换到镜像内存卡,直到有故障的内存被更换。
[0003]现有技术中,在一个计算机系统内常常存在多个处理器,每个处理器上加载有内存,处理器的内存控制器可以对与该处理器加载的内存进行操作。而处理器只支持位于同一个处理器之内的内存镜像,而不支持处理器之间的内存镜像。也就是说,一个处理器一般会加载几块内存,处理器加载的内存的镜像内存也必须在其加载的几块内存中,镜像内存不能在其他处理器加载的内存中。当处理器对加载内存进行访问时,该处理器的内存控制器将访问的数据写入到该内存的镜像内存中。举例来说,处理器A加载了 4块内存,处理器B加载了 4块内存,其中,处理器A的内存I和内存2是处理器A正常使用的内存,处理器A的内存I和内存2的镜像内存可以是处理器A的内存3和内存4,而不能是处理器B加载的内存。
[0004]通过上述描述可见,现有技术中内存镜像的方法,一个处理器加载的内存的镜像内存只能在该处理器加载的内存中,镜像内存不能灵活的设置。

【发明内容】

[0005]有鉴于此,本发明提供了一种内存镜像的方法及系统、一种内存监控器,能够灵活设置镜像内存。
[0006]第一方面,本发明提供了一种内存镜像的方法,包括:预先设置被镜像内存区间对应的镜像内存区间,还包括:
[0007]S1:确定对所述被镜像内存区间进行写操作的访问消息;
[0008]S2:根据所述访问消息确定访问的内存地址;
[0009]S3:从所述内存地址中读取数据,将所述数据写入到所述镜像内存区间。
[0010]进一步地,所述SI包括:
[0011 ] Al:接收进行内存访问的一致性报文,根据所述一致性报文判断当前内存访问是否是写操作,如果是,则执行步骤A2,否则,结束当前流程;
[0012]A2:从所述一致性报文中获取访问地址,判断所述访问地址是否属于所述被镜像内存区间,如果是,则执行步骤S2,否则,结束当前流程;
[0013]其中,所述访问消息包括:所述一致性报文。
[0014]进一步地,所述预先设置被镜像内存区间对应的镜像内存区间,包括:
[0015]预先将所述被镜像内存区间设置为第一处理器加载的第一内存区间,将所述镜像内存区间设置为第二处理器加载的第二内存区间。
[0016]进一步地,在所述S3之后,还包括:
[0017]B1:确定对所述被镜像内存区间与所述镜像内存区间进行切换;
[0018]B2:将所述被镜像内存所在的系统设置为静默状态;
[0019]B3:切换所述被镜像内存区间与所述镜像内存区间;
[0020]B4:解除所述系统的静默状态。
[0021]和/或,所述B3,包括:
[0022]通过内存译码器将所述镜像内存区间的地址修改为所述被镜像内存区间的地址。
[0023]第二方面,本发明提供了一种内存监控器,包括:
[0024]设置单元,用于设置被镜像内存区间对应的镜像内存区间;
[0025]第一确定单元,用于确定对所述被镜像内存区间进行写操作的访问消息;
[0026]第二确定单元,用于根据所述访问消息确定访问的内存地址;
[0027]写入单元,用于从所述内存地址中读取数据,将所述数据写入到所述镜像内存区间。
[0028]进一步地,所述第一确定单元,包括:
[0029]第一判断单元,用于接收进行内存访问的一致性报文,根据所述一致性报文判断当前内存访问是否是写操作,当判断结果为是时,通知第二判断单元;
[0030]第二判断单元,用于从所述一致性报文中获取访问地址,判断所述访问地址是否属于所述被镜像内存区间,当判断结果为是时,通知所述第二确定单元;
[0031]其中,所述访问消息包括:所述一致性报文。
[0032]进一步地,所述设置单元,用于将所述被镜像内存区间设置为第一处理器加载的第一内存区间,将所述镜像内存区间设置为第二处理器加载的第二内存区间。
[0033]进一步地,还包括:
[0034]第三确定单元,用于确定对所述被镜像内存区间与所述镜像内存区间进行切换;
[0035]静默单元,用于将所述被镜像内存所在的系统设置为静默状态;
[0036]切换单元,用于切换所述被镜像内存区间与所述镜像内存区间;
[0037]解除单元,用于解除所述系统的静默状态。
[0038]和/或,所述切换单元,用于通过内存译码器将所述镜像内存区间的地址修改为所述被镜像内存区间的地址。
[0039]第三方面,本发明提供了一种内存镜像的系统,包括:
[0040]至少一个处理器、如权利要求5-8所述的内存监控器;
[0041]所述内存监控器与每个处理器相连;
[0042]所述处理器,用于向所述内存监控器发送所述访问消息。
[0043]进一步地,所述内存监控器与每个处理器通过快速通道互联QPI总线相连。
[0044]通过本发明提供的一种内存镜像的方法及系统、一种内存监控器,预先设置被镜像内存区间对应的镜像内存区间,该镜像内存区间可以是其所在的系统内的任意内存区间,可以是该系统中任一处理器加载的内存区间,当确定出当前的访问消息是对被镜像内存进行访问,且当前的访问是对内存的写操作时,从访问消息中确定出访问的内存地址,从该内存地址中读取数据,将读取的数据写入到对应的镜像内存区间中,实现内存镜像,该内存镜像的方法不受内存区间位置的限制,可以将系统中任意的内存区间作为镜像内存区间,能够灵活设置镜像内存。
【附图说明】
[0045]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0046]图1是本发明一实施例提供的一种内存镜像的方法的流程图;
[0047]图2是本发明一实施例提供的另一种内存镜像的方法的流程图;
[0048]图3是本发明一实施例提供的一种内存监控器的示意图;
[0049]图4是本发明一实施例提供的另一种内存监控器的示意图;
[0050]图5是本发明一实施例提供的一种内存镜像的系统的示意图;
[0051]图6是本发明一实施例提供的一种内存镜像的系统中一致性报文发送的示意图。
【具体实施方式】
[0052]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1