ImageVerifierCode 换一换
格式:PDF , 页数:25 ,大小:8.28MB ,
资源ID:1566247      下载积分:30 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zhuanlichaxun.net/d-1566247.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(一种支持多任务的BIOS运行方法及BIOS芯片.pdf)为本站会员(大师****2)主动上传,专利查询网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知专利查询网(发送邮件至2870692013@qq.com或直接QQ联系客服),我们立即给予删除!

一种支持多任务的BIOS运行方法及BIOS芯片.pdf

1、(10)申请公布号 CN 103150208 A(43)申请公布日 2013.06.12CN103150208A*CN103150208A*(21)申请号 201310095193.9(22)申请日 2013.03.22G06F 9/46(2006.01)G06F 9/50(2006.01)(71)申请人合肥联宝信息技术有限公司地址 230601 安徽省合肥市经济技术开发区翠微路6号海恒大厦四楼418号(72)发明人郑红文(74)专利代理机构北京集佳知识产权代理有限公司 11227代理人王宝筠(54) 发明名称一种支持多任务的BIOS运行方法及BIOS芯片(57) 摘要本发明实施例提供一种支持

2、多任务的BIOS运行方法及BIOS芯片,其中方法包括:在BIOS运行过程中,确定当前BIOS运行阶段对应的调度器;使用所述调度器调取与当前BIOS运行阶段对应的驱动Driver调用程序;使用所述Driver调用程序,将当前BIOS运行阶段中符合预设条件的Driver放入多核CPU,在多个CPU核心上运行多个当前BIOS运行阶段对应的Driver。本发明实施例实现了在BIOS环境下的多任务运行的支持。(51)Int.Cl.权利要求书4页 说明书15页 附图5页(19)中华人民共和国国家知识产权局(12)发明专利申请权利要求书4页 说明书15页 附图5页(10)申请公布号 CN 103150208

3、 ACN 103150208 A1/4页21.一种支持多任务的BIOS运行方法,其特征在于,包括:在BIOS运行过程中,确定当前BIOS运行阶段对应的调度器;使用所述调度器调取与当前BIOS运行阶段对应的驱动Driver调用程序;使用所述Driver调用程序,将当前BIOS运行阶段中符合预设条件的Driver放入多核CPU,在多个CPU核心上运行多个当前BIOS运行阶段对应的Driver。2.根据权利要求1所述的方法,其特征在于,当前BIOS运行阶段为PEI阶段;所述确定当前BIOS运行阶段对应的调度器包括:确定PEI阶段对应的PEI调度器Dispatcher;所述使用所述调度器调取与当前BI

4、OS运行阶段对应的Driver调用程序包括:使用所述PEI Dispatcher调取PEI Driver调用接口PPI;所述使用所述Driver调用程序,将当前BIOS运行阶段中符合预设条件的Driver放入多核CPU包括:使用所述PPI将PEI阶段中符合预设条件的PEI Driver放入多核CPU。3.根据权利要求2所述的方法,其特征在于,所述使用所述PPI将PEI阶段中符合预设条件的PPI Driver放入多核CPU包括:通过PEI服务列表获取待运行PEI Driver的标识Guid;将所述Guid对应的待运行PEI Driver中符合预设条件的PEI Driver放入多核CPU,在多个C

5、PU核心上运行符合预设条件的PEI Driver,得到运行的PEI Driver的任务身份标识ID,向所述PEI服务列表返回所述任务ID。4.根据权利要求3所述的方法,在向PEI服务列表返回所述任务ID时还包括:向PEI服务列表返回所述任务ID对应的PEI Driver在多核CPU上的运行状态;所述方法还包括:通过所述PEI服务列表获取运行的PEI Driver的任务ID,获取所述任务ID中指定任务ID对应的PEI Driver的运行状态;或,对所述任务ID中指定任务ID对应的PEI Driver的运行状态进行控制,在所述多核CPU调整所述指定任务ID对应的PEI Driver的运行状态后,向

6、所述PEI服务列表返回所述指定任务ID对应的PEI Driver调整后的运行状态;或,通过所述PEI服务列表获取当前运行的PEI Driver的任务列表,所述任务列表包括放置在多核CPU上的PEI Driver的任务ID及对应的任务运行状态,在指定的缓冲区缓冲所述任务列表。5.根据权利要求1所述的方法,其特征在于,当前BIOS运行阶段为DXE阶段;所述确定当前BIOS运行阶段对应的调度器包括:确定DXE阶段对应的DXE调度器Dispatcher;所述使用所述调度器调取与当前BIOS运行阶段对应的Driver调用程序包括:使用所述DXE Dispatcher调取DXE Driver调用协议Pro

7、tocol;所述使用所述Driver调用程序,将当前BIOS运行阶段中符合预设条件的Driver放入多核CPU包括:使用所述Protocol将DXE阶段符合预设条的DXE Driver放入多核CPU。6.根据权利要求5所述的方法,其特征在于,所述使用所述Protocol将DXE阶段符合预设条的DXE Driver放入多核CPU包括:获取待运行DXE Driver的标识Guid;权 利 要 求 书CN 103150208 A2/4页3将所述Guid对应的待运行DXE Driver中符合预设条件的DXE Driver放入多核CPU,在多个CPU核心上运行符合预设条件的DXE Drive,得到运行的

8、DXE Driver的任务身份标识ID,返回所述任务ID。7.根据权利要求6所述的方法,其特征在于,在返回所述任务ID的同时还包括:返回所述任务ID对应的DXE Driver在多核CPU上的运行状态;所述方法还包括:获取所述任务ID中指定任务ID对应的DXE Driver的运行状态;或,对所述任务ID中指定任务ID对应的DXE Driver的运行状态进行控制,在所述多核CPU调整所述指定任务ID对应的DXE Driver的运行状态后,返回所述指定任务ID对应的DXE Driver调整后的运行状态;或,获取运行的DXE Driver的任务列表,所述任务列表包括放置在多核CPU上的DXE Driv

9、er的任务ID及对应的任务运行状态,在指定的缓冲区缓冲所述任务列表。8.根据权利要求1至7任一项所述的方法,其特征在于,所述符合预设条件的Driver包括:与预置的BIOS通知任务表中设定的,在当前BIOS运行阶段放入多核CPU的Driver对应的Driver,所述BIOS通知任务表携带有各BIOS运行阶段需要放入多核CPU的Driver信息;或,当前BIOS运行阶段全部的Driver。9.根据权利要求1至7任一项所述的方法,其特征在于,还包括:利用BSP通过高级可编程中断控制器APIC总线向多核CPU广播启动内部处理器中断SIPI信息,以初始化多核CPU的各核心。10.一种BIOS芯片,其特

10、征在于,包括:调度器确定模块,与所述调度器确定模块相连的程序调用模块,与所述程序调用模块相连的任务分配模块;所述调度器确定模块,用于在BIOS运行过程中,确定当前BIOS运行阶段对应的调度器;所述程序调用模块,用于使用所述调度器确定模块所确定的调度器,调取与当前BIOS运行阶段对应的驱动Driver调用程序;所述任务分配模块,用于使用所述Driver调用程序,将当前BIOS运行阶段中符合预设条件的Driver放入多核CPU,在多个CPU核心上运行多个当前BIOS运行阶段对应的Driver。11.根据权利要求10所述的BIOS芯片,其特征在于,所述调度器确定模块包括:第一调度器确定单元,用于在当

11、前BIOS运行阶段为PEI阶段时,确定PEI阶段对应的PEI调度器Dispatcher;所述程序调用模块包括:第一程序调用单元,用于在当前BIOS运行阶段为PEI阶段时,使用所述第一调度器确定单元确定的PEI Dispatcher调取PEI Driver调用接口PPI;所述任务分配模块包括:第一任务分配单元,用于在当前BIOS运行阶段为PEI阶段时,使用所述PPI将PEI阶段中符合预设条件的PEI Driver放入多核CPU。12.根据权利要求11所述的BIOS芯片,其特征在于,所述第一任务分配单元包括:第一待运行任务标识获取子单元,用于通过PEI服务列表获取待运行PEIDriver的标权 利

12、 要 求 书CN 103150208 A3/4页4识Guid;第一任务放置子单元,用于将所述Guid对应的待运行PEI Driver中符合预设条件的PEI Driver放入多核CPU,在多个CPU核心上运行符合预设条件的PEI Driver;第一运行任务标识反馈子单元,用于得到运行的PEI Driver的任务标识ID,向所述PEI服务列表返回所述任务ID。13.根据权利要求12所述的BIOS芯片,其特征在于,还包括:第一任务运行状态反馈模块,用于在所述第一运行任务标识反馈子单元在向PEI服务列表返回所述任务ID时,向PEI服务列表返回所述任务ID对应的PEI Driver在多核CPU上的运行状

13、态;第一任务状态获取模块,用于通过所述PEI服务列表获取运行的PEI Driver的任务ID,获取所述任务ID中指定任务ID对应的PEI Driver的运行状态;第一任务状态调整模块,用于对所述任务ID中指定任务ID对应的PEI Driver的运行状态进行控制,在所述多核CPU调整所述指定任务ID对应的PEI Driver的运行状态后,向所述PEI服务列表返回所述指定任务ID对应的PEI Driver调整后的运行状态;第一任务列表确定模块,用于通过所述PEI服务列表获取当前运行的PEI Driver的任务列表,所述任务列表包括放置在多核CPU上的PEI Driver的任务ID及对应的任务运行状

14、态,在指定的缓冲区缓冲所述任务列表。14.根据权利要求10所述的BIOS芯片,其特征在于,所述调度器确定模块包括:第二调度器确定单元,用于在当前BIOS运行阶段为DXE阶段时,确定DXE阶段对应的DXE调度器Dispatcher;所述程序调用模块包括:第二程序调用单元,用于在当前BIOS运行阶段为DXE阶段时,使用所述第二调度器确定单元所确定的DXE Dispatcher调取DXE Driver调用协议Protocol;所述任务分配模块包括:第二任务分配单元,用于在当前BIOS运行阶段为DXE阶段时,使用所述Protocol将DXE阶段符合预设条的DXE Driver放入多核CPU。15.根据

15、权利要求14所述的BIOS芯片,其特征在于,所述第二任务分配单元包括:第二待运行任务标识获取子单元,用于获取待运行DXE Driver的标识Guid;第二任务放置子单元,用于将所述Guid对应的待运行DXE Driver中符合预设条件的DXE Driver放入多核CPU,在多个CPU核心上运行符合预设条件的DXE Drive;第二运行任务标识反馈子单元,用于得到运行的DXE Driver的任务ID,返回所述任务ID。16.根据权利要求15所述的BIOS芯片,其特征在于,还包括:第二任务运行状态反馈模块,用于在所述第二运行任务标识反馈子单元返回所述任务ID时,返回所述任务ID对应的DXE Dri

16、ver在多核CPU上的运行状态;第二任务状态获取模块,用于获取所述任务ID中指定任务ID对应的DXE Driver的运行状态;第二任务状态调整模块,用于对所述任务ID中指定任务ID对应的DXE Driver的运行状态进行控制,在所述多核CPU调整所述指定任务ID对应的DXE Driver的运行状态后,返权 利 要 求 书CN 103150208 A4/4页5回所述指定任务ID对应的DXE Driver调整后的运行状态;第二任务列表确定模块,用于获取运行的DXE Driver的任务列表,所述任务列表包括放置在多核CPU上的DXE Driver的任务ID及对应的任务运行状态,在指定的缓冲区缓冲所述

17、任务列表。17.根据权利要求10至16任一项所述的BIOS芯片,其特征在于,还包括:初始化模块,用于利用BSP通过高级可编程中断控制器APIC总线向多核CPU广播启动内部处理器中断SIPI信息,以初始化多核CPU的各核心。权 利 要 求 书CN 103150208 A1/15页6一种支持多任务的 BIOS 运行方法及 BIOS 芯片技术领域0001 本发明涉及计算机通信技术领域,更具体地说,涉及一种支持多任务的BIOS(Basic Input Output System,基本输入输出系统)运行方法及BIOS芯片。背景技术0002 BIOS是一组固化到计算机内主板上一个ROM(Read-Only

18、 Memory,只读内存)芯片上的程序,它保存着计算机最重要的基本输入输出的程序、系统设置信息、开机后自检程序和系统自启动程序;其主要功能是为计算机提供最底层的、最直接的硬件设置和控制。通常情况下,BIOS是在计算机开机的时候运行,在计算机开机时,BIOS将进行计算机的自检,自检完成后,BIOS调入开机启动程序,通过开机启动程序,将计算机的控制权交由计算机的操作系统。0003 目前,BIOS的运行过程主要分为四个阶段:SEC(Security,安全启动阶段),PEI(Pre EFI Initialization Environment,早期EFI初始化阶段),DXE(Driver Execut

19、ion Environment,驱动执行阶段)和RT(Run Time OS,运行阶段)。发明人在实现本发明的过程中发现:现有的BIOS只能运行在BSP(board supported package,板极支持包)上,即上述的SEC,PEI,DXE和RT这四个阶段均只能在BSP上运行,这使得无论计算机系统有多少个CPU,都无法在BIOS环境下支持多任务的运行,使得BIOS运行过程中的任务处理效率大大降低。发明内容0004 有鉴于此,本发明实施例提供一种支持多任务的BIOS运行方法及BIOS芯片,以解决现有的BIOS只能运行在BSP上,而造成得在BIOS环境下无法支持多任务运行的问题。0005

20、为实现上述目的,本发明实施例提供如下技术方案:0006 一种支持多任务的BIOS运行方法,包括:0007 在BIOS运行过程中,确定当前BIOS运行阶段对应的调度器;0008 使用所述调度器调取与当前BIOS运行阶段对应的驱动Driver调用程序;0009 使用所述Driver调用程序,将当前BIOS运行阶段中符合预设条件的Driver放入多核CPU,在多个CPU核心上运行多个当前BIOS运行阶段对应的Driver。0010 本发明实施例还提供一种BIOS芯片,包括:调度器确定模块,与所述调度器确定模块相连的程序调用模块,与所述程序调用模块相连的任务分配模块;0011 所述调度器确定模块,用于

21、在BIOS运行过程中,确定当前BIOS运行阶段对应的调度器;0012 所述程序调用模块,用于使用所述调度器确定模块所确定的调度器,调取与当前BIOS运行阶段对应的驱动Driver调用程序;0013 所述任务分配模块,用于使用所述Driver调用程序,将当前BIOS运行阶段中符合预设条件的Driver放入多核CPU,在多个CPU核心上运行多个当前BIOS运行阶段对应的说 明 书CN 103150208 A2/15页7Driver。0014 基于上述技术方案,本发明实施例提供的支持多任务的BIOS运行方法,在不同的BIOS运行阶段设置与该BIOS运行阶段对应的调度器,使用所述调度器调取与当前BIO

22、S运行阶段对应的Driver调用程序,通过Driver调用程序所起到的Driver与多核CPU的交互作用,使用所述Driver调用程序将当前BIOS运行阶段中符合预设条件的Driver放入多核CPU,在多个CPU核心上运行多个当前BIOS运行阶段对应的Driver;本发明实施例实现了在多核CPU上运行BIOS的目的,解决了现有的BIOS只能运行在BSP上,而造成得在BIOS环境下无法支持多任务运行的问题,实现了在BIOS环境下的多任务运行的支持,提高了BIOS运行过程中的任务处理效率。附图说明0015 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用

23、的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。0016 图1为本发明实施例提供的支持多任务的BIOS运行方法的流程图;0017 图2为本发明实施例提供的在多个CPU核心上运行多个Drive的示意图;0018 图3为本发明实施例提供的一种支持多任务的BIOS运行方法的另一流程图;0019 图4为本发明实施例提供的支持多任务的BIOS运行方法的又一流程图;0020 图5为本发明实施例提供的一种支持多任务的BIOS运行方法的再一流程图;0021 图6为本发明实施例提供的支持多任务的B

24、IOS运行方法的再又一流程图;0022 图7为本发明实施例提供的进行多核CPU初始化的示意图;0023 图8为本发明实施例提供的BIOS芯片的结构框图;0024 图9为本发明实施例提供的BIOS芯片的另一结构框图;0025 图10为本发明实施例提供的第一任务分配单元的结构框图;0026 图11为本发明实施例提供的BIOS芯片的又一结构框图;0027 图12为本发明实施例提供的BIOS芯片的再一结构框图;0028 图13为本发明实施例提供的第二任务分配单元的结构框图;0029 图14为本发明实施例提供的BIOS芯片的再又一结构框图;0030 图15为本发明实施例提供的BIOS芯片的再另一结构框图

25、。具体实施方式0031 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。0032 图1为本发明实施例提供的支持多任务的BIOS运行方法的流程图,参照图1,该方法可以包括:0033 步骤S100、在BIOS运行过程中,确定当前BIOS运行阶段对应的调度器;说 明 书CN 103150208 A3/15页80034 本发明实施例中可在各个BIOS运行阶段均设置对应的调度器,如可在PEI阶段

26、设置对应的调度器,DXE阶段设置对应的调度器等;所述调度器用于调取与当前BIOS运行阶段对应的Driver(驱动)调用程序。0035 步骤S110、使用所述调度器调取与当前BIOS运行阶段对应的Driver调用程序;0036 本发明实施例中,Driver调用程序是多核CPU与当前BIOS运行阶段对应的Driver的交互桥梁,起到将Driver放入多核CPU的作用;Driver调用程序可以是Driver与多核CPU之间的一个调用接口,也可以是一个调用协议,具体的Driver调用程序的设置可视不同的BIOS运行阶段的Driver,与多核CPU的交互方式而改变,并没有固定的限制。0037 步骤S12

27、0、使用所述Driver调用程序,将当前BIOS运行阶段中符合预设条件的Driver放入多核CPU,在多个CPU核心上运行多个当前BIOS运行阶段对应的Driver。0038 符合预设条件的Driver可以是当前BIOS运行阶段对应的全部Driver,也可以是预先设置的需要放入多核CPU的Driver。0039 可选的,本发明实施例可设置BIOS Post Task Table(BIOS通知任务表),在BIOS通知任务表中设置各BIOS运行阶段需要放入多核CPU的Driver信息,如可在BIOS通知任务表中设置PEI阶段需要放入多核CPU的Driver信息,在BIOS通知任务表中设置DXE阶段

28、需要放入多核CPU的Driver信息等。可选的,本发明实施例中的BIOS通知任务表可以是静态的Driver分配策略,BIOS通知任务表可在BIOS运行之初就开始调用,在BIOS运行过程中BIOS通知任务表中设置的信息不可变更,只有在非BIOS运行阶段,才可进行BIOS通知任务表中的信息更新;可选的,本发明实施例中的BIOS通知任务表也可以是动态的Driver分配策略,可在BIOS运行过程中对需要放入多核CPU中的Driver进行调整。0040 显然,还可设置其他的Driver分配规则,将符合预设条件的Driver放入多核CPU中,如将信息量较大(如信息量达到一定的阈值)的Driver放入多核C

29、PU中,将信息量较小的Driver依照现有技术进行处理,具体的Driver分配规则可视实际应用情况进行设置,本发明实施例不作固定限制。0041 多核CPU具有多个核心,本发明实施例优选的在多个CPU核心上运行多个Drive的方式可以是:一个CPU核心同一时刻仅允许运行一个Drive,允许多个CPU核心同时运行多个Drive,可参照图2示出的在多个CPU核心上运行多个Drive的示意图,同一时刻可同时运行多个Driver在多个CPU核心上,其中一个AP表示一个CPU核心。0042 本发明实施例提供的支持多任务的BIOS运行方法,在不同的BIOS运行阶段设置与该BIOS运行阶段对应的调度器,使用所

30、述调度器调取与当前BIOS运行阶段对应的Driver调用程序,通过Driver调用程序所起到的Driver与多核CPU的交互作用,使用所述Driver调用程序将当前BIOS运行阶段中符合预设条件的Driver放入多核CPU,在多个CPU核心上运行多个当前BIOS运行阶段对应的Driver;本发明实施例实现了在多核CPU上运行BIOS的目的,解决了现有的BIOS只能运行在BSP上,而造成得在BIOS环境下无法支持多任务运行的问题,实现了在BIOS环境下的多任务运行的支持,提高了BIOS运行过程中的任务处理效率。0043 前文已述,BIOS的运行过程主要分为四个阶段:SEC,PEI,DXE和RT。

31、显然,本发明实施例可仅在其中的一个阶段实行图1所示方法,实现该阶段的多任务支持;也可在全部的四个阶段均实行图1所示方法,实现BIOS运行过程中全阶段的多任务支持。即根据实际说 明 书CN 103150208 A4/15页9的使用情况,本发明实施例可设置SEC,PEI,DXE和RT中的至少一个阶段实行图1所示方法,实现该阶段的多任务支持。由于在BIOS运行过程中,PEI和DXE阶段的任务数量较多,且较为复杂,因此下文着重对PEI和DXE阶段所进行的BIOS运行过程做具体描述。值得注意的是,通过下文的描述,本领域技术人员可知悉SEC和RT阶段对应的BIOS运行过程,因此本发明对于SEC和RT阶段的

32、对应的BIOS运行过程不再作赘述。0044 可选的,本发明实施例可在PEI阶段实行多任务支持。图3为本发明实施例提供的一种支持多任务的BIOS运行方法的另一流程图,参照图3,该方法可以包括:0045 步骤S200、在BIOS运行过程的PEI阶段,确定PEI阶段对应的PEIDispatcher(调度器);0046 步骤S210、使用所述PEI Dispatcher调取PEI Driver调用接口(PPI);0047 本发明实施例中PPI表示PEIM(Pre-EFI Initialization Module,早期EFI初始化模块)-to-PEIM Interface(PPI),是PEI driv

33、er的调用接口,供其它PEIDriver调用。PPI是PEI drive与多核CPU之间的交互桥梁,用于将PEI Driver调入多核CPU中。0048 步骤S220、使用所述PPI将PEI阶段中符合预设条件的PPI Driver放入多核CPU,在多个CPU核心上运行多个PEI Driver。0049 可选的,本发明实施例可设置PEI服务列表,用于记录待运行的PEI Driver的信息,不同的待运行的PEI Driver可以PEI Driver Guid(标识)进行区分,PEI服务列表可记录不同的PEI Driver Guid。0050 在执行步骤S220时,可通过PEI服务列表获取待运行PE

34、I Driver的Guid,从而可判定所获取的Guid对应的待运行PEI Driver中符合预设条件的PEI Driver(如采用BIOS通知任务表确定符合预设条件的PEI Driver,可选的,可在BIOS通知任务表中设置需要放入多核CPU的PEI Driver的Guid信息,从而通过PEI服务列表中的Guid信息与BIOS通知任务表中的Guid信息的对应度,确定符合预设条件的PEI Driver),将符合预设条件的PEI Driver放入多核CPU,在多个CPU核心上运行符合预设条件的PEI Driver。可选的,为了将待运行的PEI Driver与已运行的PEI Driver进行区分,可

35、为已在多核CPU上运行的PEI Driver分配任务ID(身份标识),通过ID与Guid的差别进行待运行的PEI Driver与已运行的PEI Driver的区分。可选的,为已运行的PEIDriver分配任务ID后,可将任务ID返回至PEI服务列表中,通过PEI服务列表对任务ID进行记录。至此,PEI服务列表中可同时记录待运行PEI Driver的Guid,和已运行PEI Driver的任务ID。0051 可选的,在向PEI服务列表返回任务ID时,还可向PEI服务列表返回任务ID对应的PEI Driver在多核CPU上的运行状态,在PEI服务列表中记录任务ID与对应的PEI Driver的运行

36、状态的对应关系。值得注意的是,返回任务运行状态的时间并无特殊要求,其可与任务ID一同返回,也可晚于任务ID的返回时间。0052 在将PEI Driver放入多核CPU后,本发明实施例还可实现任务状态的查看与任务运行状态的控制调整操作,图4示出了本发明实施例提供的支持多任务的BIOS运行方法的又一流程图,该流程运行在PEI Driver放入多核CPU之后,该流程可以包括:0053 步骤S221、向PEI服务列表返回任务ID,及任务ID对应的PEI Driver的运行状态;0054 步骤S222、通过PEI服务列表获取运行的PEI Driver的任务ID,获取所述任务ID说 明 书CN 10315

37、0208 A5/15页10中指定任务ID对应的PEI Driver的运行状态;0055 通过步骤S222可查看指定任务ID对应的PEI Driver的运行状态,使用户实时掌握PEI阶段的运行状况。0056 步骤S223、对所述任务ID中指定任务ID对应的PEI Driver的运行状态进行控制,在所述多核CPU调整所述指定任务ID对应的PEI Driver的运行状态后,向所述PEI服务列表返回所述指定任务ID对应的PEI Driver调整后的运行状态;0057 通过S223可对指定任务ID对应的PEI Driver的运行状态进行控制调整,如调整PEI Driver的运行状态为运行,停止,休眠等。

38、可选的,可通过PEI服务列表获取运行的PEI Driver的任务ID,从而进行指定任务ID对应的PEIDriver调整状态的确定,在确定了指定任务ID对应的PEI Driver调整后的运行状态后,可向多核CPU发送指定任务ID对应的PEI Driver的运行状态调整指令,在该PEI Driver运行的CPU核心上进行运行状态的调整,在调整完成后,向PEI服务列表返回指定任务ID对应的PEI Driver调整后的运行状态,以示PEI Driver的运行状态调整过程顺利完成。0058 步骤S224、通过所述PEI服务列表获取当前运行的PEI Driver的任务列表,在指定的缓冲区缓冲所述任务列表。

39、0059 所述任务列表包括放置在多核CPU上的PEI Driver的任务ID及对应的任务运行状态。前文已述,本发明实施例的PEI服务列表可设置待运行PEI Driver的Guid信息,也可设置已运行的PEI Driver的任务ID,及对应的PEI Driver的运行状态(可包括调整后的PEI Driver的运行状态);为了使用户更好的知悉PEI Driver的任务运行情况,同从PEI服务列表中分离出当前运行的PEIDriver的任务列表,通过该任务列表记录放置在多核CPU上的PEI Driver的任务ID及对应的任务运行状态,并在指定的缓冲区缓冲该任务列表,以备用户的随时调用。0060 值得注

40、意的是,步骤S222,步骤S223,步骤S224为不同的处理流程,三者之间并不存在步骤的先后顺序关系。显然,本发明实施例也可只施行步骤S222,步骤S223,步骤S224中的至少一个步骤,具体可视实际使用情况而定。0061 本发明实施例中PPI是PEI Driver与多核CPU之间的交互桥梁,因此PPI可表示为EFI(Extensible Firmware Interface,可扩展固件接口)_PEI_MP(Multi Core Processor 多核处理器) PPI,下文同时示出了PPI的一些参数设置,可与上文关于PEI阶段BIOS运行过程的描述相结合;值得注意的是,下文示出的一些参数可视具体使用情况做必要的删减。0062 EFI_PEI_MP_PPI0063 描述:1、提供多任务服务,将PEI driver运行到不同CPU核上;2、对多任务进行控制,凋整任务运行状态为运行,停止,休眠;3、返回当前运行多任务列表。0064 多任务状态定义:0065 说 明 书CN 103150208 A10

copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1