一种PCIOptionROM保护方法与流程

文档序号:18360761发布日期:2019-08-06 23:48阅读:657来源:国知局
一种PCI Option ROM保护方法与流程

本发明公开一种pcioptionrom保护方法,涉及服务器技术领域。



背景技术:

服务器中存在各种外设,特别是pci设备,用于为服务器提供所需的功能扩展。pcioptionrom(或者pciexpansionrom)是pci设备上用于初始化pci设备和系统启动的程序,对pcioptionrom加以保护对于具有pci设备自主知识产权的服务器厂商具有重要意义。本发明提供了一种pcioptionrom保护方法,pci设备驱动程序映像放置于pcioptionrom中,在bios加载和执行pci设备驱动程序映像阶段添加映像处理模块,该模块对加载到内存中经过变换处理的pcioptionrom中适用于特定pci设备的pci设备驱动程序的pe/coff映像进行处理以得到pe/coff映像的原始值,进而得到原pci设备驱动程序映像,bios执行的是原pci设备驱动程序映像,从而对pcioptionrom加以保护。



技术实现要素:

本发明针对现有技术的问题,提供一种pcioptionrom保护方法。

本发明提出的具体方案是:

一种pcioptionrom保护方法:pci外置rom中存储pcioptionrom,

所述pcioptionrom通过pci设备驱动程序映像的pe/coff映像原始值经过变换处理得到,

在bios加载和执行pci设备驱动程序映像阶段对加载到内存的pcioptionrom中pe/coff映像进行相应的逆变换处理得到pe/coff映像的原始值,从而得到原始pci设备驱动程序映像,bios执行原始pci设备驱动程序映像,对pcioptionrom进行了保护。

所述的方法中新建内存缓冲区加载pcioptionrom中pe/coff映像,取代bios执行过程中本应加载pe/coff映像到的内存区域,对加载到内存缓冲区的pe/coff映像进行相应的逆变换处理,得到pe/coff映像的原始值。

所述的方法中pcioptionrom通过pci设备驱动程序映像的pe/coff映像原始值经过变换处理得到,其中变换处理是指对pe/coff映像原始值进行与0x55的逐个字节的xor运算。

所述的方法中具体步骤为:

上电后,bios执行到加载和执行pci设备驱动程序映像阶段;

在加载pcioptionrom到内存时,新建内存缓冲区,直接加载pcioptionrom中适用于特定pci设备的pci设备驱动程序映像到此内存缓冲区;

对加载到内存缓冲区中pci设备驱动程序映像的pe/coff映像进行相应的逆变换处理,得到pe/coff映像的原始值;

拷贝内存缓冲区中pci设备驱动程序映像到bios执行过程本应加载到的内存区域,并释放开辟的内存缓冲区;

bios执行pci设备驱动程序映像。

一种pcioptionrom保护系统,包括pci外置rom及bios,其中pci外置rom中存储pcioptionrom,

所述pcioptionrom通过pci设备驱动程序映像的pe/coff映像原始值经过变换处理得到,

在bios加载和执行pci设备驱动程序映像阶段对加载到内存的pcioptionrom中pe/coff映像进行相应的逆变换处理得到pe/coff映像的原始值,从而得到原始pci设备驱动程序映像,bios执行原始pci设备驱动程序映像,对pcioptionrom进行了保护。

所述的系统中bios新建内存缓冲区加载pcioptionrom中pe/coff映像,取代bios执行过程中本应加载pe/coff映像到的内存区域,对加载到内存缓冲区的pe/coff映像进行相应的逆变换处理,得到pe/coff映像的原始值。

所述的系统中pci外置rom中的pcioptionrom通过pci设备驱动程序映像的pe/coff映像原始值经过变换处理,其中变换处理是指对pe/coff映像原始值进行与0x55的逐个字节的xor运算。

所述的系统中,系统上电后,bios执行到加载和执行pci设备驱动程序映像阶段;

在加载pcioptionrom到内存时,新建内存缓冲区,直接加载pcioptionrom中适用于特定pci设备的pci设备驱动程序映像到此内存缓冲区;

对加载到内存缓冲区中pci设备驱动程序映像的pe/coff映像进行相应的逆变换处理,得到pe/coff映像的原始值;

拷贝内存缓冲区中pci设备驱动程序映像到bios执行过程本应加载到的内存区域,并释放开辟的内存缓冲区;

bios执行pci设备驱动程序映像。

本发明的有益之处是:

本发明提供一种pcioptionrom保护方法:pci外置rom中存储pcioptionrom,所述pcioptionrom通过pci设备驱动程序映像的pe/coff映像原始值经过变换处理得到,在bios加载和执行pci设备驱动程序映像阶段对加载到内存的pcioptionrom中pe/coff映像进行相应的逆变换处理得到pe/coff映像的原始值,从而得到原始pci设备驱动程序映像,bios执行原始pci设备驱动程序映像,对pcioptionrom进行了保护;利用本发明的同时,因其pci外置rom存储的是pe/coff映像经过变换处理的pcioptionrom,bios执行时使用的是经过逆变换处理得到的pe/coff原始映像,本发明仅需建立变换方式,即可对pcioptionrom加以保护,简单有效,并且只要设置的变换方式不可知,映像便不能被篡改或获知,对于具有pci设备自主知识产权的服务器厂商具有重要意义。

附图说明

图1是pci设备驱动程序映像格式示意图;

图2是本发明方法流程示意图。

具体实施方式

本发明提供一种pcioptionrom保护方法:pci外置rom中存储pcioptionrom,

所述pcioptionrom通过pci设备驱动程序映像的pe/coff映像原始值经过变换处理得到,

在bios加载和执行pci设备驱动程序映像阶段对加载到内存的pcioptionrom中pe/coff映像进行相应的逆变换处理得到pe/coff映像的原始值,从而得到原始pci设备驱动程序映像,bios执行原始pci设备驱动程序映像,对pcioptionrom进行了保护。

同时提供与上述方法相对应的一种pcioptionrom保护系统,包括pci外置rom及bios,其中pci外置rom中存储pcioptionrom,

所述pcioptionrom通过pci设备驱动程序映像的pe/coff映像原始值经过变换处理得到,

在bios加载和执行pci设备驱动程序映像阶段对加载到内存的pcioptionrom中pe/coff映像进行相应的逆变换处理得到pe/coff映像的原始值,从而得到原始pci设备驱动程序映像,bios执行原始pci设备驱动程序映像,对pcioptionrom进行了保护。

下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定。

一个服务器,放置了某服务器厂商具有自主知识产权的pci设备,该设备的pcioptionrom包含单一pci设备驱动程序映像,以此为例,pci设备驱动程序映像的格式参考图1,具体步骤为:

pci外置rom中存储pe/coff映像经过变换处理的pcioptionrom,其中变换处理为对pe/coff映像进行与“0x55”的逐个字节的xor运算,例如,若pe/coff映像中有一段内容为“0x010x230x450x670x890xab0xcd0xef”,经过与“0x55”的xor运算得到“0x540x760x100x320xdc0xfe0x980xba”,

系统上电后,bios执行到加载和执行pci设备驱动程序映像阶段;

在加载pcioptionrom到内存时,新建内存缓冲区,直接加载pcioptionrom中适用于特定pci设备的pci设备驱动程序映像到此内存缓冲区;

对加载到内存缓冲区中pci设备驱动程序映像的pe/coff映像进行相应的逆变换处理,逆变换处理为pci设备驱动程序的pe/coff映像进行同样的与“0x55”的逐个字节的xor运算,即经过同样的与“0x55”的xor运算得到“0x010x230x450x670x890xab0xcd0xef”,即得到pe/coff映像的原始值;

拷贝内存缓冲区中pci设备驱动程序映像到bios执行过程本应加载到的内存区域,并释放开辟的内存缓冲区;

bios执行pci设备驱动程序映像。

本发明方法仅需对程序代码进行改动即可对pcioptionrom加以保护,简单有效。

以上所述实施例仅是为充分说明本发明而所举的较佳的实施例,本发明的保护范围不限于此。本技术领域的技术人员在本发明基础上所作的等同替代或变换,均在本发明的保护范围之内。本发明的保护范围以权利要求书为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1