CN108121627A - 一种VxWorks操作系统调试方法 - Google Patents

一种VxWorks操作系统调试方法 Download PDF

Info

Publication number
CN108121627A
CN108121627A CN201711322368.XA CN201711322368A CN108121627A CN 108121627 A CN108121627 A CN 108121627A CN 201711322368 A CN201711322368 A CN 201711322368A CN 108121627 A CN108121627 A CN 108121627A
Authority
CN
China
Prior art keywords
operating system
vxworks operating
debugging
module
mistake
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
Application number
CN201711322368.XA
Other languages
English (en)
Other versions
CN108121627B (zh
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.)
Suzhou Changfeng Aviation Electronics Co Ltd
Original Assignee
Suzhou Changfeng Aviation Electronics 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 Suzhou Changfeng Aviation Electronics Co Ltd filed Critical Suzhou Changfeng Aviation Electronics Co Ltd
Priority to CN201711322368.XA priority Critical patent/CN108121627B/zh
Publication of CN108121627A publication Critical patent/CN108121627A/zh
Application granted granted Critical
Publication of CN108121627B publication Critical patent/CN108121627B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2289Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by configuration test
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3624Software debugging by performing operations on the source code, e.g. via a compiler

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明揭示了一种VxWorks操作系统调试方法,包括以下步骤:在VxWorks操作系统的BSP代码中增加调试驱动,随VxWorks操作系统编译,在VxWorks操作系统的第一条C语言代码处,调用调试驱动的初始化模块完成其初始化;在需要调试的BSP代码后,增加调试驱动的错误定位模块,错误定位模块反应出相应BSP代码执行的结果;修改BSP代码中的错误,直至关闭所有错误,完成VxWorks操作系统的调试。本发明可应用于不同CPU类型的VxWorks操作系统的调试,方法简单。采用本发明不需要额外的仿真器开销,降低了设计成本。无须使用仿真器调试后,硬件单板可以减少JTAG接口的设计,有利于产品小型化发展。

Description

一种VxWorks操作系统调试方法
技术领域
本发明涉及一种系统调试方法,尤其涉及一种VxWorks操作系统调试方法,属于操作系统调试方法的技术领域。
背景技术
VxWorks是由风河公司推出的一款适用于所有主流CPU目标平台的高性能强实时嵌入式操作系统,具有出色的可伸缩、可裁剪和高可靠性,广泛应用于国内航空系统。VxWorks操作系统的开发调试一直是产品型号开发中的关键工作,由于VxWorks操作系统与底层硬件紧密关联,使得VxWorks操作系统的开发调试工作异常复杂困难。
风河公司提供专用仿真器用于VxWorks操作系统的调试,但仿真器使用有一定的局限性,首先,仿真器是专用的,不能适用于所有的硬件CPU平台;其次,风河仿真器使用比较复杂,需要配置一系列的配置文件,才能正常使用仿真器。
另一种VxWorks调试方法是通过硬件点灯,判断VxWorks的运行流程,定位底层驱动配置错误,达到调试VxWorks操作系统的目的,这种方法需要额外的硬件开销。对于没有点灯模块的硬件单板,显然,这种方法不适用。
发明内容
本发明的目的是解决上述现有技术的不足,传统的VxWorks操作系统调试需要采用专用仿真器或采用特定硬件单板的问题,提供一种VxWorks操作系统调试方法。
为了达到上述目的,本发明所采用的技术方案为:
一种VxWorks操作系统调试方法,其特征在于包括以下步骤:
步骤a,在VxWorks操作系统的BSP代码中增加调试驱动,随VxWorks操作系统编译,在VxWorks操作系统的第一条C语言代码处,调用调试驱动的初始化模块完成其初始化;
步骤b,在需要调试的BSP代码后,增加调试驱动的错误定位模块,错误定位模块反应出相应BSP代码执行的结果;
步骤c,修改BSP代码中的错误,直至关闭所有错误,完成VxWorks操作系统的调试。
进一步地,所述步骤a中,初始化模块完成硬件单板主CPU硬件模块的初始化,使之具有信息输出功能。
进一步地,所述步骤b中,错误定位模块根据BSP代码的执行结果,输出对应的错误信息。
进一步地,所述步骤b中,需要调试的BSP代码位于VxWorks操作系统的控制台初始化完毕代码之前,位于控制台初始化完毕之后的代码使用控制台输出信息,调试驱动完成控制台无法使用时的信息输出。
进一步地,所述步骤c中,关闭所有错误是指VxWorks操作系统启动过程中的软硬件配置达到预期目的。
本发明的有益效果主要体现在:
1. 可应用于不同CPU类型的VxWorks操作系统的调试,方法简单。
2. 采用本发明不需要额外的仿真器开销,降低了设计成本。
3. 无须使用仿真器调试后,硬件单板可以减少JTAG接口的设计,有利于产品小型化发展。
附图说明
图1是本发明一种VxWorks操作系统中调试驱动的结构示意图。
图2是本发明中调试驱动在VxWorks操作系统启动过程中的顺序位置示意图。
图3是本发明一种VxWorks操作系统中调试运行流程图。
具体实施方式
本发明提供一种VxWorks操作系统调试方法。以下结合附图对本发明技术方案进行详细描述,以使其更易于理解和掌握。
一种VxWorks操作系统调试方法,包括以下步骤:
步骤a,在VxWorks操作系统的BSP代码中增加调试驱动,随VxWorks操作系统编译,在VxWorks操作系统的第一条C语言代码处,调用调试驱动的初始化模块完成其初始化;
步骤b,在需要调试的BSP代码后,增加调试驱动的错误定位模块,错误定位模块反应出相应BSP代码执行的结果;
步骤c,修改BSP代码中的错误,直至关闭所有错误,完成VxWorks操作系统的调试。
其中,步骤a中,初始化模块完成硬件单板主CPU硬件模块的初始化,使之具有信息输出功能。
步骤b中,错误定位模块根据BSP代码的执行结果,输出对应的错误信息。
步骤b中,需要调试的BSP代码位于VxWorks操作系统的控制台初始化完毕代码之前,位于控制台初始化完毕之后的代码使用控制台输出信息,调试驱动完成控制台无法使用时的信息输出。
步骤c中,关闭所有错误是指VxWorks操作系统启动过程中的软硬件配置达到预期目的
如图1所示,调试驱动由初始化模块和错误定位模块组成,本实施例采用MPC8548为主CPU,初始化模块完成UART0的硬件初始化,包括UART0的基本参数配置以及UART0的信息输出功能配置,基本参数包括波特率、数据位、校验等,基本参数及信息输出功能均通过配置寄存器实现;错误定位模块根据输入的代码执行状态,向UART0输出预定义的信息。如果造成系统复位,可以根据信息是否输出,判断造成VxWorks操作系统复位的代码位置。
如图2所示,初始化模块位于VxWorks操作系统入口后,在本实施例中,位于系统硬件初始化函数sysHwInit的第一条语句;错误定位模块位于每一句需要调试的代码后,当VxWorks操作系统控制台初始化完毕后,调试驱动的工作完成,操作系统的信息输出由控制台完成。
如图3所示,本实施例使用本发明的VxWorks操作系统调试运行,有如下步骤:
步骤301:硬件上电或复位,操作系统boot程序运行;
步骤302:操作系统运行,执行系统硬件初始化前的必要初始化,如关闭cache等;
步骤303:执行初始化模块,完成UART0的基本参数配置和信息输出功能配置;
步骤304:执行硬件驱动代码,如果是致命错误,将会引起系统复位,执行步骤301,没有致命错误,执行步骤305;
步骤305:错误定位模块通过UART0输出信息,重复执行步骤304,直至所有硬件驱动代码执行完毕后,执行步骤306;
步骤306:操作系统控制台初始化完毕。
需要指出的是,步骤304中的硬件驱动代码,泛指VxWorks操作系统控制台初始化完毕之前的所有代码,包含一些与具体硬件配置有关的必要代码。
VxWorks操作系统在控制台初始化完毕之前没有任何的信息输出方式,而由于VxWorks操作系统的特性,控制台初始化完毕位于整个系统靠后的位置,之前任意代码的错误都会导致系统无法启动或者复位,本发明的调试驱动覆盖了VxWorks操作系统信息输出的盲区,使得整个调试过程对软件设计者可控,降低了软件设计者操作系统开发调试的难度。本发明提出的方法可以应用于多种CPU的VxWorks操作系统调试。
以上对本发明的技术方案进行了充分描述,需要说明的是,本发明的具体实施方式并不受上述描述的限制,本领域的普通技术人员依据本发明的精神实质在结构、方法或功能等方面采用等同变换或者等效变换而形成的所有技术方案,均落在本发明的保护范围之内。

Claims (5)

1.一种VxWorks操作系统调试方法,其特征在于包括以下步骤:
步骤a,在VxWorks操作系统的BSP代码中增加调试驱动,随VxWorks操作系统编译,在VxWorks操作系统的第一条C语言代码处,调用调试驱动的初始化模块完成其初始化;
步骤b,在需要调试的BSP代码后,增加调试驱动的错误定位模块,错误定位模块反应出相应BSP代码执行的结果;
步骤c,修改BSP代码中的错误,直至关闭所有错误,完成VxWorks操作系统的调试。
2.根据权利要求1所述的一种VxWorks操作系统调试方法,其特征在于:
所述步骤a中,初始化模块完成硬件单板主CPU硬件模块的初始化,使之具有信息输出功能。
3.根据权利要求1所述的一种VxWorks操作系统调试方法,其特征在于:
所述步骤b中,错误定位模块根据BSP代码的执行结果,输出对应的错误信息。
4.根据权利要求1所述的一种VxWorks操作系统调试方法,其特征在于:
所述步骤b中,需要调试的BSP代码位于VxWorks操作系统的控制台初始化完毕代码之前,位于控制台初始化完毕之后的代码使用控制台输出信息,调试驱动完成控制台无法使用时的信息输出。
5.根据权利要求1所述的一种VxWorks操作系统调试方法,其特征在于:
所述步骤c中,关闭所有错误是指VxWorks操作系统启动过程中的软硬件配置达到预期目的。
CN201711322368.XA 2017-12-13 2017-12-13 一种VxWorks操作系统调试方法 Active CN108121627B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711322368.XA CN108121627B (zh) 2017-12-13 2017-12-13 一种VxWorks操作系统调试方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711322368.XA CN108121627B (zh) 2017-12-13 2017-12-13 一种VxWorks操作系统调试方法

Publications (2)

Publication Number Publication Date
CN108121627A true CN108121627A (zh) 2018-06-05
CN108121627B CN108121627B (zh) 2021-03-09

Family

ID=62229715

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711322368.XA Active CN108121627B (zh) 2017-12-13 2017-12-13 一种VxWorks操作系统调试方法

Country Status (1)

Country Link
CN (1) CN108121627B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113238898A (zh) * 2021-04-30 2021-08-10 西南电子技术研究所(中国电子科技集团公司第十研究所) 多任务运行状态与通信接口协同监视调试方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1632745A (zh) * 2003-12-22 2005-06-29 中国电子科技集团公司第三十研究所 运用ide接口的多个设备的文件系统操作方法
CN101170438A (zh) * 2007-11-13 2008-04-30 中兴通讯股份有限公司 一种远程串口调试方法及其系统
CN101329631A (zh) * 2007-06-21 2008-12-24 大唐移动通信设备有限公司 一种嵌入式系统自动检测和恢复启动的方法及装置
US20100146504A1 (en) * 2008-12-10 2010-06-10 Chang Bin Tang Virtual mobile infrastructure and its base platform
US20150278867A1 (en) * 2014-03-31 2015-10-01 Yext, Inc. Beacon device for enhancing measurements of the effecitiveness of mobile notifications
CN106648615A (zh) * 2016-11-07 2017-05-10 中国航空无线电电子研究所 一种基于VxWorks的BSP代码开发系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1632745A (zh) * 2003-12-22 2005-06-29 中国电子科技集团公司第三十研究所 运用ide接口的多个设备的文件系统操作方法
CN101329631A (zh) * 2007-06-21 2008-12-24 大唐移动通信设备有限公司 一种嵌入式系统自动检测和恢复启动的方法及装置
CN101170438A (zh) * 2007-11-13 2008-04-30 中兴通讯股份有限公司 一种远程串口调试方法及其系统
US20100146504A1 (en) * 2008-12-10 2010-06-10 Chang Bin Tang Virtual mobile infrastructure and its base platform
US20150278867A1 (en) * 2014-03-31 2015-10-01 Yext, Inc. Beacon device for enhancing measurements of the effecitiveness of mobile notifications
CN106648615A (zh) * 2016-11-07 2017-05-10 中国航空无线电电子研究所 一种基于VxWorks的BSP代码开发系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
MAMAMIYA: "《BSP如何调试?BSP到底是什么?》", 《HTTPS://BBS.CSDN.NET/TOPICS/350049316》 *
怯肇乾: "《基于底层硬件的软件设计》", 31 August 2008 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113238898A (zh) * 2021-04-30 2021-08-10 西南电子技术研究所(中国电子科技集团公司第十研究所) 多任务运行状态与通信接口协同监视调试方法
CN113238898B (zh) * 2021-04-30 2023-06-06 西南电子技术研究所(中国电子科技集团公司第十研究所) 多任务运行状态与通信接口协同监视调试方法

Also Published As

Publication number Publication date
CN108121627B (zh) 2021-03-09

Similar Documents

Publication Publication Date Title
CN110865971B (zh) Soc芯片的验证系统及其方法
CN109508202B (zh) 嵌入式操作系统的驱动开发系统、方法及介质
CN102033770B (zh) 移动终端的触摸屏固件升级方法及装置
CN100476837C (zh) 一种支持随机指令测试的微处理器fpga验证装置
CN104268052B (zh) 一种基于ITP工具的Memory Rank Spare测试方法
WO2006133106A3 (en) System and methods for functional testing of embedded processor-based systems
WO2005111801A3 (en) Apparatus and method for improving emulation speed of high-level languages in on-chip emulation systems
CN110209419A (zh) 一种基于can总线的嵌入式dsp设备升级方法及装置
US20090089758A1 (en) Testing and debugging of dynamic binary translation
CN100405323C (zh) 一种在指令级随机测试中支持ejtag测试的实现方法
CN106980597A (zh) 片上系统验证方法及验证系统
CN108121627A (zh) 一种VxWorks操作系统调试方法
CN107193738A (zh) 一种基于功能点覆盖动态调整随机约束的验证方法
CN106649094A (zh) 一种基于EventViewer开发过程中的测试方法
US20090112554A1 (en) Test Bench, Method, and Computer Program Product for Performing a Test Case on an Integrated Circuit
CN104035757A (zh) 基于MIPS处理器的u-boot移植的实现方法
CN114880177A (zh) 固态硬盘的整机异常掉电测试方法、装置和计算机设备
CN110688269A (zh) 采用axi总线接口的rtl代码自动化验证装置及方法
US6751569B2 (en) System and method for receiving information from a test apparatus
CN2904109Y (zh) 袖珍型51系列单片机仿真器
CN102789418B (zh) 处理器功能仿真模型生成装置、方法及功能验证方法
CN111124887B (zh) 一种risc-v debug系统的仿真验证方法
CN106909382A (zh) 输出不同类型系统启动信息的方法及装置
US20020104040A1 (en) System and method for initiating a manufacturing mode
CN113010361B (zh) 全可编程soc芯片的mio功能快速验证方法

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
GR01 Patent grant
GR01 Patent grant