基于多核通信的日志管理方法、系统及电子设备与流程

文档序号:31348117发布日期:2022-08-31 12:08阅读:112来源:国知局
基于多核通信的日志管理方法、系统及电子设备与流程

1.本发明涉及信息处理领域,尤其涉及一种基于多核通信的日志管理方法、系统及电子设备。


背景技术:

2.目前,针对多核环境下的日志管理系统常用方案为:每个核将自身记录的日志信息进行打包处理,加入时间戳、文件和核信息等标识信息,然后将日志信息存储在共享内存区域,由主核从共享内存区域读取各个次核所存储的日志信息。
3.上述方案存在以下缺点,多个次核同时向共享内存区域进行日志信息写入的时候,需要等待其他次核对共享内存操作锁进行释放之后,才能向共享内存区域写入日志信息。并且,次核数量越多,出现等待共享内存操作锁的频率就越高,导致日志管理效率就会越低。


技术实现要素:

4.本发明的目的是提供一种基于多核通信的日志管理方法、系统及电子设备,用于解决现有技术中存在的多个核同时向共享内存区域进行日志信息写入的时候,出现等待共享内存操作锁的频率很高,会导致日志管理效率低的技术问题。
5.为了实现上述发明目的,本发明实施例第一方面提供基于多核通信的日志管理方法,应用于多核通信日志系统中,所述系统包括主核和多个次核,所述方法包括:所述主核接收所述多个次核利用核间通信通道向所述主核上报的日志信息;所述主核根据不同的次核,将接收到的日志信息存储至不同的次核对应的不同的文件中。
6.可选的,所述方法还包括:所述主核根据系统指令或用户指令对指定的次核进行日志配置;所述主核利用所述核间通信通道将日志配置下发至所述指定的次核。
7.可选的,所述日志配置包括日志等级配置、上报周期配置、最大上报信息长度配置和上报开关配置;所述日志等级配置中可配置的日志等级类型包括调试、跟踪、信息、警告、错误和严重错误中的一种或多种;所述上报周期配置是用于配置所述指定的次核按照指定的时间周期进行日志信息上报至所述主核;所述最大上报信息长度配置是用于配置所述指定的次核按照不超过指定的数据长度进行日志信息上报至所述主核;所述上报开关配置用于配置是否将所述指定的次核的日志信息上报至所述主核。
8.本发明实施例第二方面提供基于多核通信的日志管理方法,应用于多核通信日志系统中,所述系统包括主核和多个次核,包括:所述次核获取各个核内程序产生的日志信息,并将所述日志信息存入对应的缓冲区;所述次核定时定量的读取所述缓冲区的日志信息,并判断是否满足日志信息上报
的条件;若满足,所述次核利用核间通信通道向所述主核上报所述日志信息。
9.可选的,判断是否满足日志信息上报的条件,包括:判断所述缓冲区中是否存在有效日志信息;若存在,判断当前时间是否满足周期性上报的时间;若是,则利用所述核间通信通道向所述主核上报所述有效日志信息。
10.可选的,在所述次核利用所述核间通信通道向所述主核上报所述有效日志信息之后,所述方法还包括:判断所述有效日志信息是否上传成功;若成功,则更新所述缓冲区,将上传成功的所述有效日志信息从所述缓冲区内移除;若失败,则将上传失败的有效日志信息保留在所述缓冲区内。
11.可选的,所述方法还包括:按照先进先出的原则对所述缓冲区进行储存管理,当所述缓冲区的空间已满时,自动删除部分旧的日志信息,以释放所述缓冲区的存储空间,用于存入新的日志信息。
12.可选的,所述方法还包括:所述次核接收所述主核利用所述核间通信通道下发的日志配置;所述日志配置包括日志等级配置、上报周期配置、最大上报信息长度配置和上报开关配置;所述次核按照所述日志配置对获取到的日志信息进行存储和上报。
13.本发明实施例第三方面提供一种多核通信日志系统,所述系统包括主核和多个次核,所述系统包括主核日志管理模块和多个次核日志模块;所述次核日志模块用于获取所述次核上的程序产生的日志信息,并利用核间通信通道向所述主核上报所述日志信息;所述主核日志管理模块用于接收所述多个次核日志模块上报的日志信息,并将接收到的日志信息存储至所述次核对应的文件中。
14.本发明实施例第四方面提供一种电子设备,包括:存储器,其上存储有计算机程序;处理器,用于执行所述存储器中的所述计算机程序,以实现第一方面或第二方面所述方法的步骤。
15.本发明实施例中的一个或者多个技术方案,至少具有如下技术效果或者优点:本发明实施例的方案中,多个次核产生日志信息后,向主核上报,主核根据不同的次核,将接收到的日志信息存储至所述次核对应的文件中。通过一个主核对多个次核的日志信息进行统一管理与存储,从而避免出现多个次核同时向共享内存区域进行日志信息写入的时候,多个次核参与竞争同一个共享内存操作锁,出现等待共享内存操作锁的频率很高,会导致日志管理效率低的技术问题,本发明实施例的方案能够有效提高日志管理效率。
附图说明
16.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可
以根据这些附图获得其他的附图:图1是根据一示例性实施例示出的多核通信日志系统的结构示意图;图2是根据一示例性实施例示出的基于多核通信的日志管理方法的流程示意图;图3是根据一示例性实施例示出的多核通信日志系统的运行流程图;图4是根据一示例性实施例示出的主核日志管理的流程图;图5是根据一示例性实施例示出的次核n日志管理的流程图;图6是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
17.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
18.本说明书中,首先对多核通信日志系统的系统组成和各组成部分的功能进行说明。
19.请参考图1,图1是根据一示例性实施例示出的多核通信日志系统的结构示意图。系统包括主核日志管理模块和次核1、2、3
……
n日志模块组成。
20.主核日志管理模块负责将次核上传的日志信息进行解析与存储,在进行日志信息解析存储步骤中,根据次核的区别,将日志信息存储在不同的文件中。在其他实施例中,主核日志管理模块还可以根据次核上传的日志信息,添加自定义的标志信息,如次核信息、接收时间等。
21.主核日志管理模块还负责配置次核日志模块,在主核中,可以配置各个次核需上报的日志等级,可以配置日志信息的上报周期,可以配置日志信息上报的最大数据长度,可以配置各个次核是否上报的日志信息至主核等。
22.对于次核日志模块,每个次核中运行自己独立的日志模块,主要负责收集、处理和上报当前处理器中的日志信息,以及执行主核对次核下发的日志配置。
23.接下来,结合附图对本发明实施例中的基于多核通信的日志管理方法进行说明。
24.请参考图2,是根据一示例性实施例示出的基于多核通信的日志管理方法的流程示意图。该方法包括以下步骤。
25.步骤201,所述主核接收所述多个次核利用核间通信通道向所述主核上报的日志信息。
26.步骤202,所述主核根据不同的次核,将接收到的日志信息存储至不同的次核对应的不同的文件中。
27.上述方案中,多个次核产生日志信息后,向主核上报,主核根据不同的次核,将接收到的日志信息存储至不同的次核对应的不同的文件中。通过一个主核对多个次核的日志信息进行统一管理与存储,从而避免出现多个次核同时向共享内存区域进行日志信息写入的时候,多个次核参与竞争同一个共享内存操作锁,出现等待共享内存操作锁的频率很高,会导致日志管理效率低的技术问题,能够有效提高日志管理效率。
28.请参考图3,图3是根据一示例性实施例示出的多核通信日志系统的运行流程图,
本说明书中对该系统的两个部分进行描述,包括主核日志管理模块和次核日志模块。
29.本发明实施例中,系统启动后进入步骤301和步骤302。
30.步骤301,主核运行核间通信和日志管理程序;步骤302,次核运行核间通信和日志模块程序。
31.然后,请参考图4,图4是根据一示例性实施例示出的主核日志管理的流程图。系统启动后,包括以下步骤。
32.步骤401,主核运行核间通信;步骤402,主核运行日志管理程序;步骤403,主核等待次核利用核间通信通道上报日志信息;判断是否接收到次核n日志信息,在接收到日志信息后进入步骤404;步骤404,主核对日志信息内容进行解析与处理。
33.根据不同的次核,主核将接收到的日志信息存储至不同的文件,从而避免日志信息混乱,减少了对同一文件的读写操作锁的使用频率,提升日志管理效率。
34.步骤405,主核等待系统指令或用户指令对指定的次核n进行日志配置。
35.步骤406,通过核间通信通道将日志配置下发至次核中。
36.在步骤406中,日志配置中包括日志等级配置、上报周期配置、最大上报信息长度配置和上报开关配置。其中,日志等级配置,可以设置符合存储的日志信息等级,可配置的日志等级类型有:调试(debug)、信息(info)、跟踪(trace)、警告(warn)、错误(error)和严重错误(fatal)。本发明实施例中,日志信息的等级分类可以添加和修改不一样的等级,本发明对此不做限制。日志上报周期配置是用于配置次核按照指定的时间周期,向主核进行日志信息上报;日志最大上报信息长度配置是用于配置次核按照不超过指定的数据长度,向主核进行日志信息上报;上报开关配置可以设置日志上报开关,配置是否将次核的日志信息上报至主核。
37.通常情况下,如果每个核采用可独立管理日志输出等级限制的方法,即当需要修改日志输出等级限制时,需要切换到核内进行配置文件的修改,该方法缺乏配置修改的灵活性。如果默认将所有等级类型日志信息进行输出与存储,这将造成内存空间的浪费。本发明实施例中,多核异构处理器下,主核可以统一管理所有次核的日志配置,从而增加日志管理的灵活性,并有效利用内存空间。
38.请参考图5,图5为本发明实施例提供的次核n日志管理的流程图。系统启动后,包括以下步骤。
39.步骤501,次核n运行核间通信;步骤502,次核n运行日志模块;步骤503,次核n等待其他模块调用日志模块产生日志信息。判断是否产生日志信息,当有日志产生时,进入步骤504。
40.步骤504,将日志信息进行加工处理,使每一条日志信息包含时间戳、等级、模块名和日志内容等。处理完毕后进入步骤505。在其他实施例中,日志信息的加工处理可能添加和修改不一样的标识,比如添加代码文件名、代码行数等标识信息,本发明对此不做限制。
41.步骤505,临时缓存日志信息,将日志信息存入日志模块专用缓冲区。
42.本发明实施例中,缓冲区按照先进先出的原则进行储存管理,对缓冲区的访问添
加一个互斥锁,保障缓冲区资源安全。当缓冲区空间已满,将自动删除足量的旧的日志信息,以提供足够的缓冲区空间来存入新的日志信息。删除日志信息时遵循日志信息整条删除原则,有效避免缓冲区中的单条日志信息不完整问题。
43.本发明实施例中,多核异构处理器下,次核中的日志缓冲区管理机制,缓冲区的存入与取出,均可以保证日志信息的完整性。
44.步骤506,日志模块定时定量的去读取缓冲区里的数据。然后,进入步骤507。本发明实施例中,多核异构处理器下,定时定量的日志信息上报机制,可以降低对日志存储文件的读写频率,优化处理器效率。避免了采用逐条日志信息存储的方式,会频繁去读写共享内存,导致处理器资源的浪费。
45.步骤507,判断是否满足日志信息上报的条件。当缓冲区中暂无有效日志信息,回到步骤503,日志模块继续等待日志信息的产生。当缓冲区中存在有效日志信息,以及当前时间满足周期性上报的时间,则进入步骤508。
46.步骤508,使用核间通信通道,将这部分有效日志信息上传至主核的日志管理系统。执行上传操作后进入步骤509。
47.步骤509,判断日志信息上传是否成功。若成功,进入步骤510。若日志信息上传失败,则不更新缓冲区,直接回到步骤503,上传失败的这部分日志信息依然保留在缓冲区中,从而保证数据不丢失。保留在缓冲区内的日志信息可以等待下一次上传。
48.步骤510,更新日志信息缓冲区,将上传成功的日志信息从缓冲区内移除,又回到步骤503等待日志信息的产生。
49.步骤511,次核等待主核下发日志配置数据,判断是否接收到新的日志配置,若接收到新的日志配置,进入步骤512。
50.步骤512,对新的日志配置解析并执行,日志配置设置结束后,日志信息将按照该日志配置进行存储和上传。
51.图6是根据一示例性实施例示出的一种电子设备600的框图。如图6所示,该电子设备600可以包括:处理器601,存储器602。该电子设备600还可以包括多媒体组件603,输入/输出(i/o)接口604,以及通信组件605中的一者或多者。
52.其中,处理器601为多核异构处理器,处理器601用于控制该电子设备600的整体操作,以完成上述的基于多核通信的日志管理方法中的全部或部分步骤。存储器602用于存储各种类型的数据以支持在该电子设备600的操作,这些数据例如可以包括用于在该电子设备600上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器602可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(static random access memory,简称sram),电可擦除可编程只读存储器(electrically erasable programmable read-only memory,简称eeprom),可擦除可编程只读存储器(erasable programmable read-only memory,简称eprom),可编程只读存储器(programmable read-only memory,简称prom),只读存储器(read-only memory,简称rom),磁存储器,快闪存储器,磁盘或光盘。多媒体组件603可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器602或通过通信组件605发送。音频组件还包括至少一
个扬声器,用于输出音频信号。i/o接口604为处理器601和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件605用于该电子设备600与其他设备之间进行有线或无线通信。无线通信,例如wi-fi,蓝牙,近场通信(near field communication,简称nfc),2g、3g、4g、nb-iot、emtc、或其他5g等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件605可以包括:wi-fi模块,蓝牙模块,nfc模块等等。
53.在一示例性实施例中,电子设备600可以被一个或多个应用专用集成电路(application specific integrated circuit,简称asic)、数字信号处理器(digital signal processor,简称dsp)、数字信号处理设备(digital signal processing device,简称dspd)、可编程逻辑器件(programmable logic device,简称pld)、现场可编程门阵列(field programmable gate array,简称fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的基于多核通信的日志管理方法。
54.在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的基于多核通信的日志管理方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器602,上述程序指令可由电子设备600的处理器601执行以完成上述的基于多核通信的日志管理方法。
55.在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的基于多核通信的日志管理方法的代码部分。
56.本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。
57.本说明书(包括任何附加权利要求、摘要和附图)中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。
58.本发明并不局限于前述的具体实施方式。本发明扩展到任何在本说明书中披露的新特征或任何新的组合,以及披露的任一新的方法或过程的步骤或任何新的组合。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1