信息处理方法及电子设备与流程

文档序号:14120294阅读:309来源:国知局
信息处理方法及电子设备与流程

本发明涉及信息技术领域,尤其涉及一种信息处理方法及电子设备。



背景技术:

基本输入输出系统(basicinput/outputsystem,bios)分配给多个总线和接口标准(peripheralcomponentinterfaceexpress,pcie)卡的可选只读存储器(optionreadonlymemory,oprom)空间的容量是有限的。这样仅能允许有限个数的pcie卡的执行,这样若bios连接的多个pcie卡很多时,就可能导致有部分pcie卡的不能执行。



技术实现要素:

有鉴于此,本发明实施例期望提供一种信息处理方法及电子设备,至少部分解决上述问题。

为达到上述目的,本发明的技术方案是这样实现的:

第一方面,本发明实施例提供一种信息处理方法,包括:

基本输入输出系统bios根据总线和接口标准pcie卡的可选只读存储oprom代码执行所消耗的oprom空间容量,确定执行的pcie卡的oprom代码的执行参数;

根据所述执行参数,执行pcie卡的oprom代码。

可选地,所述基本输入输出系统bios根据总线和接口标准pcie卡的可选只读存储oprom代码执行所消耗的oprom空间容量,确定执行的pcie卡的oprom代码的执行参数,包括:

获取每一个pcie卡的oprom代码执行所需消耗的oprom空间容量;

根据所述oprom空间容量,确定所述pcie卡的oprom代码的执行顺序。

可选地,所述根据所述执行参数,执行pcie卡的oprom代码,包括:

按照消耗的所述oprom空间容量的由大到小,依次执行对应的pcie卡的oprom代码。

可选地,所述pcie卡包括:第一类pcie卡和不同于所述第一类pcie卡的第二类pcie卡;所述第一类pcie卡的oprom的执行参数不同,则消耗的oprom空间容量不同;

所述根据所述执行参数,执行pcie卡的oprom代码,包括:

优先执行所述第二类pcie卡的oprom代码;

在执行所述第二类pcie卡的oprom代码之后,利用oprom空间的剩余空间执行第一类pcie卡的oprom代码。

所述基本输入输出系统bios根据总线和接口标准pcie卡的可选只读存储oprom代码执行所消耗的oprom空间容量,确定执行的pcie卡的oprom代码的执行参数,包括:

获取每一个pcie卡的oprom代码执行所需消耗的oprom空间容量;

根据所述oprom空间容量,确定所述pcie卡的oprom代码的执行顺序。

可选地,所述基本输入输出系统bios根据总线和接口标准pcie卡的可选只读存储oprom代码执行所消耗的oprom空间容量,确定执行的pcie卡的oprom代码的执行参数,包括:

获取所述pcie卡的oprom代码的执行方式;

所述根据所述执行参数,执行pcie卡的oprom代码,包括:

当所述执行方式为第一执行方式时,根据pcie卡执行所消耗的oprom空间容量执行pcie卡的oprom代码。

可选地,所述根据所述执行参数,执行pcie卡的oprom代码,包括:

当所述执行方式为第二执行方式时,按照bios设置选项或按照pcie卡连接到pci总线的顺序,执行各pcie卡的oprom代码。

可选地,所述方法还包括:

执行显卡的oprom代码;

所述根据所述执行参数,执行pcie卡的oprom代码,包括:

在执行所述显卡的oprom代码,按照所消耗的oprom空间容量执行占用oprom空间的各pcie卡的oprom代码。

第二方面,本发明实施例提供一种电子设备,包括:

确定单元,用于利用基本输入输出系统bios根据总线和接口标准pcie卡的可选只读存储oprom代码执行所消耗的oprom空间容量,确定执行的pcie卡的oprom代码的执行参数;

执行单元,用于根据所述执行参数,执行pcie卡的oprom代码。

可选地,所述确定单元,用于获取每一个pcie卡的oprom代码执行所需消耗的oprom空间容量;根据所述oprom空间容量,确定所述pcie卡的oprom代码的执行顺序。

第三方面,本发明实施例提供一种电子设备,包括:存储器、总线和接口标准pcie卡、处理器及存储在所述存储器并由所述处理器执行的计算机程序;

所述存储器,至少用于存储基本输入输出bios;

所述pcie卡,包括存储介质,且至少存储有只读存储oprom代码;

所述处理器,分别与所述存储器及所述pcie卡连接,至少用于通过执行所述计算机程序,实现前述一个或多个技术方案提供的信息处理方法。

本发明实施例提供的信息处理方法及电子设备,在执行pcie卡的oprom代码之前,会确定出单个pcie卡的oprom代码被执行所需要好的oprom空间容量,然后结合该容量空间确定出执行参数,按照执行参数执行不同的pcie卡的oprom代码,而非按照扫描pcie卡的顺序随机执行oprom代码。这样的话,可以优先执行消耗oprom空间容量小的pcie卡,这样可以确保执行最多的pcie卡,或者,优先执行必须执行的pcie卡的oprom代码,从而oprom代码达到预期效果,以进一步的确保pcie的初始化达到预期效果,提升用户体验。

附图说明

图1为本发明实施例提供的第一种信息处理方法的流程示意图;

图2为本发明实施例提供的第二种信息处理方法的流程示意图;

图3为本发明实施例提供的电子设备的结构示意图;

图4为本发明实施例提供的另一种电子设备的结构示意图;

图5为本发明实施例提供的第三种信息处理方法的流程示意图。

具体实施方式

以下结合说明书附图及具体实施例对本发明的技术方案做进一步的详细阐述。

如图1所示,本实施例提供一种信息处理方法,包括:

步骤s110:bios根据执行pcie卡的oprom代码所消耗的oprom空间容量,确定执行的pcie卡的oprom代码的执行参数;

步骤s120:根据所述执行参数,执行pcie卡的oprom代码。

本实施例提供的信息处理方法可应用于写入有bios并设置有多种pcie卡的设备中。

所述pcie卡可包括:网卡、显卡、总线适配卡及存储卡等至少其中之一。

所述网卡可包括:光纤网卡和/或电缆网卡,用于与其他设备的网络通信。

所述显卡,用于提供设备内主机和显示器之间的数据适配,例如,将主机提供的数字信号转换成显示器所需的模拟信号,以方便所述显示器根据所述模拟信息进行显示。

所述存储卡可包括:磁盘阵列(redundantarrayofindependentdisk,raid)卡,可用于存储。

所述总线适配卡可包括:主机总线适配器(hostbusadapter),可用于主机与外围设备的适配。

所述oprom空间容量可为:用于执行oprom代码的存储空间,例如,oprom代码执行所消耗的内存空间等。

在一些实施例中,在确定所述执行参数之前还包括:启动bios;bios在启动之后,bios根据执行pcie卡中oprom代码所消耗的oprom空间容量,确定执行参数。

在本发明实施例中所述执行参数可包括以下至少之一:

不同pcie卡的oprom代码的执行顺序;

允许执行的pcie卡的oprom代码;

禁止执行的pcie卡的oprom代码;

执行方式;

执行策略,其中,所述执行策略可包括:是否根据所消耗的oprom空间容量执行所述pcie卡的oprom代码,以及按何种顺序执行允许执行的的pcie卡的oprom代码等。

所述执行策略可包括:执行方式、执行顺序、允许执行和禁止执行的oprom代码中的一个或多个。

在步骤s110中确定单个pcie卡的oprom代码执行所消耗oprom空间容量,可包括:

从预定存储空间读取单个pcie卡的oprom代码执行所消耗oprom空间容量。

例如,所述电子设备可以根据单个pcie卡的oprom代码历史执行记录,确定出单个pci卡的oprom代码执行所消耗oprom空间容量。

又例如,电子设备在出厂之前,就在预定存储空间写入有不同类型的单个pcie卡的oprom代码执行所消耗oprom空间容量,设备可以根据其当前连接的pcie卡的类型,读取对应的所消耗oprom空间容量等。

通过oprom代码的执行,实现对应pcie卡的初始化,例如,配置对应pcie卡的初始状态,例如,接口的初始状态等。

具体的确定方式有多种,不局限于上述任意一种。

总之,在本实施例中所述bios会确定出执行参数,然后在步骤s120中会根据执行参数来执行各个pcie卡的oprom代码,而不会随机执行各个pcie卡的oprom代码,导致先执行消耗oprom空间容量大的pcie卡中的oprom代码,导致必须执行的pcie卡的oprom无法执行;或者,没有先执行消耗oprom空间容量小的pcie卡的oprom代码,进而导致被执行了oprom代码的pcie卡的个数少等达不到预期执行效果的问题。

在本实施例中,会不同pcie卡的oprom代码执行所消耗的oprom空间容量确定出执行参数,就可控制不同pcie卡的oprom代码的执行,从而达到预期的执行效果。

可选地,所述步骤s120可包括:

按照消耗的所述oprom空间容量的由大到小,依次执行对应的pcie卡的oprom代码。

不同的pcie卡的oprom执行所消耗的oprom空间容量是不一的。例如,pcie卡a和pcie卡b的oprom代码的执行,分别消耗的oprom空间容量为容量a和容量b;若容量a大于容量b,则先执行pcie卡b的oprom代码,在执行完pcie卡b的oprom代码之后,再有剩余的oprom容量再执行pcie卡a的oprom代码,这样可以确保电子设备所执行的oprom代码对应的pcie卡的张数最多,从而使得电子设备具备的功能最丰富。

进一步地,所述pcie卡包括:第一类pcie卡和不同于所述第一类pcie卡的第二类pcie卡;所述第一类pcie卡的oprom的执行参数不同,则消耗的oprom空间容量不同;所述步骤s120可包括:

优先执行所述第二类pcie卡的oprom代码;

在执行所述第二类pcie卡的oprom代码之后,利用oprom空间的剩余空间执行第一类pcie卡的oprom代码。

所述第二类pcie卡的oprom代码被执行时,不会因为执行参数的不同所消耗的oprom空间容量。

例如,对于raid等存储卡的执行参数,可包括:oprom代码部分执行和全部执行。而对于显卡等oprom代码可能必须全部执行。

在本实施例中,先执行第二类pcie卡的oprom代码,这样可以确保仅有单一执行参数;或者,不管以哪种执行参数所消耗的oprom代码的pcie卡的oprom代码先执行,然后就可以动态的根据当前剩余的oprom空间容量,确定出第一类pcie卡的执行参数。例如,对于raid,若当前剩余的oprom空间容量不足以执行其所有的oprom代码,则可以仅执行raid的部分oprom代码,这样的话相当于启动部分磁盘存储阵列。这样相对于直接先启动raid消耗大量oprom空间容量,导致其他pcie卡的oprom代码无法执行的问题,显然至少可以确保执行更多的pcie卡的oprom代码。

在一些实施例中,如图2所示,所述步骤s110还可包括:

步骤s111:获取每一个总线和接口标准pcie卡的只读存储器oprom代码执行所需消耗的oprom空间容量;

步骤s112:根据所述oprom空间容量,确定所述pcie卡的oprom代码的执行顺序;

所述步骤s120可包括步骤s121;所述步骤s121可如下:

所述bios根据所述执行顺序,执行各所述pcie卡的oprom代码。

这里的执行顺序可为各种顺序,例如,按照所消耗的oprom空间容量从小到大执行;又例如,按照所消耗oprom空间容量是否可变,优先执行所消耗oprom空间容量不可变的oprom代码,再执行所消耗oprom空间容量可变的oprom代码;再例如,先执行指定要执行的pcie卡的oprom代码之后,按照所消耗oprom空间容量从小到大执行未执行的pcie卡的oprom代码。

对应地,所述步骤s120可包括:所述bios根据所述执行顺序,执行各所述pcie卡的oprom代码。

可选地,所述步骤s110具体可包括:

获取所述pcie卡的oprom代码的执行方式。

在一些实施例中,可包括:

根据当前设备提供的总oprom空间容量,与所有pcie卡的oprom代码执行所消耗的总oprom空间容量之间的关系,确定是否需要按照单个pcie卡的oprom代码执行所消耗的oprom空间容量来确定执行方式。所述执行方式可包括:按特定顺序执行或随机执行。按特定顺序执行可包括:按照单个pcie卡的oprom代码执行所消耗的oprom空间容量,由小到大执行等。随机执行即为:不用按照特定顺序来执行各个pcie卡的oprom代码。

若设备提供的总oprom空间容量,大于所有pcie卡的oprom代码执行所消耗的总oprom空间容量,则可以采用随机执行方式。

所述步骤s120可包括:

当所述执行方式为第一执行方式时,根据pcie卡执行所消耗的oprom空间容量执行pcie卡的oprom代码。

在本实施例中,所述第一执行方式,可为按照特定顺序执行。

进一步地,所述步骤s120可包括:

当所述执行方式为第二执行方式时,按照bios设置选项或按照pcie卡连接到pci总线的顺序,执行各pcie卡的oprom代码。

在本实施例中所述第二执行方式可为:不会以单个pcie卡的oprom代码所消耗的oprom空间容量来顺序执行。所述第二执行方式可包括:前述随机执行,或者,与oprom空间容量无关的特定顺序来执行。例如,由于有的pcie卡需要先时候,有的pcie卡会后使用到,则可以优先执行需要先使用的pcie卡的oprom代码,再执行将稍后使用的pcie卡的oprom代码。

在一些实施例中,当前执行方式是所述第一执行方式还是第二执行方式,是可以根据用户指示确定的。例如,显示选择对话框,检测用户输入的作用于所述对话框的用户指示,然后基于用户指示确定是第一执行方式还是第二执行方式,此时,设备就不用自行确定选择第一执行方式,还是第二执行方式;这样可以满足用户需求。

在一些实施例中,所述方法还包括:

执行显卡的oprom代码;

所述步骤s120可包括:

在执行所述显卡的oprom代码,按照所消耗的oprom空间容量执行占用oprom空间的各pcie卡的oprom代码。

在本实施例中,所述显卡可为前述第二类pcie卡或者是oprom代码必须执行的pci卡。

在本实施例中为了设备的正常显示,再根据执行参数执行oprom代码之前,会先执行显卡的oprom代码。

如图3所示,本实施例提供一种电子设备,包括:

确定单元110,用于利用基本输入输出系统bios根据总线和接口标准pcie卡的可选只读存储oprom代码执行所消耗的oprom空间容量,确定执行的pcie卡的oprom代码的执行参数;

执行单元120,用于根据所述执行参数,执行pcie卡的oprom代码。

本实施例中所述确定单元110及执行单元120,均可对应于电子设备中的处理器;所述处理器可包括:中央处理器、微处理器、数字信号处理器、应用处理器、可编程阵列、或专用集成电路等。

总之,本实施例提供了一种电子设备,在执行pcie卡中的oprom代码之前,会先确定出执行参数;然后根据执行参数来执行对应的oprom代码,相对于随机执行或者按照设备的没有基于单个pcie卡所消耗的的oprom空间容量来执行带来的各种问题。

可选地,所述确定单元110,用于获取每一个pcie卡的oprom代码执行所需消耗的oprom空间容量;根据所述oprom空间容量,确定所述pcie卡的oprom代码的执行顺序。

在实施例中,所述执行参数可至少包括:执行顺序。后续执行单元120,可按照确定的执行顺序来执行各个pcie卡的oprom代码。

进一步地,所述执行单元120,具体用于按照消耗的所述oprom空间容量的由大到小,依次执行对应的pcie卡的oprom代码。

在一些实施例中,所述pcie卡包括:第一类pcie卡和不同于所述第一类pcie卡的第二类pcie卡;所述第一类pcie卡的oprom的执行参数不同,则消耗的oprom空间容量不同。

所述执行单元120,可用于优先执行所述第二类pcie卡的oprom代码;在执行所述第二类pcie卡的oprom代码之后,利用oprom空间的剩余空间执行第一类pcie卡的oprom代码。

所述确定单元110,可用于获取每一个pcie卡的oprom代码执行所需消耗的oprom空间容量;根据所述oprom空间容量,确定所述pcie卡的oprom代码的执行顺序。

在另一些实施例中,所述确定单元110,可用于获取所述pcie卡的oprom代码的执行方式;所述执行单元120,可用于当所述执行方式为第一执行方式时,根据pcie卡执行所消耗的oprom空间容量执行pcie卡的oprom代码。

此外,所述执行单元120,可用于当所述执行方式为第二执行方式时,按照bios设置选项或按照pcie卡连接到pci总线的顺序,执行各pcie卡的oprom代码。

在一些实施例中,所述执行单元120,具体用于执行显卡的oprom代码;并在执行所述显卡的oprom代码,按照所消耗的oprom空间容量执行占用oprom空间的各pcie卡的oprom代码。

如图4所示,本实施例提供一种电子设备,其特征在于,包括:存储器210、pcie卡220、处理器230及存储在所述存储器210并由所述处理器230执行的计算机程序;

所述存储器210,至少用于存储基本输入输出bios;

所述pcie卡220,可包括存储介质,且至少存储有只读存储oprom代码;所述pcie卡220的个数可为至少两个;

所述处理器230,分别与所述存储器210及所述pcie卡220连接,至少用于通过执行所述计算机程序,实现前述一个或多个技术方案提供的信息处理方法。

在本实施例中所述存储器210可包括:各种存储介质,所述存储介质存储有bios.

所述pcie卡220位于电子设备内,自身携带有部分存储介质,所述存储介质可用于存储oprom代码,以方便直接启动对应的pcie卡。

所述处理器230可以通过集成线路总线等与所述存储器及pcie卡建立连接。

所述处理器230可为中央处理器、微处理器、数字信号处理器、应用处理器、可编程阵列或专用集成电路等可以具有信息处理功能的处理器或处理芯片。

所述处理器230可以通过计算机程序等执行,实现前述一个或多个技术方案提供的信息处理方法。

在本发明实施例中,所述电子设备可为台式电脑、笔记本电脑、可穿戴式设备、手机、车载设备或者物联网终端等各种设备。

以下基于上述任意一个实施例提供几个具体示例:

示例1:

电子设备开机上电后启动bios,bios被设置需要执行oprom代码的条件下,先扫描pcie设备的oprom代码,并记录对应的所需oprom空间容量,然后按照所需oprom空间容量从大到小排序,之后按照排序的结果执行oprom代码,以初始化pcie设备。

bios自动优化不同pcie卡的oprom代码的执行顺序,最大化保证所有pcie外设的oprom代码被执行。

总之,bios扫描出所有需要执行oprom代码的pcie卡,并且分析记录对应的oprom代码执行所需oprom空间容量;

按照记录排序对应的pcie卡的顺序,然后执行对应pcie卡的oprom的代码。

示例2:

如图5所示,本示例提供一种oprom代码的执行方法,包括:

步骤1:设备上电开机;

步骤2:执行vag显卡的oprom代码;

步骤3:判断需优先执行的oprom代码的pcie卡,若是进入步骤4,若否进入步骤5:

步骤4:扫描pcie卡的oprom代码,并确定所需空间;

步骤5:扫描pcie卡的oprom代码;

步骤6:按所需空间大小进行排序;

步骤7:按照排序结果执行pcie卡的oprom代码,并进行对应pcie卡的初始化;

步骤8:按照扫描pci卡的顺序执行pcie的oprom代码,并进行pcie卡的初始化。

本发明实施例还提供一种计算机存储介质,所述计算机存储介质存储有计算机程序等计算机可执行代码,所述计算机可执行代码被执行后,能够执行前述一个或多个技术方案提供的信息处理方法。所述计算机存储介质可为各种类型的存储介质,可包括:光盘、移动硬盘或闪存等,可选为非瞬间存储介质。

在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。

上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。

另外,在本发明各实施例中的各功能单元可以全部集成在一个处理模块中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

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