久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長(zhǎng)資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      軟件調(diào)試的目的是什么

      軟件調(diào)試的目的是:改正錯(cuò)誤。軟件調(diào)試是將編制的程序投入實(shí)際運(yùn)行前,用手工或編譯程序等方法進(jìn)行測(cè)試,修正語(yǔ)法錯(cuò)誤和邏輯錯(cuò)誤的過(guò)程;它是保證計(jì)算機(jī)信息系統(tǒng)正確性的必不可少的步驟。

      軟件調(diào)試的目的是什么

      本教程操作環(huán)境:windows7系統(tǒng)、Dell G3電腦。

      軟件調(diào)試的目的是:改正錯(cuò)誤。

      軟件調(diào)試的概念

      軟件調(diào)試是泛指重現(xiàn)軟件缺陷問(wèn)題,定位和 查找問(wèn)題根源,最終解決問(wèn)題的過(guò)程。 軟件調(diào)試通常有如下兩種不同的定義:

      • 定義1:

        軟件調(diào)試是為了發(fā)現(xiàn)并排除軟件程序中 的錯(cuò)誤,可以通過(guò)某種方法控制被調(diào)試程序的執(zhí)行過(guò) 程,以便隨時(shí)查看和修改被調(diào)試程序執(zhí)行狀態(tài)的方法。 在該定義中,軟件測(cè)試屬于軟件調(diào)試的一部分,與 牛津詞典中的調(diào)試定義類似。 在牛津詞典中調(diào)試定義 為:“識(shí)別和排除計(jì)算機(jī)硬件或軟件中錯(cuò)誤的過(guò)程?!?/p>

      • 定義2:

        調(diào)試是執(zhí)行一次成功的測(cè)試之后所要進(jìn) 行的工作。 所謂成功的測(cè)試,是指它可以證明程序沒(méi) 有實(shí)現(xiàn)預(yù)期的功能。 調(diào)試包含兩個(gè)步驟,從執(zhí)行了一個(gè)成功測(cè)試用例,發(fā)現(xiàn)問(wèn)題后開(kāi)始;第一步,確定程序 中可疑錯(cuò)誤的準(zhǔn)確性質(zhì)和位置;第二步,修改錯(cuò)誤。 在該定義中軟件測(cè)試從調(diào)試工作中分離出來(lái)。

      軟件調(diào)試的內(nèi)涵

      軟件調(diào)試是將編制的程序投入實(shí)際運(yùn)行前,用手工或編譯程序等方法進(jìn)行測(cè)試,修正語(yǔ)法錯(cuò)誤和邏輯錯(cuò)誤的過(guò)程。這是保證計(jì)算機(jī)信息系統(tǒng)正確性的必不可少的步驟。編完計(jì)算機(jī)程序,必須送入計(jì)算機(jī)中測(cè)試。根據(jù)測(cè)試時(shí)所發(fā)現(xiàn)的錯(cuò)誤,進(jìn)一步診斷,找出原因和具體的位置進(jìn)行修正。

      調(diào)試這個(gè)術(shù)語(yǔ)可能意味著很多不同的事情,但最字面的意思是,它意味著從代碼中刪除錯(cuò)誤、異常和bug?,F(xiàn)在,有很多方法可以做到這一點(diǎn)。例如,可以通過(guò)掃描代碼以查找輸入錯(cuò)誤或使用代碼分析器進(jìn)行調(diào)試。您可以使用性能分析器調(diào)試代碼?;蛘?,可以使用調(diào)試器進(jìn)行調(diào)試。

      軟件調(diào)試的基本過(guò)程

      按照定義1,軟件系統(tǒng)調(diào)試的基本過(guò)程如下:

      • 用編輯程序把編制的源程序按照一定的書寫格式送到計(jì)算機(jī)中,編輯程序會(huì)根據(jù)使用人員的意圖對(duì)源程序進(jìn)行增、刪或修改。

      • 把送入的源程序翻譯成機(jī)器語(yǔ)言,即用編譯程序?qū)υ闯绦蜻M(jìn)行語(yǔ)法檢查并將符合語(yǔ)法規(guī)則的源程序語(yǔ)句翻譯成計(jì)算機(jī)能識(shí)別的“語(yǔ)言”。如果經(jīng)編譯程序檢查,發(fā)現(xiàn)有語(yǔ)法錯(cuò)誤,那就必須用編輯程序來(lái)修改源程序中的語(yǔ)法錯(cuò)誤,然后再編譯,直至沒(méi)有語(yǔ)法錯(cuò)誤為止。

      • 使用計(jì)算機(jī)中的連接程序,把翻譯好的計(jì)算機(jī)語(yǔ)言程序連接起來(lái),并扶植成一個(gè)計(jì)算機(jī)能真正運(yùn)行的程序。在連接過(guò)程中,一般不會(huì)出現(xiàn)連接錯(cuò)誤,如果出現(xiàn)了連接錯(cuò)誤,說(shuō)明源程序中存在子程序的調(diào)用混亂或參數(shù)傳遞錯(cuò)誤等問(wèn)題。這時(shí)又要用編輯程序?qū)υ闯绦蜻M(jìn)行修改,再進(jìn)行編譯和連接,如此反復(fù)進(jìn)行,直至沒(méi)有連接錯(cuò)誤為止。

      • 將修改后的程序進(jìn)行試算,這時(shí)可以假設(shè)幾個(gè)模擬數(shù)據(jù)去試運(yùn)行,并把輸出結(jié)果與手工處理的正確結(jié)果相比較。如有差異,就表明計(jì)算機(jī)的程序存在有邏輯錯(cuò)誤。如果程序不大,可以用人工方法去模擬計(jì)算機(jī)對(duì)源程序的這幾個(gè)數(shù)據(jù)進(jìn)行修改處理;如果程序比較大,人工模擬顯然行不通,這時(shí)只能將計(jì)算機(jī)設(shè)置成單步執(zhí)行的方式,一步步跟蹤程序的運(yùn)行。一旦找到問(wèn)題所在,仍然要用編輯程序來(lái)修改源程序,接著仍要編譯、連接和執(zhí)行,直至無(wú)邏輯錯(cuò)誤為止。也可以在完成后再進(jìn)行編譯。

      按照定義2,軟件系統(tǒng)調(diào)試的基本過(guò)程如下:

      • 重現(xiàn)問(wèn)題:重現(xiàn)軟件測(cè)試發(fā)現(xiàn)的問(wèn)題;

      • 問(wèn)題定位:確定可能發(fā)生問(wèn)題的程序段位置;

      • 查找原因:分析相關(guān)代碼,確定導(dǎo)致缺陷問(wèn)題 的內(nèi)在原因;

      • 設(shè)計(jì)方案:提出軟件缺陷問(wèn)題解決方案;

      • 修改代碼:根據(jù)設(shè)計(jì)方案修改程序代碼;

      • 驗(yàn)證和確認(rèn):采用審查、分析和測(cè)試等技術(shù)來(lái) 確定錯(cuò)誤是否被排除,是否引入了新的錯(cuò)誤。

      上述6個(gè)步驟不斷迭代進(jìn)行,直至問(wèn)題解決。 軟件調(diào)試基本過(guò)程如圖1所示:

      軟件調(diào)試的目的是什么

      在這些步驟中,問(wèn)題定位和查找原因是軟件調(diào)試 的關(guān)鍵環(huán)節(jié),其工作量約占總工作量的90%以上。 軟 件調(diào)試是一項(xiàng)既耗時(shí)又費(fèi)力,同時(shí)又富有技巧性的工 作。 目前軟件調(diào)試中的問(wèn)題定位研究的比較多。

      可以看到,定義一的流程更貼合我們的日常開(kāi)發(fā)測(cè)試工作;而定義二的流程更貼合我們測(cè)試特別是軟件發(fā)布或上線后發(fā)現(xiàn)問(wèn)題的處理相關(guān)工作。

      軟件調(diào)試基本特征

      • 廣泛的關(guān)聯(lián)性
        需要調(diào)試人員有著雄厚的計(jì)算機(jī)基礎(chǔ)知識(shí)(包括操作系統(tǒng)、開(kāi)發(fā)語(yǔ)言、工具等)以及精通面向的業(yè)務(wù)問(wèn)題域知識(shí)。
      • 難度大
        從"廣泛的關(guān)聯(lián)性"就可以知道難度大不大了。當(dāng)然也看面臨的具體問(wèn)題和調(diào)試人員的素質(zhì)
      • 難以預(yù)估完成時(shí)間
        這個(gè)時(shí)間真的是沒(méi)法預(yù)估,除非某個(gè)問(wèn)題的領(lǐng)域?qū)<液蛯?duì)軟件整體架構(gòu)及代碼的理解熟悉程度。

      軟件調(diào)試分類

      • 按調(diào)試目標(biāo)的系統(tǒng)環(huán)境分類:Windows下的軟件調(diào)試、Linux下的軟件調(diào)試、Dos下的軟件調(diào)試等
      • 按目標(biāo)代碼的執(zhí)行方式分:
        腳本程序 – 腳本調(diào)試器
        執(zhí)行編譯的程序:
        先編譯為中間代碼,在運(yùn)行時(shí)再動(dòng)態(tài)編譯為當(dāng)前CPU能夠執(zhí)行的目標(biāo)代碼(比如C#開(kāi)發(fā)的.NET程序) – 托管調(diào)試
        直接編譯和鏈接成目標(biāo)代碼的程序(C/C++) – 本地調(diào)試
        兼具以上兩種的 – 混合調(diào)試
      • 按目標(biāo)代碼的執(zhí)行模式分:用戶態(tài)調(diào)試(User Mode Debugging)、內(nèi)核態(tài)調(diào)試(Kernel Mode Debugging);
        在Windows這樣的多任務(wù)操作系統(tǒng)中,作為保證安全和秩序的一個(gè)根本措施,系統(tǒng)定義了兩種執(zhí)行模式,即低特權(quán)等級(jí)的用戶模式(User Mode)和高特權(quán)等級(jí)的內(nèi)核模式(Kernel Mode)。
        應(yīng)用程序代碼是運(yùn)行在用戶模式下的,操作系統(tǒng)的內(nèi)核、執(zhí)行體和大多數(shù)設(shè)備驅(qū)動(dòng)程序是運(yùn)行在內(nèi)核模式的。
      • 按軟件所處的階段分:開(kāi)發(fā)期調(diào)試、產(chǎn)品期調(diào)試(分界線是產(chǎn)品的正式發(fā)布)
      • 按調(diào)試器和調(diào)試目標(biāo)的相對(duì)位置分:本機(jī)提哦啊哈斯、遠(yuǎn)程調(diào)試
      • 按調(diào)試目標(biāo)的活動(dòng)性分:活動(dòng)目標(biāo)調(diào)試、轉(zhuǎn)儲(chǔ)文件調(diào)試

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)