机箱VPD数据存取方法、装置、设备及存储介质制造方法及图纸

技术编号:24852144 阅读:24 留言:0更新日期:2020-07-10 19:06
本申请公开了提供的机箱VPD数据存取方法,该方法通过mmap内存映射机制将存储于各EEPROM中VPD数据每个字段一一映射到用户进程空间,以读写进程空间内存的方式访问EEPROM中VPD存储数据,避免了从CPU到EEPROM一系列器件传输过程带来的传输延时,大大缩短了VPD数据读取数据路径长度,可方便快捷存取VPD每个字段,有效提升数据存取效率,具有可将数据固化到EEPROM、读写方便、性能优化等优势。本申请还提供了一种机箱VPD数据存取装置、设备及一种可读存储介质,具有上述有益效果。

【技术实现步骤摘要】
机箱VPD数据存取方法、装置、设备及存储介质
本申请涉及存储
,特别涉及一种机箱VPD数据存取方法、装置、设备及一种可读存储介质。
技术介绍
存储设备在实际应用时,需要读取VPD(VitalProductData,记录了产品信息(如产品sn等)和硬件配置信息(如CPU型号,速率以及每个槽位支持哪些类型的接口卡等))信息,系统软件会根据VPD信息做出不同的操作。这些信息被系统软件读取后,稍微处理显示给客户或客服,客户由此可知道系统的一些信息,以便根据此信息来更换对应的部件等等。VPD信息存储于各设备的EEPROM(ElectricallyErasableProgrammablereadonlymemory,带电可擦可编程只读存储器,一种掉电后不丢失数据的存储芯片)中,EEPROM相对存储系统的主存介质具有相对的独立性,可保证VPD信息的绝对正确和不易篡改。实际应用中,需要频繁存取VPD信息,这就要求系统能及时响应VPD的存取。但是目前,从物理连接上来看,从CPU到EEPROM要经过一系列器件,其中某些器件的连接是通过低速总线(例如I2C)连接的,这种低速率通信,基本无法满足及时响应的需求,而且当这些系统总线被其它设备占用时,只能等待其它设备释放总线后才能通信,会严重影响VPD信息的传输效率,导致无法满足系统快速响应VPD信息的存取需求。
技术实现思路
本申请的目的是提供一种机箱VPD数据存取方法,该方法可以满足系统快速响应VPD信息的存取需求;本申请的另一目的是提供一种机箱VPD数据存取装置、设备及一种可读存储介质。为解决上述技术问题,本申请提供一种机箱VPD数据存取方法,包括:根据EEPROM中VPD字段偏移及总长度在进程空间中定义映射区首地址及所述首地址的相对偏移;在硬盘建立用于实现MMAP机制的内存映射文件,并将EEPROM中的VPD字段信息同步至所述内存映射文件中;调用内存映射函数mmap建立所述内存映射文件与所述映射区首地址之间的映射关系,并将所述内存映射文件映射至所述首地址;当接收到VPD字段信息存取请求时,根据所述映射区首地址,结合各字段相对偏移,获取在所述映射区中的目标字段,以响应所述VPD字段信息存取请求。可选地,在将所述内存映射文件映射至所述首地址之前,还包括:判断所述内存映射文件中预设数据存储空间大小是否与所述EEPROM中VPD字段的总长度相匹配,以判断所述内存映射文件的内容校验是否正确;若是,执行所述将所述内存映射文件映射至所述首地址;若否,根据所述总长度新建内存映射文件,并EEPROM中的VPD字段信息同步至所述新建内存映射文件中。可选地,在所述调用内存映射函数mmap建立所述内存映射文件与所述内存映射首地址的映射关系之后,还包括:当系统重启后,验证所述内存映射文件是否被篡改;若否,执行将所述内存映射文件映射至所述首地址的步骤;若是,将所述EEPROM中的VPD字段信息同步至所述内存映射文件中。可选地,所述获取在所述映射区中的目标字段,以响应所述VPD字段信息存取请求,包括:当所述VPD字段信息存取请求为VPD字段更新请求时,更新所述映射区中的VPD存储数据,并向上层模块确认所述更新请求;向后台同步线程发送更新请求,以便调用所述后台同步线程将变更后的VPD数据更新至所述EEPROM中。可选地,所述向后台同步线程发送更新请求,以便调用所述后台同步线程将变更后的VPD数据更新至所述EEPROM中,包括:当定期设备更新机制触发后,将所述变更后的VPD数据同步更新至所述内存映射文件中;当后台同步线程接收到更新请求后,将所述变更后的VPD数据更新至所述EEPROM中。本申请公开一种机箱VPD数据存取装置,包括:VPD内存创建单元,用于根据EEPROM中VPD字段偏移及总长度在进程空间中定义映射区首地址及所述首地址的相对偏移;内存映射文件创建单元,用于在硬盘建立用于实现MMAP机制的内存映射文件,并将EEPROM中的VPD字段信息同步至所述内存映射文件中;映射搭建单元,用于调用内存映射函数mmap建立所述内存映射文件与所述映射区首地址之间的映射关系,并将所述内存映射文件映射至所述首地址;数据响应单元,用于当接收到VPD字段信息存取请求时,根据所述映射区首地址,结合各字段相对偏移,获取在所述映射区中的目标字段,以响应所述VPD字段信息存取请求。可选地,所述映射搭建单元中进一步包括:校验子单元,用于在将所述内存映射文件映射至所述首地址之前,判断所述内存映射文件中预设数据存储空间大小是否与所述EEPROM中VPD字段的总长度相匹配,以判断所述内存映射文件的内容校验是否正确;若是,执行所述将所述内存映射文件映射至所述首地址;若否,根据所述总长度新建内存映射文件,并EEPROM中的VPD字段信息同步至所述新建内存映射文件中。可选地,所述映射搭建单元中进一步包括:篡改验证子单元,用于在所述调用内存映射函数mmap建立所述内存映射文件与所述内存映射首地址的映射关系之后,当系统重启后,验证所述内存映射文件是否被篡改;若否,执行将所述内存映射文件映射至所述首地址的步骤;若是,将所述EEPROM中的VPD字段信息同步至所述内存映射文件中。本申请公开一种机箱VPD数据存取设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现所述的机箱VPD数据存取方法的步骤。本申请公开一种可读存储介质,所述可读存储介质上存储有程序,所述程序被处理器执行时实现所述机箱VPD数据存取方法的步骤。本申请所提供的机箱VPD数据存取方法,通过mmap内存映射机制将存储于各EEPROM中VPD数据每个字段一一映射到用户进程空间,以读写进程空间内存的方式访问EEPROM中VPD存储数据,避免了从CPU到EEPROM一系列器件传输过程带来的传输延时,大大缩短了VPD数据读取数据路径长度,可方便快捷存取VPD每个字段,有效提升数据存取效率,具有可将数据固化到EEPROM、读写方便、性能优化等优势。本申请还提供了一种机箱VPD数据存取装置、设备及一种可读存储介质,具有上述有益效果,在此不再赘述。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本申请实施例提供的一种机箱VPD数据存取方法的流程图;图2为本申请实施例提供的一种建立映射关系后的VPD内存数据与内存映射文件间的映射关系示意图;图3为本申请实施例提供的一种机箱VPD数据存取实现流程示意图;图4为本申请实施例提供的一种机箱VPD数据存取装置的结构框图;本文档来自技高网...

【技术保护点】
1.一种机箱VPD数据存取方法,其特征在于,包括:/n根据EEPROM中VPD字段偏移及总长度在进程空间中定义映射区首地址及所述首地址的相对偏移;/n在硬盘建立用于实现MMAP机制的内存映射文件,并将EEPROM中的VPD字段信息同步至所述内存映射文件中;/n调用内存映射函数mmap建立所述内存映射文件与所述映射区首地址之间的映射关系,并将所述内存映射文件映射至所述首地址;/n当接收到VPD字段信息存取请求时,根据所述映射区首地址,结合各字段相对偏移,获取在所述映射区中的目标字段,以响应所述VPD字段信息存取请求。/n

【技术特征摘要】
1.一种机箱VPD数据存取方法,其特征在于,包括:
根据EEPROM中VPD字段偏移及总长度在进程空间中定义映射区首地址及所述首地址的相对偏移;
在硬盘建立用于实现MMAP机制的内存映射文件,并将EEPROM中的VPD字段信息同步至所述内存映射文件中;
调用内存映射函数mmap建立所述内存映射文件与所述映射区首地址之间的映射关系,并将所述内存映射文件映射至所述首地址;
当接收到VPD字段信息存取请求时,根据所述映射区首地址,结合各字段相对偏移,获取在所述映射区中的目标字段,以响应所述VPD字段信息存取请求。


2.如权利要求1所述的机箱VPD数据存取方法,其特征在于,在将所述内存映射文件映射至所述首地址之前,还包括:
判断所述内存映射文件中预设数据存储空间大小是否与所述EEPROM中VPD字段的总长度相匹配,以判断所述内存映射文件的内容校验是否正确;
若是,执行所述将所述内存映射文件映射至所述首地址;
若否,根据所述总长度新建内存映射文件,并EEPROM中的VPD字段信息同步至所述新建内存映射文件中。


3.如权利要求1所述的机箱VPD数据存取方法,其特征在于,在所述调用内存映射函数mmap建立所述内存映射文件与所述内存映射首地址的映射关系之后,还包括:
当系统重启后,验证所述内存映射文件是否被篡改;
若否,执行将所述内存映射文件映射至所述首地址的步骤;
若是,将所述EEPROM中的VPD字段信息同步至所述内存映射文件中。


4.如权利要求1所述的机箱VPD数据存取方法,其特征在于,所述获取在所述映射区中的目标字段,以响应所述VPD字段信息存取请求,包括:
当所述VPD字段信息存取请求为VPD字段更新请求时,更新所述映射区中的VPD存储数据,并向上层模块确认所述更新请求;
向后台同步线程发送更新请求,以便调用所述后台同步线程将变更后的VPD数据更新至所述EEPROM中。


5.如权利要求4所述的机箱VPD数据存取方法,其特征在于,所述向后台同步线程发送更新请求,以便调用所述后台同步线程将变更后的VPD数据更新至所述EEPROM中,包括:
当定期设备更新机制触发后,将所述变更后的VPD数据同步更...

【专利技术属性】
技术研发人员:董强强
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:江苏;32

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

1