一种基于虚拟机的操作系统内核调试方法.pdfVIP

一种基于虚拟机的操作系统内核调试方法.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一种基于虚拟机的操作系统内核调试方法

躁塑笠凰 一种基于虚拟机的操作系统内核调试方法 杨杰成新民 1 (湖州师范学院信息与工程学院,浙江湖州 3 3000) 脯要】由于操作系统自身的特点,调试操作系统需要构建特殊的环境。通过构建基于虚拟杌的调试环境,给出在该环境下操作系统内核 的调试方法,与传统调试环境相比,虚拟机调试环境更接近于操作系统真实的运行环境,提供了更强、更直接的调试功能。 ,巨键词]操作系统;虚拟机;远程调试;linuxO.11内核 2t?? ?j ?j j| 。2 1引言 数生成一个带调试信息的内核副本,该内核副本无须执行,我们只使 阅读、修改和增强其源代码是学习和研究操作系统的最好方法, 用它包含的调试信息。然后在gdb中读八内核副本中的符号表,通过 也就是所谓的操作系统实验方法,其中调试环境是操作系统实验环境最 这些调试信息就可以方便地获得源代码中每一条语句在运行时的地址和 重要的组成部分。与应用程序相比,进行操作系统实验要困难得多。主 要原因是调试器需要调试的目标正是它所在的运行环境,对调试环境的 main,得到main函数源代码和对应行号。 调试很有可能会影响到本身的运行情况。因此构建操作系统调试环境的 104voidmain¨oi曲广ThisreaI 关键是实现调试程序所在的环境和调试目标相分离,为此通常调试操作 105( 系统采用硬件调试器或远程调试方式。 2传统的操作系统调试环境 110 R00T-DEV=ORIG—ROOT_DEVt 111 o: 除了使用硬件调试器,传统的操作系统实验环境通常采用远程调 drive—info=DRIVE—INF 试方式来满足调试环境和调试目标相分离的需求。其具体方案如下,首 112 oI: 先把一个称为stub的程序插入到待调试操作系统中,经重新编译生成 —个具有远程调试功能的调试目标(待调试的操作系统),其中stub程 127 trap_initO; 128 ini“); 序负责控韦蛹试目标、搜集调试目标的状态信息以及与远程机器进行通 blk_dev 讯。然后在另外一台机器上运行gdb程序,因为gdb中内嵌有串口通 诩协议,并且规范了远程机器调试命令的一些数据懒包的格式,所以 如果需要知道trap_initO语句在运行时的地址和对应的汇编指令, 1 只要调试目标中的stub程序遵守相同的协议和数据包格式,就可以实 只要使用命令infoline27,获得该语句运行时的地址: 现远程调试的功能。图1是远程调试方式的示意图。 Line Ox66a40 7跚臼笋 ‘108/Ⅺ;[m / 八、 应的汇编指令: : mⅥ㈣P4P谤j 出坎 、~ /

文档评论(0)

xxj1658888 + 关注
实名认证
文档贡献者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档