驱动程序调试系统及方法技术方案

技术编号:7368407 阅读:242 留言:0更新日期:2012-05-27 05:34
本发明专利技术提供一种驱动程序调试方法,该方法应用于存储有驱动程序的计算机中,所述驱动程序中存储有分类后的调试信息,该方法包括以下步骤:在计算机的操作系统中创建一个以文件形式存在的接口;通过所述接口将计算机用户空间的命令发送至计算机的内核空间;当内核空间成功接收到用户空间发送来的命令时,解析所述命令以得到调试信息控制函数名称和参数;解析所述命令中的参数,以得到所述命令中调试信息的类别及调试信息开关的状态;执行与所述调试信息控制函数名称相应的调试信息控制函数,并根据所述调试信息开关的状态,控制驱动程序中与所述调试信息的类别对应的调试信息的输出。本发明专利技术还提供一种驱动程序调试系统。

【技术实现步骤摘要】

本专利技术涉及一种测试系统及方法,尤其涉及一种。
技术介绍
对于服务器和存储系统的软件诊断程序的开发,很多芯片的测试程序必需依赖于运行在内核空间的驱动程序。大部分厂商开发的驱动程序中,调试信息都是用宏的形式预定义,但是,厂商在驱动程序发行的时候会注释掉调试信息,使得用户不能直接控制驱动程序中的调试信息。另外,在工厂生产模式中,没有驱动程序源码能直接调试,而且即使有源码能直接调试,也需要经过一个烦琐且耗时间的过程卸载驱动、修改驱动、重新编译驱动程序和重新加载驱动。因此,在用户空间不能直接控制内核空间的驱动程序,给调试驱动程序带来了一定的阻力。
技术实现思路
鉴于以上内容,有必要提供一种驱动程序调试系统,可以根据用户输入的命令,控制内核空间的驱动程序中指定类别的调试信息的输出。另外,还有必要提供一种驱动程序调试方法,可以根据用户输入的命令,控制内核空间的驱动程序中指定类别的调试信息的输出。一种驱动程序调试系统,该系统运行于存储有驱动程序的计算机中,所述驱动程序中存储有分类后的调试信息,该系统包括接口创建模块,用于在计算机的操作系统中创建一个以文件形式存在的接口 ;命令发送模块,用于通过所述接口将计算机用户空间的命令发送至计算机的内核空间;函数解析模块,用于当内核空间成功接收到用户空间发送来的命令时,解析所述命令以得到调试信息控制函数名称和参数,及解析所述命令中的参数,以得到所述命令中调试信息的类别及调试信息开关的状态;调试信息控制模块,用于执行与所述调试信息控制函数名称相应的调试信息控制函数,并根据所述调试信息开关的状态,控制驱动程序中与所述调试信息的类别对应的调试信息的输出。一种驱动程序调试方法,该方法应用于存储有驱动程序的计算机中,所述驱动程序中存储有分类后的调试信息,该方法包括以下步骤在计算机的操作系统中创建一个以文件形式存在的接口;通过所述接口将计算机用户空间的命令发送至计算机的内核空间; 当内核空间成功接收到用户空间发送来的命令时,解析所述命令以得到调试信息控制函数名称和参数;解析所述命令中的参数,以得到所述命令中调试信息的类别及调试信息开关的状态;执行与所述调试信息控制函数名称相应的调试信息控制函数,并根据所述调试信息开关的状态,控制驱动程序中与所述调试信息的类别对应的调试信息的输出。所述,可以根据用户输入的命令,控制内核空间的驱动程序中指定类别的调试信息的输出,实现了在应用层直观、快速的调试驱动层的程序,操作方便,提高了程序调试的效率。附图说明图1是本专利技术驱动程序调试系统较佳实施例的应用环境图。图2是图1中驱动程序调试系统的功能模块图。图3是本专利技术驱动程序调试方法较佳实施例的作业流程图。主要元件符号说明权利要求1.一种驱动程序调试系统,该系统运行于存储有驱动程序的计算机中,其特征在于,所述驱动程序中存储有分类后的调试信息,该系统包括接口创建模块,用于在计算机的操作系统中创建一个以文件形式存在的接口 ;命令发送模块,用于通过所述接口将计算机用户空间的命令发送至计算机的内核空间;函数解析模块,用于当内核空间成功接收到用户空间发送来的命令时,解析所述命令以得到调试信息控制函数名称和参数,及解析所述命令中的参数,以得到所述命令中调试信息的类别及调试信息开关的状态;调试信息控制模块,用于执行与所述调试信息控制函数名称相应的调试信息控制函数,并根据所述调试信息开关的状态,控制驱动程序中与所述调试信息的类别对应的调试信息的输出。2.如权利要求1所述的驱动程序调试系统,其特征在于,该系统还包括函数地址查询模块,用于根据调试信息控制函数的名称在内核空间中查询所述调试信息控制函数的地址;提示模块,用于当内核空间没有成功接收到用户空间发送来的命令,或者在内核空间中没有查询到调试信息控制函数的地址时,发出错误警告以提示用户进行相应的处理。3.如权利要求1所述的驱动程序调试系统,其特征在于,所述调试信息开关的状态包括开启状态和关闭状态。4.如权利要求3所述的驱动程序调试系统,其特征在于,所述调试信息控制模块在所述调试信息开关的状态为开启状态时,从驱动程序中输出与所述调试信息的类别对应的调试信息;在所述调试信息开关的状态为关闭状态时,不从驱动程序中输出与所述调试信息的类别对应的调试信息。5.一种驱动程序调试方法,该方法应用于存储有驱动程序的计算机中,其特征在于,所述驱动程序中存储有分类后的调试信息,该方法包括以下步骤在计算机的操作系统中创建一个以文件形式存在的接口;通过所述接口将计算机用户空间的命令发送至计算机的内核空间;当内核空间成功接收到用户空间发送来的命令时,解析所述命令以得到调试信息控制函数名称和参数;解析所述命令中的参数,以得到所述命令中调试信息的类别及调试信息开关的状态;执行与所述调试信息控制函数名称相应的调试信息控制函数,并根据所述调试信息开关的状态,控制驱动程序中与所述调试信息的类别对应的调试信息的输出。6.如权利要求5所述的驱动程序调试方法,其特征在于,在通过所述接口将计算机用户空间的命令发送至计算机的内核空间的步骤之后,还包括步骤根据调试信息控制函数的名称在内核空间中查询所述调试信息控制函数的地址;当内核空间没有成功接收到用户空间发送来的命令,或者在内核空间中没有查询到调试信息控制函数的地址时,发出错误警告以提示用户进行相应的处理。7.如权利要求5所述的驱动程序调试方法,其特征在于,所述调试信息开关的状态包括开启状态和关闭状态。8.如权利要求7所述的驱动程序调试方法,其特征在于,所述根据所述调试信息开关的状态,控制驱动程序中与所述调试信息的类别对应的调试信息的输出的步骤包括在所述调试信息开关的状态为开启状态时,从驱动程序中输出与所述调试信息的类别对应的调试信息;在所述调试信息开关的状态为关闭状态时,不从驱动程序输出与所述调试信息的类别对应的调试信息。全文摘要本专利技术提供一种驱动程序调试方法,该方法应用于存储有驱动程序的计算机中,所述驱动程序中存储有分类后的调试信息,该方法包括以下步骤在计算机的操作系统中创建一个以文件形式存在的接口;通过所述接口将计算机用户空间的命令发送至计算机的内核空间;当内核空间成功接收到用户空间发送来的命令时,解析所述命令以得到调试信息控制函数名称和参数;解析所述命令中的参数,以得到所述命令中调试信息的类别及调试信息开关的状态;执行与所述调试信息控制函数名称相应的调试信息控制函数,并根据所述调试信息开关的状态,控制驱动程序中与所述调试信息的类别对应的调试信息的输出。本专利技术还提供一种驱动程序调试系统。文档编号G06F11/36GK102467447SQ20101054638公开日2012年5月23日 申请日期2010年11月16日 优先权日2010年11月16日专利技术者童钰 申请人:鸿富锦精密工业(深圳)有限公司, 鸿海精密工业股份有限公司本文档来自技高网...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:童钰
申请(专利权)人:鸿富锦精密工业深圳有限公司鸿海精密工业股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术