广告
返回顶部
首页 > 资讯 > 精选 >计算机网络中软件调试的目的是什么
  • 410
分享到

计算机网络中软件调试的目的是什么

2023-06-15 10:06:37 410人浏览 安东尼
摘要

这篇文章主要为大家展示了“计算机网络中软件调试的目的是什么”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“计算机网络中软件调试的目的是什么”这篇文章吧。软件调试的目的是:改正错误。软件调试是将编制

这篇文章主要为大家展示了“计算机网络中软件调试的目的是什么”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“计算机网络中软件调试的目的是什么”这篇文章吧。

软件调试的目的是:改正错误。软件调试是将编制的程序投入实际运行前,用手工或编译程序等方法进行测试,修正语法错误和逻辑错误的过程;它是保证计算机信息系统正确性的必不可少的步骤。

教程操作环境:windows7系统、Dell G3电脑。

软件调试的目的是:改正错误。

软件调试的概念

软件调试是泛指重现软件缺陷问题,定位和 查找问题根源,最终解决问题的过程。 软件调试通常有如下两种不同的定义:

  • 定义1:

    软件调试是为了发现并排除软件程序中 的错误,可以通过某种方法控制被调试程序的执行过 程,以便随时查看和修改被调试程序执行状态的方法。 在该定义中,软件测试属于软件调试的一部分,与 牛津词典中的调试定义类似。 在牛津词典中调试定义 为:“识别和排除计算机硬件或软件中错误的过程。”

  • 定义2:

    调试是执行一次成功的测试之后所要进 行的工作。 所谓成功的测试,是指它可以证明程序没 有实现预期的功能。 调试包含两个步骤,从执行了一个成功测试用例,发现问题后开始;第一步,确定程序 中可疑错误的准确性质和位置;第二步,修改错误。 在该定义中软件测试从调试工作中分离出来。

软件调试的内涵

软件调试是将编制的程序投入实际运行前,用手工或编译程序等方法进行测试,修正语法错误和逻辑错误的过程。这是保证计算机信息系统正确性的必不可少的步骤。编完计算机程序,必须送入计算机中测试。根据测试时所发现的错误,进一步诊断,找出原因和具体的位置进行修正。

调试这个术语可能意味着很多不同的事情,但最字面的意思是,它意味着从代码中删除错误、异常和bug。现在,有很多方法可以做到这一点。例如,可以通过扫描代码以查找输入错误或使用代码分析器进行调试。您可以使用性能分析器调试代码。或者,可以使用调试器进行调试。

软件调试的基本过程

按照定义1,软件系统调试的基本过程如下:

  • 用编辑程序把编制的源程序按照一定的书写格式送到计算机中,编辑程序会根据使用人员的意图对源程序进行增、删或修改。

  • 把送入的源程序翻译成机器语言,即用编译程序对源程序进行语法检查并将符合语法规则的源程序语句翻译成计算机能识别的“语言”。如果经编译程序检查,发现有语法错误,那就必须用编辑程序来修改源程序中的语法错误,然后再编译,直至没有语法错误为止。

  • 使用计算机中的连接程序,把翻译好的计算机语言程序连接起来,并扶植成一个计算机能真正运行的程序。在连接过程中,一般不会出现连接错误,如果出现了连接错误,说明源程序中存在子程序的调用混乱或参数传递错误等问题。这时又要用编辑程序对源程序进行修改,再进行编译和连接,如此反复进行,直至没有连接错误为止。

  • 将修改后的程序进行试算,这时可以假设几个模拟数据去试运行,并把输出结果与手工处理的正确结果相比较。如有差异,就表明计算机的程序存在有逻辑错误。如果程序不大,可以用人工方法去模拟计算机对源程序的这几个数据进行修改处理;如果程序比较大,人工模拟显然行不通,这时只能将计算机设置成单步执行的方式,一步步跟踪程序的运行。一旦找到问题所在,仍然要用编辑程序来修改源程序,接着仍要编译、连接和执行,直至无逻辑错误为止。也可以在完成后再进行编译。

按照定义2,软件系统调试的基本过程如下:

  • 重现问题:重现软件测试发现的问题;

  • 问题定位:确定可能发生问题的程序段位置;

  • 查找原因:分析相关代码,确定导致缺陷问题 的内在原因;

  • 设计方案:提出软件缺陷问题解决方案;

  • 修改代码:根据设计方案修改程序代码;

  • 验证和确认:采用审查、分析和测试等技术来 确定错误是否被排除,是否引入了新的错误。

上述6个步骤不断迭代进行,直至问题解决。 软件调试基本过程如图1所示:

计算机网络中软件调试的目的是什么

在这些步骤中,问题定位和查找原因是软件调试 的关键环节,其工作量约占总工作量的90%以上。 软 件调试是一项既耗时又费力,同时又富有技巧性的工 作。 目前软件调试中的问题定位研究的比较多。

可以看到,定义一的流程更贴合我们的日常开发测试工作;而定义二的流程更贴合我们测试特别是软件发布或上线后发现问题的处理相关工作。

软件调试基本特征

  • 广泛的关联性
    需要调试人员有着雄厚的计算机基础知识(包括操作系统、开发语言、工具等)以及精通面向的业务问题域知识。

  • 难度大
    从"广泛的关联性"就可以知道难度大不大了。当然也看面临的具体问题和调试人员的素质

  • 难以预估完成时间
    这个时间真的是没法预估,除非某个问题的领域专家和对软件整体架构及代码的理解熟悉程度。

软件调试分类

  • 按调试目标的系统环境分类:Windows下的软件调试、linux下的软件调试、Dos下的软件调试等

  • 按目标代码的执行方式分:
    脚本程序 – 脚本调试器
    执行编译的程序:
           先编译为中间代码,在运行时再动态编译为当前CPU能够执行的目标代码(比如C#开发的.net程序) – 托管调试
           直接编译和链接成目标代码的程序(C/C++) – 本地调试
           兼具以上两种的 – 混合调试

  • 按目标代码的执行模式分:用户态调试(User Mode Debugging)、内核态调试(Kernel Mode Debugging);
    在Windows这样的多任务操作系统中,作为保证安全和秩序的一个根本措施,系统定义了两种执行模式,即低特权等级的用户模式(User Mode)和高特权等级的内核模式(Kernel Mode)。
    应用程序代码是运行在用户模式下的,操作系统的内核、执行体和大多数设备驱动程序是运行在内核模式的。

  • 按软件所处的阶段分:开发期调试、产品期调试(分界线是产品的正式发布)

  • 按调试器和调试目标的相对位置分:本机提哦啊哈斯、远程调试

  • 按调试目标的活动性分:活动目标调试、转储文件调试

以上是“计算机网络中软件调试的目的是什么”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网精选频道!

--结束END--

本文标题: 计算机网络中软件调试的目的是什么

本文链接: https://www.lsjlt.com/news/279944.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 计算机网络中软件调试的目的是什么
    这篇文章主要为大家展示了“计算机网络中软件调试的目的是什么”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“计算机网络中软件调试的目的是什么”这篇文章吧。软件调试的目的是:改正错误。软件调试是将编制...
    99+
    2023-06-15
  • 计算机网络中python指的是什么软件
    小编给大家分享一下计算机网络中python指的是什么软件,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!python不是软件,是一种计算机编程语言;Python提供了高效的高级数据结构,还能简单有效地面向对象编程;Pytho...
    99+
    2023-06-15
  • 计算机网络中office办公软件指的是一种什么软件
    这篇文章主要介绍了计算机网络中office办公软件指的是一种什么软件,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。office办公软件是由微软公司开发的一套基于Windows...
    99+
    2023-06-15
  • 计算机网络中ifo是什么格式文件
    这篇文章主要介绍了计算机网络中ifo是什么格式文件,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。IFO文件是用于控制VOB文件的播放的文件,为播放器提供十分重要的导航信息。比...
    99+
    2023-06-20
  • 计算机网络中重置网络的cmd命令是什么
    这篇文章主要介绍了计算机网络中重置网络的cmd命令是什么,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。重置网络的cmd命令是【netsh winsock reset】。具体方...
    99+
    2023-06-15
  • 计算机网络中什么是堆栈
    小编给大家分享一下计算机网络中什么是堆栈,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!堆栈都是一种数据项按序排列的数据结构,只能在一端【称为栈顶(top)】对数据...
    99+
    2023-06-14
  • 计算机网络中用户名指的是什么
    这篇文章将为大家详细讲解有关计算机网络中用户名指的是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。用户名是指要登录(登入、进入等)的账户名,即所在网站的识别码,它可以使用汉字、字符、字码等。一般情况下...
    99+
    2023-06-09
  • 计算机中不是操作系统软件的是什么
    小编给大家分享一下计算机中不是操作系统软件的是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!不是操作系统软件的是microsoft office,micros...
    99+
    2023-06-14
  • 计算机网络中CRM是什么系统
    小编给大家分享一下计算机网络中CRM是什么系统,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!CRM是企业中跨部门整合的信息系统,它以客户数据的管理为中心而建立,记...
    99+
    2023-06-15
  • 计算机网络中10087网络错误是什么意思
    小编给大家分享一下计算机网络中10087网络错误是什么意思,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!10087网络错误是指在手机权限管理中,(应该是在手机卫土之类的软件中把WIFI点成了勾状态,把2G或3G点成了关闭状...
    99+
    2023-06-20
  • 计算机中系统测试的目的和意义是什么
    小编给大家分享一下计算机中系统测试的目的和意义是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!系统测试的目的和意义:在真实系统工作环境下通过与系统的需求定义作...
    99+
    2023-06-15
  • 计算机网络 简单FTP客户端软件的实现
    一.原理概述 1.1 FTP原理概述 文件传送协议FTP(File Transfer Protocol)是TCP/IP体系的一个重要协议,它采用Internet标准文件传输协议FTP的用户界面,向用户提供了一组用来管理计算机之间文件传输的应...
    99+
    2023-12-23
    计算机网络 服务器 网络
  • 计算机网络的拓扑结构是什么
    本文小编为大家详细介绍“计算机网络的拓扑结构是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“计算机网络的拓扑结构是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。 ...
    99+
    2023-02-23
    计算机
  • 计算机网络通信的原理是什么
    本篇内容介绍了“计算机网络通信的原理是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!成为"黑客"前,必须学习的&qu...
    99+
    2023-06-03
  • 计算机网络的主要作用是什么
    今天小编给大家分享一下计算机网络的主要作用是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。主要作用有集中管理和分布处理、...
    99+
    2023-07-02
  • 计算机网络中脚本指的是什么意思
    这篇文章主要介绍计算机网络中脚本指的是什么意思,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!脚本通俗来讲就是由一条条命令组成的文件。它是使用一种特定的描述性语言,依据一定的格式编写的可执行文件。脚本是批处理文件,它可...
    99+
    2023-06-09
  • 计算机中软件不兼容指的是什么意思
    这篇文章主要介绍了计算机中软件不兼容指的是什么意思,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。软件不兼容指的是该软件和当前系统不兼容,不能完美运行该程序,如果强制运行可能出...
    99+
    2023-06-14
  • 计算机网络中在线代理的优点是什么
    这篇文章主要为大家展示了“计算机网络中在线代理的优点是什么”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“计算机网络中在线代理的优点是什么”这篇文章吧。在线代理原理是接收浏览器(如ie、360等)...
    99+
    2023-06-15
  • 计算机网络中术语html指的是什么意思
    小编给大家分享一下计算机网络中术语html指的是什么意思,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!术语html指的是超文本标记语言的意思,html是构成Web世界的一砖一瓦;html定义了网页内容的含义和结构;除HTM...
    99+
    2023-06-06
  • 计算机网络中官换机和全新机的区别是什么
    这篇文章给大家分享的是有关计算机网络中官换机和全新机的区别是什么的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。区别:1、官换机是苹果用于售后换机用的全新机器,而全新机是厂家生产出来用于销售的产品;2、官换机有35...
    99+
    2023-06-15
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作