• 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
    • / 13
    • 下载费用:30 金币  

    重庆时时彩平刷的公式: 一种操作系统内核调试方法和虚拟调试服务???pdf

    关 键 词:
    一种 操作系统 内核 调试 方法 虚拟 服务 ???
      专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    摘要
    申请专利号:

    CN201180001650.2

    申请日:

    2011.07.06

    公开号:

    CN102301344A

    公开日:

    2011.12.28

    当前法律状态:

    终止

    有效性:

    无权

    法律详情: 未缴年费专利权终止IPC(主分类):G06F 11/36申请日:20110706授权公告日:20131204终止日期:20160706|||授权|||实质审查的生效IPC(主分类):G06F 11/36申请日:20110706|||公开
    IPC分类号: G06F11/36 主分类号: G06F11/36
    申请人: 华为技术有限公司
    发明人: 张超; 李俊
    地址: 518129 中国广东省深圳市龙岗区坂田华为总部办公楼
    优先权:
    专利代理机构: 深圳市深佳知识产权代理事务所(普通合伙) 44285 代理人: 彭愿洁;李文红
    PDF完整版下载: PDF下载
    法律状态
    申请(专利)号:

    CN201180001650.2

    授权公告号:

    |||102301344B||||||

    法律状态公告日:

    2017.08.18|||2013.12.04|||2012.02.15|||2011.12.28

    法律状态类型:

    专利权的终止|||授权|||实质审查的生效|||公开

    摘要

    一种操作系统内核的调试方法和虚拟调试服务???,该方法包括:虚拟调试服务??榻邮罩骺夭僮飨低持械牡魇阅?榉⑺偷牟迦胫辽僖桓龆系愕亩系悴迦肭肭?,断点插入请求中包括插入断点的位置信息;虚拟调试服务??楦荻系悴迦肭肭笾械牟迦攵系愕奈恢眯畔?,在被调试操作系统中的相应位置处插入断点,并将插入断点的位置记录在调试断点信息表中;虚拟调试服务??椴痘癖坏魇圆僮飨低持葱泄讨写シ⒌亩系阋斐?,并将捕获到的断点异常的特征与调试断点信息表中记录的断点的位置进行比较,如果匹配,则暂停被调试操作系统的运行。

    权利要求书

    1.一种操作系统内核的调试方法,其特征在于,虚拟机上运行主控操作
    系统和被调试操作系统,该方法包括:
    虚拟调试服务??榻邮罩骺夭僮飨低持械牡魇阅?榉⑺偷亩系悴迦肭?br />求,所述断点插入请求中包括插入断点的位置信息;
    所述虚拟调试服务??楦荻系悴迦肭肭笾械牟迦攵系愕奈恢眯畔?,在
    被调试操作系统中的相应位置处插入断点,并将插入断点的位置记录在调试
    断点信息表中;
    所述虚拟调试服务??椴痘癖坏魇圆僮飨低持葱泄讨写シ⒌亩系阋?br />常,并将捕获到的断点异常的特征与调试断点信息表中记录的断点的位置进
    行匹配比较,如果匹配,则暂停被调试操作系统的运行。
    2.根据权利要求1所述的操作系统内核的调试方法,其特征在于,还包
    括,当需要进行单步执行调试时,预先判断硬件是否支持单步执行,如果不
    支持,则主控操作系统中的调试??橄蛐槟獾魇苑衲?榉⑺驮诒坏魇圆僮?br />系统执行的每一步均插入断点的断点插入请求。
    3.根据权利要求2所述的操作系统内核的调试方法,其特征在于,还包
    括,如果硬件支持单步执行,则:
    在被调试操作系统运行时,所述虚拟调试服务??榻诵懈帽坏魇圆僮?br />系统的中央处理器中的标志寄存器中用于控制单步执行调试模式开关的标志
    位设置为表示“开启”的状态,以使被调试操作系统在运行每一步后都产生
    单步异常;
    所述虚拟调试服务??椴痘癖坏魇圆僮飨低吃谠诵忻恳徊胶笏牡?br />步异常;
    所述虚拟调试服务??槿啡媳坏魇圆僮飨低吃诵械牡鼻安街葱型瓯虾?,
    则暂停被调试操作系统的运行。
    4.根据权利要求3所述的操作系统内核的调试方法,其特征在于,所述
    用于控制单步执行调试模式开关的标志位为TF标志位。
    5.根据权利要求1至4中,限定比较匹配过程的特征信息,包括异常地
    址和异常向量。
    6.根据权利要求1至4中任意一项所述的操作系统内核的调试方法,其
    特征在于,还包括:在暂停被调试操作系统的运行以后,虚拟调试服务???br />接收主控操作系统中的调试??榉⑺偷牟樵谋坏魇圆僮飨低车淖刺畔⒌牟?br />阅请求,并根据查阅请求,将被调试操作系统的状态信息反馈至主控操作系
    统中的调试???;
    所述被调试操作系统的状态信息包括被调试操作系统的寄存器中的信
    息、堆栈中的信息和全局变量中的任意一个或者任意组合。
    7.一种虚拟调试服务???,其特征在于,其构建在虚拟机中,所述虚拟
    机上运行主控操作系统和被调试操作系统,该虚拟调试服务??榘ǎ?br />
    断点插入请求接收单元,用于接收主控操作系统中的调试??榉⑺偷亩?br />点插入请求,所述断点插入请求中包括插入断点的位置信息;
    断点插入单元,用于根据断点插入请求中的插入断点的位置信息,在被
    调试操作系统中的相应位置处插入断点,并将插入断点的位置记录在调试断
    点信息表中;
    断点异常捕获单元,用于捕获被调试操作系统执行过程中触发的断点异
    常;
    特征比较单元,用于将所述捕获到的断点异常的特征与调试断点信息表
    中记录的断点的位置进行比较,如果匹配成功,则触发暂停单元进行工作;
    暂停单元,用于触发被调试操作系统暂停运行。
    8.根据权利要求7所述的虚拟调试服务???,其特征在于,还包括:单
    步执行支持判断单元,用于在需要进行单步执行调试时,预先判断硬件是否
    支持单步执行;
    逐步断点插入单元,用于在单步执行支持判断单元判断结果为否时,通
    知主控操作系统中的调试??橄蛐槟獾魇苑衲?榉⑺驮诒坏魇圆僮飨低持?br />行的每一步均插入断点的断点插入请求。
    9.根据权利要求8所述的虚拟调试服务???,其特征在于,还包括:
    标志位设置单元,用于在单步执行支持判断单元判断结果为是时,在被
    调试操作系统运行时,将运行该被调试操作系统的中央处理器的标志寄存器
    中用于控制单步执行调试模式开关的标志位设置为表示“开启”的状态,以
    使被调试操作系统在运行每一步后都产生单步异常。
    单步异常捕获单元,用于捕获被调试操作系统在运行每一步后所产生的
    单步异常,当虚拟调试服务??槿啡媳坏魇圆僮飨低吃诵械牡鼻安街葱型瓯?br />后,触发所述暂停单元进行工作。
    10.根据权利要求7至9中任意一项所述的虚拟调试服务???,其特征
    在于,还包括:
    查阅单元,用于在暂停被调试操作系统的运行以后,接收主控操作系统
    中的调试??榉⑺偷牟樵谋坏魇圆僮飨低车淖刺畔⒌牟樵那肭?,并根据该
    查阅请求,将被调试操作系统的状态信息反馈至主控操作系统中的调试???;
    所述被调试操作系统的状态信息包括被调试操作系统的寄存器中的信
    息、堆栈中的信息和全局变量中的任意一个或者任意组合。

    说明书

    一种操作系统内核调试方法和虚拟调试服务???/invention-title>

    技术领域

    本发明涉及操作系统领域,尤其涉及一种基于虚拟化的操作系统内核调
    试方法和虚拟调试服务???。

    背景技术

    一直以来,内核调试都是操作系统内核开发的一个技术瓶颈。现有的
    Linux系统内核调试手段包括KDB、kprobe、pintk、KGDB等,这些内核调
    试手段中大多需要给Linux系统内核植入特定的补丁(Patch)才能进行调试,
    而且而且这种调试方式相当于在操作系统调试自身,因此只能支持很简单的
    调试功能,例如查看内核数据结构、打印现场信息等,无法实现单步调试和
    设置端点等高级调试功能。虽然GDB调试手段可以提供一些高级的调试的功
    能,但是必须由两台主机才能完成调试。

    发明内容

    本发明实施例提供一种操作系统内核调试方法和虚拟调试服务???,以
    解决调试手段单一、调试所需的主机数量多的问题。

    本发明实施例一方面提供一种操作系统内核的调试方法,虚拟机上运行
    主控操作系统和被调试操作系统,该方法包括:

    虚拟调试服务??榻邮罩骺夭僮飨低持械牡魇阅?榉⑺偷牟迦胫辽僖桓?br />断点的断点插入请求,所述断点插入请求中包括插入断点的位置信息;

    虚拟调试服务??楦荻系悴迦肭肭笾械牟迦攵系愕奈恢眯畔?,在被调
    试操作系统中的相应位置处插入断点,并将插入断点的位置记录在调试断点
    信息表中;

    虚拟调试服务??椴痘癖坏魇圆僮飨低持葱泄讨写シ⒌亩系阋斐?,并
    将捕获到的断点异常的特征与调试断点信息表中记录的断点的位置进行比
    较,如果匹配,则暂停被调试操作系统的运行。

    本发明另一方面还提供一种虚拟调试服务???,其构建在虚拟机中,所
    述虚拟机上运行主控操作系统和被调试操作系统,该虚拟调试服务??榘ǎ?br />

    断点插入请求接收单元,用于接收主控操作系统中的调试??榉⑺偷牟?br />入至少一个断点的断点插入请求,所述断点插入请求中包括插入断点的位置
    信息;

    断点插入单元,用于根据断点插入请求中的插入断点的位置信息,在被
    调试操作系统中的相应位置处插入断点,并将插入断点的位置记录在调试断
    点信息表中;

    断点异常捕获单元,用于捕获被调试操作系统执行过程中触发的断点异
    常;

    特征比较单元,用于将所述捕获到的断点异常的特征与调试断点信息表
    中记录的断点的位置进行比较,如果匹配成功,则触发暂停单元进行工作;

    暂停单元,用于触发被调试操作系统暂停运行。

    本发明实施例中在虚拟机中实现一个虚拟调试???,借助该虚拟调试模
    块可以实现对被调试操作系统的断点调试,可选地还可以实现单步执行调试,
    调试的手段更多。而且本发明实施例在进行调试的过程中只需要一台主机即
    可完成。

    附图说明

    图1是本发明实施例提供的操作系统内核的调试方法的流程示意图;

    图2是本发明实施例一中的操作系统内核的调试方法所基于的系统层次
    架构图;

    图3是本发明实施例一提供的操作系统内核的调试方法的流程示意图;

    图4是本发明实施例二提供的操作系统内核的调试方法的流程示意图;

    图5是本发明实施例提供的虚拟调试服务??榈慕峁故疽馔?。

    具体实施方式

    本发明实施例在运行在硬件实体和操作系统之间的虚拟机中实现了一个
    虚拟调试服务(vir_gdbServer)???,虚拟机通过虚拟化可以实现硬件共享,
    在一套硬件上同时运行多个操作系统,在本发明实施例中主控操作系统和被
    调试操作系统,主控操作系统与客户进行交互,是负责调试的操作系统。虚
    拟调试服务??榭梢杂胫骺夭僮飨低持械牡魇阅??例如gdb)进行通信,用
    于实现调试??榈目刂泼?,主控操作系统中的调试??槔猛ㄓ玫魇孕?br />(例如:gdb串行协议、或加密协议提供安全性)通过虚拟调试服务??榻?br />交互。

    基于上述架构,本发明的一个实施例提供一种操作系统内核的调试方法,
    如图1所示,该方法包括:

    步骤S101:虚拟调试服务??榻邮罩骺夭僮飨低持械牡魇阅?榉⑺偷亩?br />点插入请求,该断点插入请求中包括请求插入断点的位置信息。

    当用户想要在被调试操作系统中插入断点时,可以通过主控操作系统向
    调试??榉⑺投系悴迦肭肭?,该断点插入请求中包含了用户想要插入的各个
    断点的位置信息。

    步骤S102:虚拟调试服务??楦荻系悴迦肭肭笾械牟迦攵系愕奈恢眯?br />息,在被调试操作系统中的相应位置处插入断点,并将插入断点的位置记录
    在调试断点信息表中。

    而后可以运行被调试操作系统,当被调试操作系统在运行过程中会触发
    断点异常,该断点异??赡苁且蛭葱械讲街鑃102中插入的用于调试的断点
    产生的,也可能是执行到操作系统本身定义的其他中断产生的。

    步骤S103:虚拟调试服务??椴痘癖坏魇圆僮飨低持葱泄讨写シ⒌亩?br />点异常。

    步骤S104:虚拟调试服务??榻痘竦降亩系阋斐5奶卣饔氲魇远系阈?br />息表中记录的断点位置进行比较,如果匹配则暂停被调试操作系统的运行。

    之所以要将捕获到的断点异常与调试断点信息表中的断点位置进行比
    较,是因为正如前文所述,捕获到的断点异??赡苁且蛭葱械讲街鑃102中
    插入的用于调试的断点产生的,也可能是执行到操作系统本身定义的其他中
    断产生的,而本发明实施例只需要对因执行到用于调试的断点而发生的异常
    进行后续处理,对于其他原因产生的断点异常不做处理;所以,在捕获到断
    点异常后,还需将其特征与调试断点信息表中的断点位置进行比较,如果匹
    配,说明该断点异常是被调试操作系统执行到之前插入的断点后产生的。

    上述断点异常的特征包括发生异常的地址。此外,为了增强比较的严谨
    性,断点异常的特征中还可以包括异常向量。对于断点异常是因为执行到步
    骤S102中插入的用于调试的断点产生的情况,该异常向量应该是相同的一个
    特定值,所以本发明中还可以同时验证该异常向量是否等于执行到用户调试
    的断点时被调试操作系统应该产生的中断向量。

    此外,还可以包括步骤S105:在暂停被调试操作系统的运行以后,虚拟
    调试服务??榻邮罩骺夭僮飨低持械牡魇阅?榉⑺偷牟樵谋坏魇圆僮飨低车?br />状态信息的查阅请求;

    步骤S106:虚拟调试服务??楦莶街鑃105中的查阅请求,将被调试操
    作系统中的状态信息反馈至主控操作系统中的调试???。

    上述状态信息可以包括被调试操作系统的寄存器中的信息、堆栈中的信
    息和全局变量其中的一个或者任意组合。

    由此可见,上述方法在虚拟机中实现了一个虚拟调试服务???,可以轻
    松实现被调试操作系统的断点调试。

    以下以两个具体的实施例详细说明上述方法的具体实现。

    实施例一

    图2示出了本实施例所基于的层次架构图。如图2所示,GOS1为主控操
    作系统,GOS2为被调试操作系统。GOS1和GOS2共同运行在同一个虚拟机
    上。在虚拟机中构建了一个虚拟调试服务???vir_gdbserver)。在GOS1中
    具有调试???gdb),gdb与vir_gdbserver进行通信,在实际中,为了使得上
    层的调试功能不依赖于底层的虚拟机的实现方式,在虚拟机中还构建一个虚
    拟设备(Virtual?device),主控操作系统GOS1中的调试??間db通过该虚拟
    设备与虚拟机中的虚拟调试服务??関ir_gdbserver进行通信。

    如图3所示,本实施例中提供的操作系统内核的调试方法包括如下步骤:

    步骤S301:GOS1中的gdb通过虚拟设备虚拟机中的虚拟调试服务???br />vir_gdbserver??榉⑺投系悴迦肭肭?,请求向被调试操作系统GOS2中插入用
    于调试的断点。

    步骤S302:vir_gdbserver??榻邮盏礁枚系悴迦肭肭蠛?,根据其中包含
    的插入断点的位置信息,向GOS2中的相应位置处插入断点,并将插入断点
    的位置记录在调试断点信息表中。

    插入断点的具体实现方式可以是向要插入断点的位置处写入断点指令
    INT?3,即0xCC。

    在实际中,该调试断点信息表可以以链表的形式进行存储。

    步骤S303:运行GOS2,运行过程中,GOS2会触发断点异常。

    步骤S304:vir_gdbserver??椴痘馟OS2运行过程中触发的断点异常,
    并将该断点异常的特征与调试断点信息表中的断点位置进行比较,如果匹配
    成功,说明该断点异常是GOS2执行到之前插入的用于调试的断点后触发的,
    则暂停GOS2的运行。如果不能匹配,则不做任何处理,由vir_gdbserver模
    块继续捕获后续的断点异常。

    在暂停GOS2的运行以后,vir_gdbserver??榭梢愿軬OS1发送的查阅
    请求,将GOS2中的状态信息反馈至GOS1中的gdb,这里的状态信息可以是
    GOS2中的各个寄存器内的信息、堆栈信息和全局变量中的任意一个或者任意
    组合。

    需要说明的是,应用本实施例中的方法也可以实现单步执行调试的目的,
    只需要通过GOS1向vir_gdbserver??榉⑺颓肭笤贕OS2执行的每一步后都
    插入断点的请求即可,这时,在GOS2运行过程中,每执行完一步就触发一
    次断点异常,然后暂停GOS2的运行,供用户进行单步执行的断点调试。

    此外,在一个优选的实施例中,虚拟调试服务???vir_gdbserver???
    还接收主控操作系统请求构造调试环境的请求,虚拟调试服务??楦莞们?br />求,构造被调试操作系统的运行环境。利用该手段,用户可以模拟被调试操
    作系统在各种极端运行环境下的调试过程。例如,当用户知道出现故障的条
    件,但是不知道为什么该条件会出现,也就是说该条件的出现完全是随机的
    不可控的,此时可以将满足该条件的环境通过人为构造,达到故障输入的目
    的,为进一步克服该故障提供调试的基础。这里构造调试环境可以是在被调
    试操作系统运行之前进行,也可以是在被调试操作系统运行到断点时被暂停
    运行的时候进行。

    另外,上述GOS1中的gdb与vir_gdbserver??橹涞耐ㄐ殴逃叛〔?br />用密钥来完成,以增强系统的安全性。

    由此可见,本实施例中在虚拟机中实现了一个虚拟调试服务???,可以
    轻松实现被调试操作系统的断点调试,还可以通过断点调试的方式实现单步
    执行调试。

    实施例二

    本实施例仍然基于图2中的层次架构图。本实施例中提供的操作系统内
    核的调试方法用来完成单步执行调试的目的。图4示出了本实施例提供的操
    作系统内核的调试方法的示意图,如图4所示,该方法包括如下步骤:

    步骤S401:当需要进行单步执行调试时,判断硬件是否支持单步执行。

    如果步骤S401的判断结果为是时,则执行步骤S402,否则执行步骤S40X。

    步骤S402:GOS1中的gdb向虚拟机中的vir_gdbserver??榉⑺涂刂泼?br />令,要求将被调试操作系统GOS2置于单步执行模式。

    步骤S403:当GOS2运行时,vir_gdbserver??榻诵懈肎OS2的CPU
    (中央处理器)中的标志寄存器EFLAGS中的用于控制单步执行调试模式开
    关的标志位设置为表示“开启”的状态,以使GOS2在运行每一步后都产生
    单步异常。

    这里的用于控制单步执行调试模式开关的标志位可以为标志寄存器
    EFLAGS中的TF标志位,TF标志位的值设为“1”时表示开启CPU的单步
    执行调试模式,TF标志位的值设为“0”时表示关闭CPU的单步执行调试模
    式。

    步骤S404:GOS2在运行时,每执行完一条指令,就会产生一个单步异
    常。

    步骤S405:vir_gdbserver??椴痘竦紾OS2运行过程中产生的单步异常,
    当确认GOS2运行的当前步(或者说当前运行的一条指令)执行完毕后,暂
    停GOS2的运行。

    在步骤S405中暂停GOS2的运行以后,vir_gdbserver??榭梢愿軬OS1
    发送的查阅请求,将GOS2中的状态信息反馈至GOS1中的gdb,这里的状态
    信息可以是GOS2中的各个寄存器内的信息、堆栈信息和全局变量中的任意
    一个或者任意组合。

    如果步骤S401的判断结果为否时,表明硬件不支持单步执行调试,则直
    接执行步骤S406。

    步骤S406:GOS1中的调试??間db向vir_gdbserver??榉⑺驮贕OS2
    执行每一步均插入断点的断点插入请求,并执行后续步骤。

    步骤S407:vir_gdbserver??榻邮盏礁枚系悴迦肭肭蠛?,根据其中包含
    的插入断点的位置信息,向GOS2中的每一步后面均插入断点,并将插入断
    点的位置记录在调试断点信息表中。

    插入断点的具体实现方式可以是向要插入断点的位置处写入断点指令
    INT?3,即0xCC。

    在实际中,上述调试断点信息表可以以链表的形式进行存储。

    步骤S408:运行GOS2,运行过程中,每执行完一步就触发一次断点异
    常。

    步骤S409:vir_gdbserver??椴痘馟OS2运行过程中触发的断点异常,
    并将该断点异常的特征与调试断点信息表中的断点位置进行比较,如果匹配,
    说明该断点异常是GOS2执行到之前插入的用于调试的断点后触发的,则暂
    停GOS2的运行。

    在步骤S409中暂停GOS2的运行以后,vir_gdbserver??榭梢愿軬OS1
    发送的查阅请求,将GOS2中的状态信息反馈至GOS1中的gdb,这里的状态
    信息可以是GOS2中的各个寄存器内的信息、堆栈信息和全局变量中的任意
    一个或者任意组合。

    此外,在一个优选的实施例中,虚拟调试服务???vir_gdbserver???
    还接收主控操作系统请求构造调试环境的请求,虚拟调试服务??楦莞们?br />求,构造被调试操作系统的运行环境。利用该手段,用户可以模拟被调试操
    作系统在各种极端运行环境下的调试过程。例如,当用户知道出现故障的条
    件,但是不知道为什么该条件会出现,也就是说该条件的出现完全是随机的
    不可控的,此时可以将满足该条件的环境通过人为构造,达到故障输入的目
    的,为进一步克服该故障提供调试的基础。这里构造调试环境可以是在被调
    试操作系统运行之前进行,也可以是在被调试操作系统运行到断点时被暂停
    运行的时候进行。

    另外,上述GOS1中的gdb与vir_gdbserver??橹涞耐ㄐ殴逃叛〔?br />用密钥来完成,以增强系统的安全性。

    由此可见,本实施例中在虚拟机中实现了一个虚拟调试服务???,可以
    轻松实现被调试操作系统的断点调试以及单步执行调试。

    本发明另一实施例还相应提供一种虚拟调试服务???,该虚拟调试服务
    ??楣菇ㄔ谛槟饣?,该虚拟机上运行主控操作系统和被调试操作系统,如
    图5所示,该虚拟调试服务???0包括断点插入请求接收单元501、断点插
    入单元502、断点异常捕获单元503、特征比较单元504和暂停单元505。

    其中,断点插入请求接收单元501用于接收主控操作系统中的调试???br />发送的插入至少一个断点的断点插入请求,上述断点插入请求中包括插入断
    点的位置信息。断点插入单元502用于根据断点插入请求中的插入断点的位
    置信息,在被调试操作系统中的相应位置处插入断点,并将插入断点的位置
    记录在调试断点信息表中。断点异常捕获单元503用于捕获被调试操作系统
    执行过程中触发的断点异常。特征比较单元504用于将上述捕获到的断点异
    常的特征与调试断点信息表中记录的断点的位置进行比较,如果匹配成功,
    则触发暂停单元505进行工作。暂停单元505用于触发被调试操作系统暂停
    运行。

    为了进行单步执行调试,优选地,虚拟调试服务??榛箍梢园ǎ?br />

    单步执行支持判断单元506,用于在需要进行单步执行调试时,预先判断
    硬件是否支持单步执行;

    逐步断点插入单元507,用于在单步执行支持判断单元506判断结果为否
    时,通知主控操作系统中的调试??橄蛐槟獾魇苑衲?榉⑺驮诒坏魇圆僮?br />系统执行的每一步均插入断点的断点插入请求。

    此外,上述虚拟调试服务??榛箍梢园ǎ?br />

    标志位设置单元508,用于在单步执行支持判断单元判断结果为是时,在
    被调试操作系统运行时,将运行该被调试操作系统的中央处理器的标志寄存
    器中用于控制单步执行调试模式开关的标志位设置为表示“开启”的状态,
    以使被调试操作系统在运行每一步后都产生单步异常。

    单步异常捕获单元509,用于捕获被调试操作系统在运行每一步后所产生
    的单步异常,当虚拟调试服务??槿啡媳坏魇圆僮飨低吃诵械牡鼻安街葱型?br />毕后,触发上述暂停单元505进行工作。

    此外,为了方便用户在暂停运行被调试操作系统的运行状态信息,优选
    地还包括查阅单元506,用于用于在暂停被调试操作系统的运行以后,接收主
    控操作系统中的调试??榉⑺偷牟樵谋坏魇圆僮飨低车淖刺畔⒌牟樵那?br />求,并根据该查阅请求,将被调试操作系统的状态信息反馈至主控操作系统
    中的调试???,这里被调试操作系统的状态信息可以包括被调试操作系统的
    寄存器中的信息、堆栈中的信息和全局变量中的任何一个或者任意组合。

    以上公开的仅为本发明的几个具体实施例,但本发明并非局限于此,任
    何本领域的技术人员能思之的变化,都应落在本发明的?;し段?。

    关于本文
    本文标题:一种操作系统内核调试方法和虚拟调试服务???pdf
    链接地址://www.4mum.com.cn/p-5859852.html

    [email protected] 2017-2018 www.4mum.com.cn网站版权所有
    经营许可证编号:粤ICP备17046363号-1 
     


    收起
    展开
  • 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
  • 组选奖号764出现 重庆时时带坐标带连线 三分彩计划软件 腾游娱乐中心手机版 黄金海岸棋牌官网 万科股票 河南快赢481中奖规则 双色球走势图带连线 福利彩票3d复式组三 重庆百变王牌推荐 金牛棋牌app官网 福彩3d开奖号码 白山棋牌游戏大厅apk 双色球合买的软件 山东十一选五开奖助手 325捕鱼手机版官方网站