CN114237825A - 全液晶仪表记录程序异常数据的方法 - Google Patents

全液晶仪表记录程序异常数据的方法 Download PDF

Info

Publication number
CN114237825A
CN114237825A CN202111558125.2A CN202111558125A CN114237825A CN 114237825 A CN114237825 A CN 114237825A CN 202111558125 A CN202111558125 A CN 202111558125A CN 114237825 A CN114237825 A CN 114237825A
Authority
CN
China
Prior art keywords
kernel
program
abnormal data
liquid crystal
log file
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
CN202111558125.2A
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.)
Aerospace Hi Tech Holding Group Co Ltd
Original Assignee
Aerospace Hi Tech Holding Group 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 Aerospace Hi Tech Holding Group Co Ltd filed Critical Aerospace Hi Tech Holding Group Co Ltd
Priority to CN202111558125.2A priority Critical patent/CN114237825A/zh
Publication of CN114237825A publication Critical patent/CN114237825A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/1805Append-only file systems, e.g. using logs or journals to store data
    • G06F16/1815Journaling file systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

全液晶仪表记录程序异常数据的方法,属于仪器仪表领域,本发明为解决全液晶仪表监测异常数据时存在的问题。本发明方法包括以下步骤:利用虚拟机执行双内核策略,在程序崩溃、系统未崩溃时通过主内核保存异常数据,在程序崩溃、系统崩溃时通过监视内核保存异常数据,以供后续分析全液晶仪表存在的问题;主内核的运行流程包括:启动主内核;定时记录日志文件;若程序崩溃,转储主内核定时存储的日志文件;同时,通过回溯跟踪函数backtrace将程序崩溃时的堆栈数据重定向存储至日志文件;并转储dump文件;监视内核的运行流程包括:启动监视内核;定时读取日志文件;若两次读取的日志文件相同,表征系统崩溃,则转储主内核定时存储的日志文件,并转储dump文件。

Description

全液晶仪表记录程序异常数据的方法
技术领域
本发明涉及全液晶仪表监测技术,属于仪器仪表领域。
背景技术
全液晶仪表包含boot、内核、根文件系统、驱动程序、应用程序等多个组成部分,全液晶仪表因为其复杂性,相比于传统仪表裸机无操作系统,或者运行较为简单的实时操作系统,发生问题的可能性更高,问题点更隐蔽,不易排查。而且如果是内核、驱动等操作系统底层出现问题,问题较为偶发,不易复现,对排查程序问题提出了极大的挑战。同时,因为问题比较偶发,派遣人员全现场排查问题,不一定能复现问题,有的问题往往几个月可能才发生一例,派人长期跟踪,浪费了大量的人力物力,也不一定能够跟踪到问题。因此,急需一种手段,确保在程序发生异常的时候,有效地记录问题,尽可能的保留现场数据,以便开发人员进行分析。
发明内容
本发明目的是为了解决全液晶仪表监测异常数据时存在的问题,提供了一种全液晶仪表记录程序异常数据的方法。
本发明所述全液晶仪表记录程序异常数据的方法,该方法包括以下步骤:
利用虚拟机执行双内核策略,在程序崩溃、系统未崩溃时通过主内核保存异常数据,在程序崩溃、系统崩溃时通过监视内核保存异常数据,以供后续分析全液晶仪表存在的问题;
主内核的运行流程包括:
A1、启动主内核;
A2、定时记录日志文件;
A3、判断程序是否崩溃,
若程序未崩溃,返回执行步骤A2;若程序崩溃,则执行步骤A4;
A4、转储主内核定时存储的日志文件;同时,通过回溯跟踪函数backtrace将程序崩溃时的堆栈数据重定向存储至日志文件;并转储dump文件;
监视内核的运行流程包括:
B1、启动监视内核;
B2、定时读取日志文件;
B3、判断两次读取的日志文件是否有变化,
若两次读取的日志文件不相同,表征系统未崩溃,返回执行步骤B2;若两次读取的日志文件相同,表征系统崩溃,则执行步骤B4;
B4、转储主内核定时存储的日志文件,并转储dump文件。
优选地,步骤A2中主内核定时记录日志文件的过程为:
当应用程序启动后,以固定的时间间隔存储信息以生成日志文件,每组信息均加上时间戳,每组信息记录完毕后插入换行符,以分隔开相邻两组信息。
优选地,存储的信息包括内存使用量、CPU负载率、GPU负载率、系统时间、芯片温度、按键操作、功能模块使用情况和串口接收情况数据。
优选地,所述双内核策略为:开机,boot引导内核启动,由虚拟机在该内核中虚拟划分出主内核和监视内核,并硬件隔离开两个内核。
优选地,异常数据通过U盘导出,或通过WIFI导出。
优选地,步骤A3中判断程序是否崩溃的方法为:当主内核捕捉到程序崩溃信号时判定其为程序崩溃。
优选地,步骤B3中判断两次读取的日志文件是否有变化的方法为:判断两次读取的日志文件行数是否相同,若相同,表征主内核正常运行,正常存储日志文件;若不相同,则表征主内核崩溃,不再存储日志文件。
本发明的有益效果:本发明是一种记录全液晶仪表程序异常数据的方法。能够在第一时间记录问题发生时的现场数据,对于不易复现偶发问题,通过该方法记录的数据,为解决问题,提供了大量的有效数据,为进一步解决程序问题提供了帮助。同时,节省了外派人员到现场复现问题的人力成本,节省了大量的人力物力。采用U盘或者WIFI模块均可以导出数据,简单易行,通过开发人员的远程指导,可以快速的获取问题数据,及时解决问题。
该方法能够在全液晶仪表程序发生异常的时候,尽可能保留有用的数据,并有效保存。同时,通过U盘或者WIFI模块就可以导出数据,操作简单。发生问题的时候,无需人员到现场进行支持,只需要远程协调现场人员导出数据,从而第一时间获取到问题数据。对于隐蔽的问题点,能够尽可能详尽地记录数据,省去了人员现场排查复现的时间。在记录问题,尤其是几个月才能发生一次的偶发问题上,节省了大量的时间,节约了人力物力。
附图说明
图1是本发明所述全液晶仪表记录程序异常数据的方法的原理框图;
图2是主内核记录程序异常数据的流程图;
图3是监测内核记录程序异常数据的流程图。
具体实施方式
具体实施方式一:下面结合图1至3说明本实施方式,本实施方式所述全液晶仪表记录程序异常数据的方法,该方法包括以下步骤:
利用虚拟机执行双内核策略,在程序崩溃、系统未崩溃时通过主内核保存异常数据,在程序崩溃、系统崩溃时通过监视内核保存异常数据,以供后续分析全液晶仪表存在的问题;
当程序发生异常时,分为两种情况,情况一、程序崩溃,内核未崩溃(系统未崩溃);情况二、程序崩溃,内核崩溃(系统崩溃)。
在程序崩溃、系统未崩溃时通过主内核保存异常数据,主内核的运行流程包括:
A1、启动主内核;
A2、定时记录日志文件;
A3、判断程序是否崩溃,
若程序未崩溃,返回执行步骤A2;若程序崩溃,则执行步骤A4;
A4、转储主内核定时存储的日志文件;同时,通过回溯跟踪函数backtrace将程序崩溃时的堆栈数据重定向存储至日志文件;并转储dump文件;
其中,步骤A2中主内核定时记录日志文件的过程为:
当应用程序启动后,以固定的时间间隔存储信息以生成日志文件,每组信息均加上时间戳,每组信息记录完毕后插入换行符,以分隔开相邻两组信息。
存储的信息包括内存使用量、CPU负载率、GPU负载率、系统时间、芯片温度、按键操作、功能模块使用情况和串口接收情况数据。
对于程序崩溃,内核未崩溃的情况,操作系统仍可以正常运行,此时通过回溯系统backtrace将程序崩溃时的堆栈数据重定向存储至日志文件。并将系统产生的备份文件系统dump文件进行转储,便于今后分析。
其中,步骤A3中判断程序是否崩溃的方法为:当主内核捕捉到程序崩溃信号时判定其为程序崩溃。主内核运行过程中若程序崩溃是会发出崩溃信号的,当主内核捕捉到程序崩溃信号时就可判定为程序崩溃,执行图2中所述的流程,当程序崩溃时,导出三个文件给研发人员,第一个为主内核定时存储的日志文件,第二个为通过回溯跟踪函数backtrace将程序崩溃时的堆栈数据重定向存储至日志文件,第三个为转储dump文件,dump为系统转储文件,是系统自动生成的文件。
在程序崩溃、系统崩溃时通过监视内核保存异常数据,监视内核的运行流程包括:
B1、启动监视内核;
B2、定时读取日志文件;
B3、判断两次读取的日志文件是否有变化,
若两次读取的日志文件不相同,表征系统未崩溃,返回执行步骤B2;若两次读取的日志文件相同,表征系统崩溃,则执行步骤B4;
B4、转储主内核定时存储的日志文件,并转储dump文件。
其中,步骤B3中判断两次读取的日志文件是否有变化的方法为:判断两次读取的日志文件行数是否相同,若相同,表征主内核正常运行,正常存储日志文件;若不相同,则表征主内核崩溃,不再存储日志文件。
对于内核崩溃的情况,操作系统无法正常运行。此时无法通过操作系统,储存崩溃时的日志文件。针对这一情况,采用双内核策略,开机,boot引导内核启动,然后会运行一个虚拟机,两个虚拟内核在虚拟机中运行,并且两个虚拟内核硬件隔离,避免一个崩溃影响到另一个内核。每个固定时间访问存储的日志文件。因为日志文件每隔固定时间会主内核都会写入固定的必要系统信息数据,并添加时间戳,每条信息都进行换行。所以,只要主内核正常工作,日志文件的行数就会一直增加。监视内核通过读取日志文件,发现多次读取的日志文件行数没有变化后,判定主内核崩溃,转储日志文件,以供开发人员导出分析。
实施方式二,本实施方式与实施方式一的不同之处在于,异常数据通过U盘导出,或通过WIFI导出。
有两种方式可以导出存储在仪表中的日志文件,一是通过U盘导出,在USB升级界面下长按右键,触发U盘导出日志的操作。二是通过WIFI导出,在无线升级界面下长按右键,触发WIFI导出日志U盘的操作。同时,还可以通过无线升级界面长按下键,进入WIFI远程调试模式,配合服务器端应程序,实时传输仪表日志信息,便于开发人员远程分析。

Claims (7)

1.全液晶仪表记录程序异常数据的方法,其特征在于,该方法包括以下步骤:
利用虚拟机执行双内核策略,在程序崩溃、系统未崩溃时通过主内核保存异常数据,在程序崩溃、系统崩溃时通过监视内核保存异常数据,以供后续分析全液晶仪表存在的问题;
主内核的运行流程包括:
A1、启动主内核;
A2、定时记录日志文件;
A3、判断程序是否崩溃,
若程序未崩溃,返回执行步骤A2;若程序崩溃,则执行步骤A4;
A4、转储主内核定时存储的日志文件;同时,通过回溯跟踪函数backtrace将程序崩溃时的堆栈数据重定向存储至日志文件;并转储dump文件;
监视内核的运行流程包括:
B1、启动监视内核;
B2、定时读取日志文件;
B3、判断两次读取的日志文件是否有变化,
若两次读取的日志文件不相同,表征系统未崩溃,返回执行步骤B2;若两次读取的日志文件相同,表征系统崩溃,则执行步骤B4;
B4、转储主内核定时存储的日志文件,并转储dump文件。
2.根据权利要求1所述全液晶仪表记录程序异常数据的方法,其特征在于,步骤A2中主内核定时记录日志文件的过程为:
当应用程序启动后,以固定的时间间隔存储信息以生成日志文件,每组信息均加上时间戳,每组信息记录完毕后插入换行符,以分隔开相邻两组信息。
3.根据权利要求2所述全液晶仪表记录程序异常数据的方法,其特征在于,存储的信息包括内存使用量、CPU负载率、GPU负载率、系统时间、芯片温度、按键操作、功能模块使用情况和串口接收情况数据。
4.根据权利要求1所述全液晶仪表记录程序异常数据的方法,其特征在于,所述双内核策略为:开机,boot引导内核启动,由虚拟机在该内核中虚拟划分出主内核和监视内核,并硬件隔离开两个内核。
5.根据权利要求1所述全液晶仪表记录程序异常数据的方法,其特征在于,异常数据通过U盘导出,或通过WIFI导出。
6.根据权利要求1所述全液晶仪表记录程序异常数据的方法,其特征在于,步骤A3中判断程序是否崩溃的方法为:当主内核捕捉到程序崩溃信号时判定其为程序崩溃。
7.根据权利要求1所述全液晶仪表记录程序异常数据的方法,其特征在于,步骤B3中判断两次读取的日志文件是否有变化的方法为:判断两次读取的日志文件行数是否相同,若相同,表征主内核正常运行,正常存储日志文件;若不相同,则表征主内核崩溃,不再存储日志文件。
CN202111558125.2A 2021-12-07 2021-12-07 全液晶仪表记录程序异常数据的方法 Pending CN114237825A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111558125.2A CN114237825A (zh) 2021-12-07 2021-12-07 全液晶仪表记录程序异常数据的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111558125.2A CN114237825A (zh) 2021-12-07 2021-12-07 全液晶仪表记录程序异常数据的方法

Publications (1)

Publication Number Publication Date
CN114237825A true CN114237825A (zh) 2022-03-25

Family

ID=80758776

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111558125.2A Pending CN114237825A (zh) 2021-12-07 2021-12-07 全液晶仪表记录程序异常数据的方法

Country Status (1)

Country Link
CN (1) CN114237825A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115292260A (zh) * 2022-10-10 2022-11-04 深圳市广和通无线通信软件有限公司 一种系统运行维护处理方法、装置、设备及介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115292260A (zh) * 2022-10-10 2022-11-04 深圳市广和通无线通信软件有限公司 一种系统运行维护处理方法、装置、设备及介质

Similar Documents

Publication Publication Date Title
CN111756575B (zh) 存储服务器的性能分析方法及装置、电子设备
CN110221983B (zh) 测试方法、装置、计算机可读存储介质和计算机设备
US7266810B2 (en) Runtime profiling of platform-independent software applications
US9747182B2 (en) System and method for in-service diagnostics based on health signatures
US20160070500A1 (en) System, Method, and Computer Program Product for Detecting Access to a Memory Device
CN103577328A (zh) 一种应用的性能分析方法及装置
CN113946499A (zh) 一种微服务链路跟踪及性能分析方法、系统、设备及应用
US11113385B2 (en) Communicating trace information between security zones
CN112181815A (zh) 基于Python的异常捕获方法、装置及计算机可读存储介质
US20190114246A1 (en) Method for replicating production behaviours in a development environment
CN114201408A (zh) 回归测试方法、装置、计算机设备及存储介质
CN113468009A (zh) 一种压力测试方法、装置、电子设备及存储介质
CN114237825A (zh) 全液晶仪表记录程序异常数据的方法
CN112527568A (zh) 数据流量测试方法、装置、电子设备及存储介质
CN107273251A (zh) 一种在生产环境下Rack机柜JBOD存储的测试方法
CN112133357B (zh) 一种eMMC的测试方法及装置
CN103631739A (zh) 嵌入式系统的定位分析方法和嵌入式系统
CN104750041B (zh) WinCE系统中的异常监控方法和系统
CN112612697A (zh) 一种基于字节码技术的软件缺陷测试定位方法及系统
CN115114117B (zh) 数据记录方法和数据记录装置
CN116361111A (zh) 一种数据获取方法、装置及电子设备
US10970442B1 (en) Method of debugging hardware and firmware of data storage
CN112732522A (zh) 一种车载mcu可配置日志存储解析方法和系统
CN103778048A (zh) 移动终端测试方法和系统
CN112213980A (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