一种BIOS日志收集方法及计算设备与流程

文档序号:36726488发布日期:2024-01-16 12:33阅读:21来源:国知局
一种BIOS日志收集方法及计算设备与流程

本技术涉及计算机,具体涉及一种bios日志收集方法及计算设备。


背景技术:

1、在基本输入/输出系统(basic input/output system,bios)引导计算设备开机的过程中,bios会对计算设备中的硬件设备进行扫描检测、设备初始化、资源分配与适配。若在引导过程中出现引导失败、系统宕机或者其他故障现象,往往需要bios启动过程中记录的bios日志对bios问题进行分析定位。

2、通过串口输出bios日志是业界中常用的方法,由于串口是一种低速数据传输接口,bios在通过串口输出日志数据时需要消耗大量时间,从而加长了系统启动时间,影响用户对产品的使用体验。因此,一般方法中,出于对系统安全和启动速度的考虑,在bios启动时不输出bios日志或输出少量简略的bios日志。

3、然而,在bios启动出现问题时,若无bios日志或只有简略的bios日志,难以准确定位bios问题。


技术实现思路

1、本技术实施例提供一种bios日志收集方法及计算设备,能够快速输出详细的bios日志,能够减小bios启动过程对系统启动时间的影响,并且在bios启动出现问题时能够让维护人员通过详细的bios日志更准确地定位bios问题。

2、本技术实施例第一方面提供一种bios日志收集方法,应用于计算设备的处理器,该方法包括:

3、在bios启动过程中,增强型串行外设接口(enhanced serial peripheralinterface,espi)初始化完成后,通过内存映射基板管理控制器接口(memory-mapped bmcinterface,mmbi)协议,将带外控制器的第一存储空间映射到处理器的内存地址空间中,其中该mmbi协议为基于该espi接口的数据传输协议;通过该内存地址空间,将bios日志写入该第一存储空间。

4、其中,串口的传输速率约为11kb/s,espi接口的传输速率理论可达23mb/s,espi接口的数据传输速度远快于串口。

5、本技术实施例中,由于mmbi协议为基于espi接口的数据传输协议,因此在bios启动过程中,espi接口初始化完成后,处理器可以通过mmbi协议将带外控制器的第一存储空间映射至处理器的内存地址空间;然后处理器可以通过该内存地址空间,将bios日志写入该第一存储空间。本技术实施例通过在bios启动过程中应用mmbi协议,将带外控制器的第一存储空间作为带外控制器和处理器的共享空间,使得处理器可以通过espi接口将详细的bios日志快速地输出至该第一存储空间,不仅不影响系统的启动时间,还可以在bios启动出现问题时,让维护人员通过该详细的bios日志更准确地定位bios问题。

6、在一种可能的实现中,在该将带外控制器的第一存储空间映射到处理器的内存地址空间中后,该方法还包括:初始化串口。

7、本技术实施例中,处理器在完成espi接口的初始化,将第一存储空间映射到处理器的内存地址空间后,在初始化串口时可以将对应的bios日志输出至第一存储空间。这样,本技术实施例至少可以收集到串口初始化以及串口初始化完成后的bios日志。

8、在一种可能的实现中,在该将带外控制器的第一存储空间映射到处理器的内存地址空间中后,该方法还包括:初始化内存。

9、本技术实施例中,处理器在完成espi接口的初始化,将第一存储空间映射到处理器的内存地址空间后,在初始化内存之前就可以将对应的bios日志输出至第一存储空间;这样,相较于将bios日志输出至内存的方案,本技术实施例可以至少收集到内存初始化的bios日志。

10、在一种可能的实现中,该第一存储空间包括第一缓存区和第二缓存区;该bios日志包括多条日志记录;该将bios日志写入该第一存储空间,包括:当该第一缓存区的可用空间足以缓存待写入的该日志记录时,将该待写入的日志记录写入该第一缓存区;当该第一缓存区的可用空间不足以缓存该待写入的日志记录时,将该待写入的日志记录写入该第二缓存区;向该带外控制器发送第一指令,以使得该带外控制器根据该第一指令将该第一缓存区中的该日志记录迁移至该带外控制器的第二存储空间。

11、本技术实施例中,通过将第一存储空间划分为第一缓存区和第二缓存区,处理器可以先将日志记录输出至其中一个缓存区,在该缓存区写满时更换缓存区进行日志记录的写入,并指示带外控制器迁移写满的缓存区中的日志记录;在这样的异步传输方案下,带外控制器无需实时同步数据,只需在接收指令时进行数据迁移,节约了带外控制器的处理资源,保证了带外控制器的工作稳定性。

12、在一种可能的实现中,该第一存储空间还包括头部空间,该头部空间包括写入标识;在该将bios日志写入该第一存储空间之前,该方法还包括:当该写入标识指示该bios日志的写入对象为该第一缓存区时,判断该第一缓存区的可用空间是否足够缓存该待写入的日志记录;当该第一缓存区的可用空间不足以缓存该待写入的日志记录时,修改该写入标识,修改后的该写入标识指示该写入对象为该第二缓存区;该将该待写入的日志记录写入该第二缓存区,包括:根据该修改后的写入标识,将该待写入的日志记录写入该第二缓存区。

13、本技术实施例中,通过在第一存储空间中设置头部空间和写入标识,以写入标识控制处理器输出日志记录的输出对象,在当前输出对象写满后再切换输出对象,可以使得带外控制器两次迁移日志记录的间隔更均衡,工作稳定性更高。

14、在一种可能的实现中,该第一存储空间为易失性存储器的存储空间,该第二存储空间为非易失性存储器的存储空间。

15、本技术实施例中,通过将带外控制器的非易失性存储器的存储空间作为第二存储空间,使得带外控制器能够将bios日志存储于非易失性存储器中,可以避免带外控制器发生故障等意外情况导致bios日志丢失。

16、在一种可能的实现中,在该将bios日志写入该第一存储空间之后,该方法还包括:向该带外控制器发送第二指令,以使得该带外控制器根据该第二指令将该第一存储空间中的日志记录迁移至该带外控制器的第二存储空间,并释放该第一存储空间。

17、本技术实施例中,在bios日志输出完毕后,处理器可以指示带外控制器将所有的日志记录迁移到第二存储空间中,并释放第一存储空间;这样,在避免因意外情况丢失bios日志的同时,还可以回收带外控制器的内存资源。

18、在一种可能的实现中,在该将bios日志写入该第一存储空间之前,该方法还包括:格式化该第一存储空间,格式化后的该第一存储空间包括头部空间、第一缓存区和第二缓存区。

19、本技术实施例中,通过将第一存储空间格式化为包括头部空间、第一缓存区和第二缓存区,使得处理器能够通过异步传输的方式向带外控制器写入bios日志。

20、在一种可能的实现中,该第一存储空间的大小为64kb。

21、本技术实施例中,通过将第一存储空间设置为目前mmbi协议支持映射的单个带外控制器的内存空间的最大值,可以尽可能地提高第一存储空间所能缓存的日志记录的数据量,减少带外控制器迁移数据的次数,提高带外控制器的工作稳定性。

22、在一种可能的实现中,该第一存储空间包括第一子空间和第二子空间,该第一子空间和该第二子空间的大小均为64kb;其中,该第一子空间包括第一缓存区和头部空间,该第二子空间包括第二缓存区。

23、本技术实施例中,将第一缓存区和第二缓存区的大小设置为目前mmbi协议支持映射的单个带外控制器的内存空间的最大值64kb,可以减少带外控制器进行数据迁移操作的次数,减少对带外控制器的计算资源的占用,提高带外控制器工作的稳定性。

24、本技术实施例第二方面提供一种计算设备,该设备包括处理器、增强型串行外设接口espi和带外控制器,该处理器和该带外控制器通过该espi接口连接;该处理器用于在执行bios启动程序的过程中,该espi接口初始化完成后,通过内存映射基板管理控制器接口mmbi协议,将该带外控制器的第一存储空间映射到该处理器的内存地址空间中,其中该mmbi协议为基于该espi接口的数据传输协议;该处理器还用于通过该内存地址空间,将bios日志写入该第一存储空间。

25、在一种可能的实现中,该第一存储空间包括第一缓存区和第二缓存区;该bios日志包括多条日志记录;当该第一缓存区的可用空间足以缓存待写入的该日志记录时,该处理器具体用于将该待写入的日志记录写入该第一缓存区;当该第一缓存区的可用空间不足以缓存该待写入的日志记录时,该处理器具体用于将该待写入的日志记录写入该第二缓存区;并向该带外控制器发送第一指令,以使得该带外控制器根据该第一指令将该第一缓存区中的该日志记录迁移至该带外控制器的第二存储空间。

26、在一种可能的实现中,在该将bios日志写入该第一存储空间之前,且在该espi接口初始化完成后,该方法还包括:初始化串口。

27、在一种可能的实现中,在该将bios日志写入该第一存储空间之前,且在该espi接口初始化完成后,该方法还包括:初始化内存。

28、在一种可能的实现中,该第一存储空间还包括头部空间,该头部空间包括写入标识;在该将bios日志写入该第一存储空间之前,该方法还包括:当该写入标识指示该bios日志的写入对象为该第一缓存区时,判断该第一缓存区的可用空间是否足够缓存该待写入的日志记录;当该第一缓存区的可用空间不足以缓存该待写入的日志记录时,修改该写入标识,修改后的该写入标识指示该写入对象为该第二缓存区;该将该待写入的日志记录写入该第二缓存区,包括:根据该修改后的写入标识,将该待写入的日志记录写入该第二缓存区。

29、在一种可能的实现中,该第一存储空间为易失性存储器的存储空间,该第二存储空间为非易失性存储器的存储空间。

30、在一种可能的实现中,在该将bios日志写入该第一存储空间之后,该方法还包括:向该带外控制器发送第二指令,以使得该带外控制器根据该第二指令将该第一存储空间中的日志记录迁移至该带外控制器的第二存储空间,并释放该第一存储空间。

31、在一种可能的实现中,在该将bios日志写入该第一存储空间之前,该方法还包括:格式化该第一存储空间,格式化后的该第一存储空间包括头部空间、第一缓存区和第二缓存区。

32、在一种可能的实现中,该第一存储空间的大小为64kb。

33、在一种可能的实现中,该第一存储空间包括第一子空间和第二子空间,该第一子空间和该第二子空间的大小均为64kb;其中,该第一子空间包括第一缓存区和头部空间,该第二子空间包括第二缓存区。

34、在本技术实施例第三方面还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机执行指令,当计算设备的至少一个处理器执行该计算机执行指令时,计算设备执行上述第一方面所述的方法。

35、在本技术实施例第四方面还提供一种计算机程序产品,该计算机程序产品包括计算机执行指令,该计算机执行指令存储在计算机可读存储介质中;计算设备的至少一个处理器可以从计算机可读存储介质读取该计算机执行指令,至少一个处理器执行该计算机执行指令使得计算设备执行上述第一方面所述的方法。

36、应理解,上述各个方面的有益效果可以相互参考。

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