CN1523503A - 一种嵌入式实时操作系统故障分析定位系统和方法 - Google Patents
一种嵌入式实时操作系统故障分析定位系统和方法 Download PDFInfo
- Publication number
- CN1523503A CN1523503A CNA031563848A CN03156384A CN1523503A CN 1523503 A CN1523503 A CN 1523503A CN A031563848 A CNA031563848 A CN A031563848A CN 03156384 A CN03156384 A CN 03156384A CN 1523503 A CN1523503 A CN 1523503A
- Authority
- CN
- China
- Prior art keywords
- viewer
- variable
- module
- communication link
- fault
- 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.)
- Granted
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本发明公开了一种嵌入式实时操作系统故障分析定位系统和方法,分析定位系统包括:观察器模块、通讯链路、单板软件观察器代理模块;采用本发明所述的故障分析定位系统和方法,可以方便地在各种商用现场进行故障分析定位,通过对相关变量的分析,确定故障发生的原因,及时排除故障。可广泛应用于不支持显示设备的单板上嵌入式实时操作系统下运行软件的故障分析定位。
Description
技术领域
本发明涉及数据通信领域,具体涉及通信系统中嵌入式实时操作系统下单板上运行软件故障分析定位系统和方法,更具体地涉及不支持显示设备的单板上嵌入式实时操作系统(例如PSOS)下运行软件的故障分析定位方法。
背景技术
在嵌入式实时操作系统(例如PSOS),实际运行中不带显示终端,除了单板上有限的几个闪灯表示运行状态之外,无法得知具体细节的当前运行状况。当故障发生时,单板闪灯可能有显示不正常状态,也可能什么异常都没有,在复杂的实际商用运行现场,这都无法进行故障分析定位。
而商用现场对于问题的解决是非常迫切紧急的,这就需要对故障有一个快捷迅速又方便实现的方法。关键变量这个时候就可以揭示故障发生原因的所在,这个时候如何得到关键变量就成为了一个故障分析和定位的关键。而在上面涉及的嵌入式实时操作系统中,实际商用运行过程的单板上软件变量信息又无法进行获得。所以需要提供一个实际运行过程中在线对单板软件变量进行观察的系统和方法。通过专利检索,尚未有有效系统和方法。
发明内容
本发明要解决的技术问题在于,针对故障发生时所涉及的系统输入、输出和流程中间关键全局变量提供一个可以在线故障分析和定位的系统和方法,顺着业务流程步骤,检查每个步骤的输入和输出,如果这个步骤的输入正确,而输出异常,那么故障就定位在这个步骤的实现函数中,这个方法可以通用在嵌入式实时操作系统上运行的软件。
本发明提供的故障分析定位系统包括:观察器模块、通讯链路、单板软件观察器代理模块,
所述观察器模块包括一个由被测单板的带有变量符号表信息文件生成的全局变量信息数据库和一个操作界面,用户可以在所述界面中选择需要操作的变量名称,通过通讯链路与单板软件观察器代理模块进行消息交互;
所述全局变量信息数据库包括该变量的名称、变量类型以及变量地址;
所述通讯链路包括观察器模块与单板软件观察器代理模块之间的物理链路、利用所述物理链路进行数据传输和接收观察器模块上数据通讯模块和单板软件中的数据通讯模块;
所述单板软件观察器代理模块接收观察器模块通过通讯链路传来的指令,读取被测变量值,并将信息通过通讯链路传回观察器模块,观察器模块根据被测变量值的正确与否实现对系统的故障分析定位。
根据本发明所述系统实现故障分析定位的方法包括以下处理步骤:
1.对于发生故障的流程分解到具体每个实现步骤的函数f1到fn,其中n≥1且为正整数;确定函数fm(m≥1且m≤n)的输入变量xmi以及输出变量ymo;其中ymo=x(m+1)i,即上一个步骤函数的输出为下一个步骤函数的输入;
2.所述观察器模块从f1开始检查x1i以及y1o;如果x1i错误,说明整个系统的外部输入有问题发生的故障,系统本身没有问题,结束;否则就继续检查y1o,如果y1o错误,那么故障就定位在f1,结束;如果x1i和y1o都正确,那么m=2;
3.所述观察器模块检查fm(m≥2且m<n)的输出ymo;如果ymo错误,那么故障定位在fm,结束;否则m=m+1;
4.如果m=n,那么故障定位在fn;否则重复步骤3。
采用本发明所述的故障分析定位系统和方法,可以方便地在各种商用现场进行故障分析定位,通过对相关变量的分析,确定故障发生的原因,及时排除故障。
附图说明
图1是本发明的装置组成图;
图2是本发明的实现流程图;
图3是本发明的观察器处理流程图。
具体实施方式
其中类似的部件用相同的参考字符来标识。本发明将针对在PSOS实时操作系统中的应用来描述,但是不限于这样的用途。更确切地说,所提供的实施方式仅是为了说明本发明的具体应用过程。
图1所示为本发明装置的组成。该装置可以分成三部分组成:观察器模块101、通讯链路102和单板软件观察器代理模块103。
观察器模块101:一个运行于PC机上的软件,该软件通过单板运行软件的带有变量符号表信息文件(在PSOS中为ELF文件)导出变量符号表文本文件,观察器程序根据文件中变量符合表信息格式生成一个全局变量信息数据库,数据库包括该变量的名称,变量类型以及变量地址,它还提供一个操作界面,可以让用户选择想要操作的变量名称,并且将用户界面的指令翻译成单板运行软件观察器代理可以认识的指令并发送该指令,同时接收单板运行软件代理的回应变量值显示在界面上通知用户;
通讯链路102:实现观察器和单板软件观察器代理之间的数据通讯。物理上可以是PC机和单板传输数据的物理链路,例如PC机和单板的RS232接口以及它们之间的连线;除了物理链路,通讯链路还包括利用物理链路进行数据传输和接收的PC机上数据通讯模块和单板软件中的数据通讯模块;
单板软件观察器代理模块103:接收观察器通过通讯链路传来的指令,根据指令中的变量地址,变量类型,对变量地址读取变量值;将读取的变量值组成回应,通过通讯链路传回给观察器。
观察器模块包括PC一台、操作系统以及运行于其上的软件,这里PC机以及操作系统不详细介绍,以后提到观察器101指运行的软件。它还包括由观察器101建立的单板软件全局变量数据库111,是用户对单板软件变量进行观察和修改操作的终端。
通讯链路102完成观察器模块101和观察器代理模块103之间的数据传输,包括PC机操作系统上的数据接收和发送模块,单板软件上的数据接收和发送模块,以及物理链路。物理链路形式多样,可以是PC上RS232接口和单板上RS232接口以及两个接口之间的连线,这里也不详细介绍。
观察器代理103完成接收观察器来的指令并执行,完成指令后回应。它是单板软件的一部分,完成管理器的代理工作。
图1中112指观察器模块101发送数据给通讯链路102,然后进行123指通讯链路102将数据传给观察器代理模块103。132指观察器代理模块103将数据传给通讯链路102,然后进行121指通讯链路102将数据传给观察器模块101。
图2为本发明的故障分析定位流程图。首先是步骤201故障发生。步骤202将发生故障的流程分解为具体每个实现步骤的函数f1到fn,其中n≥1且为正整数。步骤203确定函数fm(m≥1且m≤n)的输入变量Xmi以及输出变量Ymo;其中Ymo=X(m+1)i,即上一个步骤函数的输出为下一个步骤函数的输入;X1i表示这个系统的输入,Yno表示这个系统的输出。故障就是Yno指不正确,未达到预定的要求。步骤204将m=1,即从第一个函数f1开始。步骤205使用观察器获取Xmi,如何获取将在图3中详细介绍。步骤206判断Xmi是否正确,如果不正确进入步骤207定位故障出在系统的输入,本系统本身没有问题,流程结束;如果正确进入步骤208使用观察器获取Ymo。步骤209判断Ymo是否正确,如果不正确进入步骤210定位故障出在函数fm,流程结束;如果正确进入步骤211使m=m+1。步骤212判断m是否等于n,如果相等则进入步骤213定位故障出在fn,流程结束;否则返回步骤208。
图3为本发明的观察器处理流程图,同时也是步骤205和步骤208的具体实现。步骤301程序开始。步骤302观察器101根据单板运行软件的ELF文件(带有变量符号表信息)导出具有相应格式的变量符号表信息文本文件,然后识别该文本文件并建立全局变量信息数据库,数据库包括该变量的名称,变量类型以及变量地址。步骤303观察器101接收步骤205或208来的获取变量值请求。步骤304观察器101根据步骤205或208需要查看的变量名称,查询全局变量信息数据库,找出该变量名称对应的变量地址和变量类型,并形成变量观察指令。步骤305观察器101发送该指令通过通讯链路102给观察器代理软件103。步骤306观察器代理软件103根据指令中含有的变量地址和变量类型查询内存,拷贝变量地址开始的一段内存地址(长度由变量类型决定),并将拷贝值(即变量值)通过通讯链路102发送给观察器101。步骤307观察器101接收到变量值。步骤308观察器101将变量值通知用户,完成步骤205或208。
Claims (4)
1.一种嵌入式实时操作系统故障分析定位系统,其特征在于,所述系统包括:观察器模块、通讯链路、单板软件观察器代理模块,
所述观察器模块包括一个由被测单板的带有变量符号表信息文件生成的全局变量信息数据库和一个操作界面,用户可以在所述界面中选择需要操作的变量名称,通过通讯链路与单板软件观察器代理模块进行消息交互;
所述通讯链路包括观察器模块与单板软件观察器代理模块之间的物理链路、利用所述物理链路进行数据传输和接收观察器模块上数据通讯模块和单板软件中的数据通讯模块;
所述单板软件观察器代理模块接收观察器模块通过通讯链路传来的指令,读取被测变量值,并将信息通过通讯链路传回观察器模块,观察器模块根据被测变量值的正确与否实现对系统的故障分析定位。
2.根据权利要求1所述的嵌入式实时操作系统故障分析定位系统,其特征在于,所述全局变量信息数据库包括该变量的名称、变量类型以及变量地址。
3.根据权利要求1或2所述的嵌入式实时操作系统故障分析定位系统,其特征在于,所述单板软件观察器代理模块读取被测变量值,并将信息通过通讯链路传回观察器模块具体是根据指令中的变量地址,变量类型,对变量地址读取变量值;将读取的变量值组成回应,通过通讯链路传回给观察器模块。
4.根据权利要求1所述系统实现嵌入式实时操作系统故障分析定位方法,其特征在于,所述方法包括以下处理步骤:
1)对于发生故障的流程分解到具体每个实现步骤的函数f1到fn,其中n≥1且为正整数;确定函数fm(m≥1且m≤n)的输入变量xmi以及输出变量ymo;其中ymo=x(m+1)i,即上一个步骤函数的输出为下一个步骤函数的输入;
2)所述观察器模块从f1开始检查x1i以及y1o;如果x1i错误,说明整个系统的外部输入有问题发生的故障,系统本身没有问题,结束;否则就继续检查y1o,如果y1o错误,那么故障就定位在f1,结束;如果x1i和y1o都正确,那么m=2;
3)所述观察器模块检查fm(m≥2且m<n)的输出ymo;如果ymo错误,那么故障定位在fm,结束;否则m=m+1;
4)如果m=n,那么故障定位在fn;否则重复步骤3)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB031563848A CN1312587C (zh) | 2003-09-05 | 2003-09-05 | 一种嵌入式实时操作系统故障分析定位系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB031563848A CN1312587C (zh) | 2003-09-05 | 2003-09-05 | 一种嵌入式实时操作系统故障分析定位系统和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1523503A true CN1523503A (zh) | 2004-08-25 |
CN1312587C CN1312587C (zh) | 2007-04-25 |
Family
ID=34287104
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB031563848A Expired - Fee Related CN1312587C (zh) | 2003-09-05 | 2003-09-05 | 一种嵌入式实时操作系统故障分析定位系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1312587C (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100421381C (zh) * | 2004-08-30 | 2008-09-24 | 华为技术有限公司 | 一种获取网络设备运行和故障状态信息的方法及装置 |
CN100442716C (zh) * | 2006-03-03 | 2008-12-10 | 华为技术有限公司 | 一种链路故障诊断方法及系统 |
CN101425038A (zh) * | 2008-12-19 | 2009-05-06 | 北京中星微电子有限公司 | 一种寻找软件错误的方法及系统 |
CN105808398A (zh) * | 2016-03-08 | 2016-07-27 | 浪潮电子信息产业股份有限公司 | 一种快速分析定位硬件异常的方法 |
CN106155899A (zh) * | 2015-04-17 | 2016-11-23 | 比亚迪股份有限公司 | 多媒体程序缺陷的定位方法和系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5915083A (en) * | 1997-02-28 | 1999-06-22 | Vlsi Technology, Inc. | Smart debug interface circuit for efficiently for debugging a software application for a programmable digital processor device |
-
2003
- 2003-09-05 CN CNB031563848A patent/CN1312587C/zh not_active Expired - Fee Related
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100421381C (zh) * | 2004-08-30 | 2008-09-24 | 华为技术有限公司 | 一种获取网络设备运行和故障状态信息的方法及装置 |
CN100442716C (zh) * | 2006-03-03 | 2008-12-10 | 华为技术有限公司 | 一种链路故障诊断方法及系统 |
CN101425038A (zh) * | 2008-12-19 | 2009-05-06 | 北京中星微电子有限公司 | 一种寻找软件错误的方法及系统 |
CN106155899A (zh) * | 2015-04-17 | 2016-11-23 | 比亚迪股份有限公司 | 多媒体程序缺陷的定位方法和系统 |
CN106155899B (zh) * | 2015-04-17 | 2019-02-26 | 比亚迪股份有限公司 | 多媒体程序缺陷的定位方法和系统 |
CN105808398A (zh) * | 2016-03-08 | 2016-07-27 | 浪潮电子信息产业股份有限公司 | 一种快速分析定位硬件异常的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN1312587C (zh) | 2007-04-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6865731B2 (en) | Method and computer program product for testing application program software | |
EP0752670B1 (en) | Method and apparatus for front end navigator and network architecture for performing functions on distributed files in a computer network | |
US5751941A (en) | Object oriented framework for testing software | |
US6453435B1 (en) | Method and apparatus for automated testing of circuit boards | |
WO2007028227A1 (en) | Integrating different programming language debug tools for observing thread execution | |
CN108965052A (zh) | 一种用于装车后的电子控制单元软件调试的数据读取系统 | |
CN1359492A (zh) | 对具有嵌入式操作系统的设备进行测试和确认的系统和方法 | |
CN1425819A (zh) | 绣花机技术支持系统和方法及存储该方法的存储介质 | |
CN111367802B (zh) | web自动化测试方法、装置及计算机可读存储介质 | |
US5335339A (en) | Equipment and method for interactive testing and simulating of a specification of a network system | |
CN112988588B (zh) | 客户端软件调试方法、装置、存储介质及电子设备 | |
CN1523503A (zh) | 一种嵌入式实时操作系统故障分析定位系统和方法 | |
US20110125364A1 (en) | Method and system for diagnosing a malfunction of an automobile | |
KR20070086557A (ko) | 부품 교환 순서 특정 방법 및 프로그램 | |
US7254524B1 (en) | Method and system for a simulation authoring environment implemented in creating a simulation application | |
CN1797366A (zh) | 计算机平台测试方法及系统 | |
US20060129934A1 (en) | Presentation engine | |
CN116521567A (zh) | 一种埋点测试方法、装置、车辆和存储介质 | |
CN115617671A (zh) | 测试脚本的自动生成方法、装置、计算机设备及存储介质 | |
CN1353835A (zh) | 同类系统之间的协议确认 | |
US20210103785A1 (en) | Method and system for displaying equipment fault code diagnostic information | |
JPH1185564A (ja) | ウェブ・ブラウザを使ったデバッグ方法および装置 | |
CN1567201A (zh) | 软件总线和芯片结构的可重构虚拟仪器 | |
CN114189534A (zh) | 一种物联网系统中设备交互软件仿真程序的设计方法 | |
CN116881174A (zh) | 一种ecu应用软件闭环测试方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20070425 Termination date: 20130905 |