一个实用的ada源级调试器的设计和实现

一个实用的ada源级调试器的设计和实现

ID:34489665

大小:278.26 KB

页数:7页

时间:2019-03-06

一个实用的ada源级调试器的设计和实现_第1页
一个实用的ada源级调试器的设计和实现_第2页
一个实用的ada源级调试器的设计和实现_第3页
一个实用的ada源级调试器的设计和实现_第4页
一个实用的ada源级调试器的设计和实现_第5页
资源描述:

《一个实用的ada源级调试器的设计和实现》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、万方数据一个实用的Ada源级调试器的设计和实现粱成才(华东计算技术研究所研究开发中心上洋20蚴)摘要^da是美国国家军用标准编程语言。近年来,我国也开展了对AdB及其开发环境的研究工作。本文首先介绍高缓语言开发环境中深缎符号调试器的基本原理,然后给出了一个实用性的Ada舞级调试器的设计和实现关键技术。关键词Ada程序错误程序排错源级调试器符号表断点DEⅥ既幻删斟GA腿ACII(强LAdaSDl叽t衄一U阶,ELD圈既JG旧l阻峨al蜊(脚G蚶f,胁‰抽龇矿G砷一岫f,b由“恸r,阳—“铷2站)岫Adai8岫峥呷枷tarystandaId腭聊nlinglallg附·T

2、hi8岫脚and蛔懒env喊118vea180蛔机吲inⅫ岫细删炉.1hep啊妇曲Ⅻtllebasic砸眦iples0f她h袖-levdk导肾咖I静levd删cdebIl蚪,衄d舾tlleI吖溉11r岫娼0fdevelopiIlgapr孵dcalAda洲lro争le试d出Ilg咿.K咿ml由AdEn叩Ⅷbtlg、‘no伊∞debH睁ngSOIⅡ∞-le蔺debI强声%Ⅱ岫Iic试】JeBⅫ蛐1Ada语言及其开发环境的研究Ada是美国国防部为克服软件危机而耗费巨资、历时近十年研制成功的通用程序设计语言,被定为美国国家军用标准编程语言。它集七十年代软件工程的研究成果之大

3、成,具有模块性、并发性和实时性的良好特征。Ada语言的使用,可以大大改善软件系统的清晰性、可靠性、有效性和可维护性。从八十年代中期开始,我国开展了对Ada语言及其编程环境的研究工作,已经取得了一定的成就。作者参与了研制Ada交叉编译系统及其开发环境的工作,主要研究Ada源级调试器的设计和实现技术。经过我们的不懈努力,终于成功地研制了一个实用的Ada源级调试器。本文将先论述调试器的基本概念,然后介绍调试器的基本情况。鼍成才。磺士生,主研镀麓:计算机漾缱较秤的设计和实现。·43·万方数据2调试器的作用和分类一般来说,类似Ada的高级语言为编制效能良好的程序提供了先决条件

4、。但是,从编制的源程序变成能运行的软件,必须经历一个不可逾越的排错阶段。对这个发现和排除源程序中各种错误的开发软件行为,我们称之为调试,进行调试的阶段称之为调试阶段。程序调试是软件开发过程中寻找和排除程序错误的主要手段,也是最费时最费力的阶段。可以毫不夸张地讲,调试工作是软件开发过程中最艰巨的脑力劳动。程序的错误一般可以划分为静态错误和动态错误两种。前者是语法错误,可以通过对源程序进行编译而发现排除,解决这类错误还是轻松简易的;后者是逻辑错误,是在运行由源程序生成的目标程序(可执行程序)时暴露出来的,寻找、发现和排除这类错误决不是轻易的事情。程序员面对的是程序错误的

5、外在表现,而问题的外部现象和内在原因之间并没有明显的相关性。如何在茫茫大海般的源程序中寻找发现有错的语句,这需要凭借程序员个人的以往经验,当然更加需要系统地检测程序错误的专门调试工具——调试器。调试器可用来检查源程序的目标程序和内存文件,并且为程序的执行提供一个受控环境。程序员能够使用调试器对程序的执行进行监视和控制,快速地定位程序错误的所在地。调试器是软件开发和维护过程中必不可少的质量保证工具,是软件开发环境的重要组成部分。调试器一般划分为低级和高级两种。低级调试器面向汇编语言或机器语言,只能按照内存地址或标号来设置断点,显示、修改存储器或寄存器的内容,对程序按照

6、汇编指令或机器指令进行显示和修改,按照机器指令来控制和跟踪程序的运行。一句话,低级调试器的调试粒度很细,远远低于人们对高级语言的直观认识的层次;对使用高级语言的用户而言,这种调试器缺乏友好的应用界面。高级调试器面向高级语言,又称为符号谰试器或源级调试器。它能够按照高级语言源程序的行号来设置断点,能够显示、修改源程序的符号变量的内容,能够对程序以源程序的行为单位进行显示、跟踪和执行,如此等等。高级调试器的调试粒度恰好符合人们对高级语言的直观感觉;对使用高级语言的用户而言,这种调试器具有高度友好娉应用界面。除了源级调试功能外,一般来说,高级调试器还包括了低级调试器的部分

7、或全部功能。集成了低级调试器功能的高级调试器,具有全面的调试功能,能让用户随意选择调试粒度,对用户提供了最有效的调试途径。当然,对那些不包含低级调试器功能的高级调试器,由于它们将调试工作抽象到一个吻合高级语言程序员对高级语言的直观认识的层次,因此也使程序员能够更有效地查找和纠正程序中的错误。目前,国外调试器技术已臻成熬。近来,人们又普遍用图形图像技术来改善调试器的用户界面。用丰富多采的直观图形图像界,面来替代以往的命令行界面,这就使得调试器的用户界面更加友好。而且,融合人工智能技术的调试器也纷纷涌现,这使得调试器技术又出现了一个质的飞跃。3设计和实现源级调试器的

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。