基于Dalvik虚拟机的java指令调试设计与实现-计算机软件与理论专业论文.docxVIP

基于Dalvik虚拟机的java指令调试设计与实现-计算机软件与理论专业论文.docx

  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文档。上传文档
查看更多
万方数据 万方数据 分类号 密级 UDC 注 1  学 位 论 文 基于 Dalvik 虚拟机的 java 指令调试设计与实现 (题名和副题名) 张 鹏 (作者姓名) 指导教师 高辉 教 授 电子科技大学 成 都 (姓名、职称、单位名称) 申请学位级别 硕士 学科专业 计算机软件与理论 提交论文日期 2013.03 论文答辩日期 2013.05 学位授予单位和日期 电子科技大学 2013 年 06 月 29 日 答辩委员会主席 评阅人 注 1:注明《国际十进分类法 UDC》的类号。 万方数据 万方数据 INSTRUCTION LEVEL DEBUGGING RESEARCH BASED ON DALVIK VIRTUAL MACHINE A Master Thesis Submitted to University of Electronic Science and Technology of China Major: Computer Software and Theory Author: Zhang Peng Advisor: Gao Hui School: School of Computer Science Engineering 万方数据 万方数据 独 创 性 声 明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作 及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地方 外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为 获得电子科技大学或其它教育机构的学位或证书而使用过的材料。与 我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的 说明并表示谢意。 签名: 日期: 年 月 日 关于论文使用授权的说明 本学位论文作者完全了解电子科技大学有关保留、使用 学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘, 允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文的全 部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描 等复制手段保存、汇编学位论文。 (保密的学位论文在解密后应遵守此规定) 签名: 导师签名: 日期: 年 月 日 摘 摘 要 万方数据 万方数据 万方数据 万方数据 摘 要 随着 Google 推出的 Android 平台在手机、平板等移动终端的推广,Dalvik 虚 拟机作为 Android 操作系统核心,其开发与研究也如日中天。但由于需求专业 化,使用范围较窄,工具未开源,以及完全内部使用等因素的制约,对于开发调 试包括 Dalvik 虚拟机在内的 Java 虚拟机自身的工具的发展仍然不够完善。虽然已 有若干调试器能够针对 Java 程序进行源码级调试,但对于虚拟机开发过程中需要 的 Java 指令级调试,目前还没有成熟的工具可以使用。 为解决以上问题,本课题提出了设计并实现针对 Dalvik 虚拟机的 Java 程序的 指令级调试功能,并将该调试功能集成到 Eclipse 调试器中。研究内容主要包括以 下 4 个方面: 首先,提出在 Dalvik 虚拟机上采用异步运行方式,实现指令级单步调试命令 的功能,获取调试命令及调试结果。单步命令调试不同于在调试器线程自身就能 完成的调试命令,需要调试器线程与用户线程配合完成。具体方法如下:收到单 步命令后,调试器线程在被单步调试的线程中设置相应的单步请求标示;同时, 调试器端立收到一个消息确认,而非调试结果。被调试线程在运行过程中将该请 求与当前产生的各种调试事件进行对比,对比成立后向调试器线程发送单步事 件。调试器线程收到单步事件后,向调试器端发送真正的单步运行结果。 其次,为了让单步能够达到指令级,在 Dalvik 虚拟机实现的 JPDA(Java 平台 调试架构)框架中添加与指令级单步请求相对应的指令级单步触发事件,并在用 户线程的调试事件处理中加入了相应的处理模块,使得被单步的线程能够在每次 校对请求与事件时正确的识别单步请求,并在正确的指令位置触发单步事件,以 及在正确的位置停下来。 再次,为了能够对指令单步调试的过程进行监控,我们需要在调试器端同步 显示每次单步之后的相关程序数据和指令流,为此在 Dalvik 虚拟机端加入了两个 重要功能,即对函数指令流的获取和栈寄存器值的获取两个命令的相应,使在进 行单步调试的同时能够对程序的运行状态有直观的了解。 最后,在 Eclipse 调试器端实现对 Eclipse 标准 Java 调试插件的扩展,包括调 试模型、指令级单步、断点、源定位器、寄存器视图和指令流视图,并对实例程 序进行运行测试。 I 摘 要 通过实验结果表明本课题工具的设计和实现是正确可行的,能够实现 Dalvik 虚拟机的指令集单步调试,对 Java 虚拟

您可能关注的文档

文档评论(0)

131****9843 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档