CN115237716A - 操作系统的事件记录、统计方法和装置 - Google Patents

操作系统的事件记录、统计方法和装置 Download PDF

Info

Publication number
CN115237716A
CN115237716A CN202210870932.6A CN202210870932A CN115237716A CN 115237716 A CN115237716 A CN 115237716A CN 202210870932 A CN202210870932 A CN 202210870932A CN 115237716 A CN115237716 A CN 115237716A
Authority
CN
China
Prior art keywords
event
time
event information
operating system
preset
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210870932.6A
Other languages
English (en)
Inventor
张艳平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Radico Microelectronics Technology Tianjin Co ltd
Original Assignee
Radico Microelectronics Technology Tianjin Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Radico Microelectronics Technology Tianjin Co ltd filed Critical Radico Microelectronics Technology Tianjin Co ltd
Priority to CN202210870932.6A priority Critical patent/CN115237716A/zh
Publication of CN115237716A publication Critical patent/CN115237716A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明涉及计算机技术领域,尤其涉及一种操作系统的事件记录、统计方法和装置。响应于操作系统执行预设事件,生成预设事件的事件信息,事件信息包括:事件标识和事件时间,将事件信息存储至第一数据队列,将第一数据队列发送至主机设备,以使主机设备解析第一数据队列获取事件信息,并根据事件信息确定操作系统的性能日志。终端设备以较少的存储空间生成事件信息,然后将事件信息发送至主机设备进行分析,保证了在终端设备的正常运转下,确定操作系统的性能日志。

Description

操作系统的事件记录、统计方法和装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种操作系统的事件记录、统计方法和装置。
背景技术
在对操作系统的性能进行分析时,一些关键的运行事件起着至关重要的作用,比如中断进入/退出、线程切换等。终端设备需要记录下这些事件的类型和发生时间,以便事后分析。某些情况下(比如系统负荷较大),这些关键事件发生的频率会特别高,因此会在短时间内产生大量的记录,比如在1秒之内产生上千条记录。传统的方法一般是将这些记录通过日志的方式进行输出,但是日志方法存在一些缺点。例如,在短时间产生大量记录的情况下,日志系统可能无法处理如此多的数据,导致记录丢失。或者,在操作系统执行某些对实时性要求较高的事件时(如中断进入/退出),如果通过日志的方式输出该事件,会严重降低系统的实时性,影响系统的正常工作。
发明内容
本发明实施例提供了一种操作系统的事件记录、统计方法和装置,终端设备以较少的存储空间生成事件信息,然后将事件信息发送至主机设备进行分析,保证了在终端设备的正常运转下,确定操作系统的性能日志。
第一方面,本发明实施例提供了一种操作系统的事件记录方法,所述方法应用于终端设备,包括:
响应于操作系统执行预设事件,生成所述预设事件的事件信息,所述事件信息包括:事件标识和事件时间;
将所述事件信息存储至第一数据队列;
将所述第一数据队列发送至主机设备,以使所述主机设备从所述第一数据队列获取所述事件信息,并根据所述事件信息确定所述操作系统的性能日志。
一种实现方式中,所述响应于操作系统执行预设事件,生成所述预设事件的事件信息,包括:
响应于所述操作系统执行所述预设事件,通过埋点操作记录所述预设事件的事件标识和埋点时间;
根据所述预设事件的所述埋点时间确定所述预设事件的事件时间;
根据所述事件标识和所述事件时间生成所述事件信息。
一种实现方式中,所述根据所述预设事件的所述埋点时间确定所述预设事件的事件时间,包括:
若当前的埋点操作为首次埋点操作,则将当前的埋点时间确定为当前预设事件对应的事件时间;
若当前的埋点操作为非首次埋点操作,则将当前的埋点时间与上一次埋点操作的埋点时间的差值确定为当前预设事件对应的事件时间。
一种实现方式中,所述将所述事件信息存储至第一数据队列,包括:
若所述第一数据队列的末端已存储有事件信息,则将新增的事件信息存储至所述第一数据队列的首端;
若所述第一数据队列的末端未存储事件信息,则将新增的事件信息在所述第一数据队列中由首端至末端顺序存储。
一种实现方式中,所述预设事件包括:中断进入/退出、线程切换、休眠进入/退出、闪存擦除开始/结束、闪存写入开始/结束以及关键函数进入/退出。
第二方面,本发明实施例提供了一种操作系统的事件统计方法,所述方法应用于主机设备,包括:
接收终端设备发送的第一数据队列;
获取所述第一数据队列中包含的事件信息,所述事件信息包括:事件标识和事件时间;
根据所述事件信息确定各预设事件以及对应的埋点时间;
对所述预设事件以及对应的所述埋点时间进行统计,确定所述终端设备操作系统的性能日志。
一种实现方式中,所述根据所述事件信息确定所述预设事件对应的埋点时间,包括:
将所述事件信息按照在所述第一数据队列中存储的先后顺序进行顺序排列;
对于位于首部的事件信息,将所述事件信息中的事件时间确定为本次埋点操作的埋点时间;
对于位于非首部的事件数据,将所述事件信息中的事件时间与前一次埋点操作的埋点时间的加和确定为本次埋点操作的埋点时间。
第三方面,本发明实施例提供了一种操作系统的事件记录装置,所述装置部署于终端设备,包括:
生成模块,用于响应于操作系统执行预设事件,生成所述预设事件的事件信息,所述事件信息包括:事件标识和事件时间;
存储模块,用于将所述事件信息存储至第一数据队列;
发送模块,用于将所述第一数据队列发送至主机设备,以使所述主机设备解析所述第一数据队列获取所述事件信息,并根据所述事件信息确定所述操作系统的性能日志。
第四方面,本发明实施例提供了一种操作系统的事件统计装置,所述装置部署于主机设备,包括:
接收模块,用于接收终端设备发送的第一数据队列;
获取模块,用于获取所述第一数据队列中包含的事件信息,所述事件信息包括:事件标识和事件时间;
确定模块,用于根据所述事件信息确定各预设事件以及对应的埋点时间;
统计模块,用于对所述预设事件以及对应的所述埋点时间进行统计,确定所述终端设备操作系统的性能日志。
第五方面,本发明实施例提供了一种电子芯片,包括:
至少一个处理器;以及
与所述处理器通信连接的至少一个存储器,其中:
所述存储器存储程序指令,所述处理器调用所述程序指令能够执行第一方面或第二方面提供的方法。
第六方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的程序,其中,所述程序被处理器执行时实现第一方面或第二方面提供的方法。
本发明实施例中,终端设备响应于操作系统执行预设事件,生成预设事件的事件信息,事件信息包括:事件标识和事件时间,将事件信息存储至第一数据队列,将第一数据队列发送至主机设备,以使主机设备解析第一数据队列获取事件信息,并根据事件信息确定操作系统的性能日志。终端设备以较少的存储空间生成事件信息,然后将事件信息发送至主机设备进行分析,保证了在终端设备的正常运转下,确定操作系统的性能日志。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种操作系统的事件记录方法的流程图;
图2为本发明实施例提供的一种操作系统的事件记录方法的示意图;
图3为本发明实施例提供的一种操作系统的事件统计方法的流程图;
图4为本发明实施例提供的一种操作系统的事件记录、统计方法的流程图;
图5为本发明实施例提供的一种操作系统的事件记录装置的结构示意图;
图6为本发明实施例提供的一种操作系统的事件统计装置的结构示意图
图7为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
为了更好的理解本说明书的技术方案,下面结合附图对本发明实施例进行详细描述。
应当明确,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本说明书保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
图1为本发明实施例提供的一种操作系统的事件记录方法的流程图。该方法可以应用于终端设备,尤其是安装了嵌入式系统的终端设备,如图1所示,该方法可以包括:
步骤101,响应于操作系统执行预设事件,生成预设事件的事件信息,事件信息包括:事件标识和事件时间。
本发明实施例中的预设事件可以包括:中断进入/退出、线程切换、休眠进入/退出、闪存擦除开始/结束、闪存写入开始/结束以及关键函数进入/退出等。通过分析上述操作所需的时间能够在一定程度上了解操作系统的性能。
在一些实施例中,终端设备检测到操作系统执行预设事件时,可以通过埋点操作生成对应的事件信息,具体步骤包括:响应于操作系统执行预设事件,通过埋点操作记录预设事件的事件标识和埋点时间,根据预设事件的埋点时间确定预设事件的事件时间,根据事件标识和事件时间生成事件信息。
需要说明的是,本发明实施例的埋点时间和事件时间的性质不同。埋点时间为终端设备进行埋点操作时对应的时间,也即为预设事件被执行时对应的时间,而事件时间为终端设备记录在事件信息中的时间。本发明实施例中根据埋点时间确定事件时间的具体步骤可以包括:若当前的埋点操作为首次埋点操作,则将当前的埋点时间确定为当前预设事件对应的事件时间;若当前的埋点操作为非首次埋点操作,则将当前的埋点时间与上一次埋点操作的埋点时间的差值确定为当前预设事件对应的事件时间。不同的预设事件对应唯一的事件标识,事件标识可以根据具体需要进行设定,如数字、符号或文字等,不做限定。终端设备以事件时间和事件标识进行记录可以有效节省存储空间,保证操作系统的正常运行。
在一些实施例中,可以通过提前设置的变量以及时间获取函数实现事件信息的记录。例如,对于首次埋点,终端设备可以顺序进行以下操作:Tnow=Tick(),T=Tnow,Tlast=Tnow。Tick()为时间获取函数,被执行时能够获取当前时刻的时间。Tnow=Tick()可以将当前时刻的时间赋值给Tnow,Tnow用于记录当前时刻的时间,即埋点时间。T=Tnow用于确定事件时间,首次埋点的埋点时间即为事件时间,因此直接通过公式赋值给T。通过公式Tlast=Tnow可以将此次埋点时间赋值给Tlast,Tlast用于记录当前时刻的埋点时间,用于后续计算。可以理解,首次埋点时,上述三个变量满足:T=Tnow=Tlast。对于非首次埋点,终端设备可以顺序进行以下操作:Tnow=Tick(),T=Tnow-Tlast,Tlast=Tnow。公式Tnow=Tick()仍是获取当前时刻的时间(埋点时间)赋值给Tnow,公式T=Tnow-Tlast用于确定此次埋点操作的事件时间。非首次埋点,终端设备将将当前的埋点时间与上一次埋点操作的埋点时间的差值确定为当前预设事件对应的事件时间。Tlast记录了上一次埋点操作的埋点时间,Tnow记录了当前的埋点时间,因此二者相减并将结果赋值给T,T记录此次的事件时间。公式Tlast=Tnow仍用于记录此次埋点时间,用于后续计算。
每次埋点操作后,即可确定对应的事件信息。可选的,根据公式P=(E,T)确定事件信息,P为事件信息,E为事件标识,T为事件时间,每个预设事件采用唯一值表示。通过上述格式,可以将每个事件信息用于二元数据(E,T)进行表示。
以下以具体实施例对图1流程图做进一步描述。操作系统在9:00执行了中断进入操作,终端设备响应于该操作进行埋点,并进行记录:埋点时间为9:00,事件标识为中断进入。若终端设备以此次埋点操作进行首次记录(该埋点操作为首次埋点操作),则此次中断进入对应的事件时间也为9:00。然后,操作系统在9:02执行了线程切换操作,终端设备进行埋点,并进行记录:埋点时间为9:02,事件标识为线程切换。由于该埋点操作为非首次埋点操作,因此将当前的埋点时间与上一次埋点操作的埋点时间的差值确定为此次线程切换对应的事件时间。上一次埋点时间为9:00,差值为0:02(2分钟),此次线程切换对应的事件时间即为0:02。之后,操作系统在9:06执行了休眠进入操作,终端设备进行埋点并记录信息:埋点时间为9:06,事件标识为休眠进入。此次埋点操作同样为非首次埋点操作,则取此次埋点时间与上一次埋点时间的差值0:04(4分钟)为对应的事件时间。事件信息在终端设备的存储形式可以如图2所示,为了便于说明,图2中事件标识采用了文字格式,还可以采用其他格式,如数值或符号等。
步骤102,将事件信息存储至第一数据队列。
终端设备每次确定完事件信息即可将其存储至第一数据队列,可选的,本发明实施例的第一数据队列可选用循环队列,在存储的时候,若队列末端已存储有事件信息,则将新增的事件信息存储至队列的首端,若队列末端未存储事件信息,则将新增的事件信息在队列中由首端至末端顺序存储。该队列可以防止伪溢出的发生。
步骤103,将第一数据队列发送至主机设备,以使主机设备解析第一数据队列获取事件信息,并根据事件信息确定操作系统的性能日志。
当需要输出事件信息时,终端设备将第一数据队列发送至主机设备,由主机设备对第一数据队列中的事件信息进行统计,确定操作系统的性能日志。
本发明实施例中,终端设备通过埋点操作确定事件信息,并以特殊格式对事件信息进行记录,节省了存储空间,当需要对操作系统进行性能分析时,将事件信息发送至主机设备,由主机设备进行分析,保证了终端设备操作系统的正常运行。
图3为本发明实施例提供的一种操作系统的事件统计方法的流程图。该方法可以应用于主机设备,如服务器、个人电脑等。如图3所示,该方法可以包括:
步骤301,接收终端设备发送的第一数据队列。
步骤302,获取第一数据队列中包含的事件信息,事件信息包括:事件标识和事件时间。
步骤303,根据事件信息确定各预设事件以及对应的埋点时间。
在一些实施例中,主机设备确定埋点时间的步骤包括:将事件信息按照在第一数据队列中存储的先后顺序进行顺序排列,对于位于首部的事件信息,将事件信息中的事件时间确定为本次埋点操作的埋点时间,对于位于非首部的事件数据,将事件信息中的事件时间与前一次埋点操作的埋点时间的加和确定为本次埋点操作的埋点时间。若主机设备获取的事件信息如图2所示,事件信息按存储顺序依次为9:00中断进入、0:02线程切换、0:04休眠进入,中断进入位于首部,因此直接将事件时间9:00确定为埋点时间,线程切换的埋点时间需要将事件时间与上一次埋点操作的埋点时间相加,即与9:00中断进入的埋点时间相加,线程切换的埋点时间为9:02。同理,休眠进入的埋点时间为9:06。
步骤304,对预设事件以及对应的埋点时间进行统计,确定终端设备操作系统的性能日志。
主机设备对预设事件以及对应的埋点时间进行分析和统计,统计信息可以包括:某类预设事件的总次数、某类预设事件的总时间、某类预设事件单次最大耗时、同类预设事件的耗时比例等。基于上述统计结果,输出终端设备操作系统的性能报告。
本发明实施例可以在几乎不影响操作系统性能的前提下,对操作系统的重要事件进行记录。在终端设备严重死机,其他方法对于死机的情况束手无策的情况下,该方法仍可以正常工作,记录有效的信息。
图4为本发明实施例提供的一种操作系统的事件记录、统计方法的流程图。如图4所示,该方法可以包括:
步骤401,埋点操作。
终端设备通过埋点操作确定预设事件的埋点时间。
步骤402,确定事件时间。
终端设备根据埋点时间确定事件时间。
步骤403,确定事件信息。
终端设备确定事件信息,包括事件标识和事件时间。
步骤404,队列末端已有数据。
终端设备判断队列末端是否已有数据,若是,则进入步骤406,否则进入步骤405。
步骤405,事件信息顺序插入。
若队列末端没有数据,则终端设备可以直接将事件信息顺序插入队列尾部。
步骤406,事件信息插入队首。
若队列末端已有数据,则终端设备将事件信息插入队首。
步骤407,发送第一数据队列。
终端设备发送第一数据队列至主机设备。
步骤408,事件信息排序。
主机设备获取事件信息并排列,可选的,公式(P1,P2,…,PN)=Sort(P)可用于对队列中的事件信息进行排序,Sort表示排序函数,P表示队列中的事件信息,(P1,P2,…,PN)表示排序后的事件信息,N表示总共有N个事件信息。
步骤409,确定埋点时间。
步骤410,事件信息统计。
各步骤之间其他细节可以参照图1和图3流程图中的描述。
图5为本发明实施例提供的一种操作系统的事件记录装置的结构示意图。该装置可以作为具体设备,实现本发明实施例提供的操作系统的事件记录方法,如图5所示,该装置可以包括:生成模块510、存储模块520和发送模块530。
生成模块510,用于响应于操作系统执行预设事件,生成预设事件的事件信息,事件信息包括:事件标识和事件时间。
存储模块520,用于将事件信息存储至第一数据队列。
发送模块530,用于将第一数据队列发送至主机设备,以使主机设备解析第一数据队列获取事件信息,并根据事件信息确定操作系统的性能日志。
图6为本发明实施例提供的一种操作系统的事件统计装置的结构示意图。如图6所示,该装置可以包括:
接收模块610,用于接收终端设备发送的第一数据队列。
获取模块620,用于获取第一数据队列中包含的事件信息,事件信息包括:事件标识和事件时间。
确定模块630,用于根据事件信息确定各预设事件以及对应的埋点时间。
统计模块640,用于对预设事件以及对应的所述埋点时间进行统计,确定终端设备操作系统的性能日志。
图7为本发明实施例提供的一种电子设备的结构示意图。图7显示的电子设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图7所示,电子设备以通用计算设备的形式表现。电子设备的组件可以包括但不限于:一个或者多个处理器710,存储器730,连接不同系统组件(包括存储器730和处理器710)的通信总线740。
通信总线740表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器、外围总线、图形加速端口、处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture;以下简称:ISA)总线,微通道体系结构(Micro Channel Architecture;以下简称:MAC)总线,增强型ISA总线、视频电子标准协会(Video Electronics StandardsAssociation;以下简称:VESA)局域总线以及外围组件互连(Peripheral ComponentInterconnection;以下简称:PCI)总线。
电子设备典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器730可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory;以下简称:RAM)和/或高速缓存存储器。电子设备可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。尽管图7中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(Compact Disc Read Only Memory;以下简称:CD-ROM)、数字多功能只读光盘(Digital Video Disc Read Only Memory;以下简称:DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与通信总线740相连。存储器730可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块的程序/实用工具,可以存储在存储器730中,这样的程序模块包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块通常执行本发明所描述的实施例中的功能和/或方法。
电子设备也可以与一个或多个外部设备通信,还可与一个或者多个使得用户能与该电子设备交互的设备通信,或者与使得该电子设备能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过通信接口720进行。并且,电子设备还可以通过网络适配器(图7中未示出)与一个或者多个网络(例如局域网(Local Area Network;以下简称:LAN),广域网(Wide Area Network;以下简称:WAN)和/或公共网络,例如因特网)通信,上述网络适配器可以通过通信总线740与电子设备的其它模块通信。应当明白,尽管图7中未示出,可以结合电子设备使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、磁盘阵列(RedundantArrays of Independent Drives;以下简称:RAID)系统、磁带驱动器以及数据备份存储系统等。
处理器710通过运行存储在存储器730中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例提供的操作系统的事件记录、统计方法。
本发明实施例还提供一种计算机可读存储介质,上述计算机可读存储介质存储计算机指令,上述计算机指令使上述计算机执行本发明实施例提供的操作系统的事件记录、统计方法。
上述计算机可读存储介质可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ReadOnly Memory;以下简称:ROM)、可擦式可编程只读存储器(Erasable Programmable ReadOnly Memory;以下简称:EPROM)或闪存、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (10)

1.一种操作系统的事件记录方法,其特征在于,所述方法应用于终端设备,包括:
响应于操作系统执行预设事件,生成所述预设事件的事件信息,所述事件信息包括:事件标识和事件时间;
将所述事件信息存储至第一数据队列;
将所述第一数据队列发送至主机设备,以使所述主机设备从所述第一数据队列获取所述事件信息,并根据所述事件信息确定所述操作系统的性能日志。
2.根据权利要求1所述的方法,其特征在于,所述响应于操作系统执行预设事件,生成所述预设事件的事件信息,包括:
响应于所述操作系统执行所述预设事件,通过埋点操作记录所述预设事件的事件标识和埋点时间;
根据所述预设事件的所述埋点时间确定所述预设事件的事件时间;
根据所述事件标识和所述事件时间生成所述事件信息。
3.根据权利要求2所述的方法,其特征在于,所述根据所述预设事件的所述埋点时间确定所述预设事件的事件时间,包括:
若当前的埋点操作为首次埋点操作,则将当前的埋点时间确定为当前预设事件对应的事件时间;
若当前的埋点操作为非首次埋点操作,则将当前的埋点时间与上一次埋点操作的埋点时间的差值确定为当前预设事件对应的事件时间。
4.根据权利要求1所述的方法,其特征在于,所述将所述事件信息存储至第一数据队列,包括:
若所述第一数据队列的末端已存储有事件信息,则将新增的事件信息存储至所述第一数据队列的首端;
若所述第一数据队列的末端未存储事件信息,则将新增的事件信息在所述第一数据队列中由首端至末端顺序存储。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述预设事件包括:中断进入/退出、线程切换、休眠进入/退出、闪存擦除开始/结束、闪存写入开始/结束以及关键函数进入/退出。
6.一种操作系统的事件统计方法,其特征在于,所述方法应用于主机设备,包括:
接收终端设备发送的第一数据队列;
获取所述第一数据队列中包含的事件信息,所述事件信息包括:事件标识和事件时间;
根据所述事件信息确定各预设事件以及对应的埋点时间;
对所述预设事件以及对应的所述埋点时间进行统计,确定所述终端设备操作系统的性能日志。
7.根据权利要求6所述的方法,其特征在于,所述根据所述事件信息确定所述预设事件对应的埋点时间,包括:
将所述事件信息按照在所述第一数据队列中存储的先后顺序进行顺序排列;
对于位于首部的事件信息,将所述事件信息中的事件时间确定为本次埋点操作的埋点时间;
对于位于非首部的事件数据,将所述事件信息中的事件时间与前一次埋点操作的埋点时间的加和确定为本次埋点操作的埋点时间。
8.一种操作系统的事件记录装置,其特征在于,所述装置部署于终端设备,包括:
生成模块,用于响应于操作系统执行预设事件,生成所述预设事件的事件信息,所述事件信息包括:事件标识和事件时间;
存储模块,用于将所述事件信息存储至第一数据队列;
发送模块,用于将所述第一数据队列发送至主机设备,以使所述主机设备解析所述第一数据队列获取所述事件信息,并根据所述事件信息确定所述操作系统的性能日志。
9.一种操作系统的事件统计装置,其特征在于,所述装置部署于主机设备,包括:
接收模块,用于接收终端设备发送的第一数据队列;
获取模块,用于获取所述第一数据队列中包含的事件信息,所述事件信息包括:事件标识和事件时间;
确定模块,用于根据所述事件信息确定各预设事件以及对应的埋点时间;
统计模块,用于对所述预设事件以及对应的所述埋点时间进行统计,确定所述终端设备操作系统的性能日志。
10.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述处理器通信连接的至少一个存储器,其中:
所述存储器存储程序指令,所述处理器调用所述程序指令能够执行如权利要求1至7任一项所述的方法。
CN202210870932.6A 2022-07-22 2022-07-22 操作系统的事件记录、统计方法和装置 Pending CN115237716A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210870932.6A CN115237716A (zh) 2022-07-22 2022-07-22 操作系统的事件记录、统计方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210870932.6A CN115237716A (zh) 2022-07-22 2022-07-22 操作系统的事件记录、统计方法和装置

Publications (1)

Publication Number Publication Date
CN115237716A true CN115237716A (zh) 2022-10-25

Family

ID=83674612

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210870932.6A Pending CN115237716A (zh) 2022-07-22 2022-07-22 操作系统的事件记录、统计方法和装置

Country Status (1)

Country Link
CN (1) CN115237716A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116467492A (zh) * 2023-04-23 2023-07-21 北京欧拉认知智能科技有限公司 一种基于图的OneID实现方法及系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116467492A (zh) * 2023-04-23 2023-07-21 北京欧拉认知智能科技有限公司 一种基于图的OneID实现方法及系统

Similar Documents

Publication Publication Date Title
CN109213611B (zh) 跨进程通讯方法、装置、终端及存储介质
CN110457277B (zh) 业务处理性能分析方法、装置、设备及存储介质
CN111954072B (zh) 一种多媒体播放方法、装置、多媒体播放器和介质
CN110287146B (zh) 应用下载的方法、设备和计算机存储介质
CN109862396A (zh) 一种视频码流的分析方法、电子设备及可读存储介质
CN109495549B (zh) 一种应用拉活的方法、设备和计算机存储介质
US20090182798A1 (en) Method and apparatus to improve the effectiveness of system logging
CN111813465B (zh) 一种信息获取方法、装置、介质和设备
CN115237716A (zh) 操作系统的事件记录、统计方法和装置
CN114020529A (zh) 一种流表数据的备份方法、装置、网络设备和存储介质
CN109347899B (zh) 在分布式存储系统中写入日志数据的方法
US20210208945A1 (en) Information processing apparatus, information processing method, and computer readable medium
CN110888791A (zh) 一种日志处理方法、装置、设备和存储介质
CN109684207B (zh) 操作序列封装的方法、装置、电子设备及存储介质
CN116738089A (zh) 渲染方法、芯片、电子设备及存储介质
CN111797345A (zh) 应用页面展现方法、装置、计算机设备和存储介质
CN107797898B (zh) 数据采集方法及其装置
CN115016890A (zh) 虚拟机资源分配方法、装置、电子设备及存储介质
CN114218000A (zh) 日志管理方法、装置、电子设备及计算机可读存储介质
CN110120899B (zh) 一种数据流的检测方法、装置、电子设备及存储介质
CN110647527B (zh) 基于大数据的无效标签清除方法及装置、设备与可读介质
CN112768046A (zh) 数据处理方法、医疗管理系统和终端
CN112967454A (zh) 资源分发方法、装置、机柜、电子设备及存储介质
CN112748930A (zh) 编译检测方法、装置、设备及存储介质
CN113760920A (zh) 一种数据同步方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination