2009年3月2日 星期一

何謂"bug"?

“BUG”的由來: Bug一词的原意是“臭虫”或“虫子”。 Bug一詞的原意是“臭蟲”或“蟲子”。 但是现在,在电脑系统或程序中,如果隐藏着的一些未被发现的缺陷或问题,人们也叫它“Bug”,这是怎么回事呢?但是現在,在電腦系統或程序中,如果隱藏著的一些未被發現的缺陷或問題,人們也叫它“Bug”,這是怎麼回事呢? 原来,第一代的计算机是由许多庞大且昂贵的真空管组成,并利用大量的电力来使真空管发光。原來,第一代的計算機是由許多龐大且昂貴的真空管組成,並利用大量的電力來使真空管發光。 可能正是由于计算机运行产生的光和热,引得一只小虫子Bug 钻进了一支真空管内,导致整个计算机无法工作。可能正是由於計算機運行產生的光和熱,引得一隻小蟲子Bug鑽進了一支真空管內,導致整個計算機無法工作。 研究人员费了半天时间,总算发现原因所在,把这只小虫子从真空管中取出后,计算机又恢复正常。研究人員費了半天時間,總算發現原因所在,把這隻小蟲子從真空管中取出後,計算機又恢復正常。 后来,Bug这个名词就沿用下来,表示电脑系统或程序中隐藏的错误、缺陷、漏洞或问题。後來,Bug這個名詞就沿用下來,表示電腦系統或程序中隱藏的錯誤、缺陷、漏洞或問題。 与Bug相对应,人们将发现Bug并加以纠正的过程叫做“Debug”,意即“捉虫子”或“杀虫子”。與Bug相對應,人們將發現Bug並加以糾正的過程叫做“Debug”,意即“捉蟲子”或“殺蟲子”。 遗憾的是,在中文里面,至今仍没有与“Bug”准确对应的词汇,于是只能直接引用“Bug”一词。遺憾的是,在中文裡面,至今仍沒有與“Bug”準確對應的詞彙,於是只能直接引用“Bug”一詞。 虽然也有人使用“臭虫”一词替代“Bug”,但容易产生歧义,所以推广不开。雖然也有人使用“臭蟲”一詞替代“Bug”,但容易產生歧義,所以推廣不開。 ◆ 所谓“(Bug)”,是指电脑系统的硬件、系统软件(如操作系统)或应用软件(如文字处理软件)出错。 ◆所謂“(Bug)”,是指電腦系統的硬件、系統軟件(如操作系統)或應用軟件(如文字處理軟件)出錯。 硬件的出错有两个原因,一是设计错误,一是硬件部件老化失效等。硬件的出錯有兩個原因,一是設計錯誤,一是硬件部件老化失效等。 〓软件的错误全是厂家设计错误。 〓軟件的錯誤全是廠家設計錯誤。 那种说用户执行了非法操作的提示,是软件厂商不负责的胡说八道。那種說用戶執行了非法操作的提示,是軟件廠商不負責的胡說八道。 用户可能会执行不正确的操作,比如本来是做加法但按了减法键。用戶可能會執行不正確的操作,比如本來是做加法但按了減法鍵。 这样用户会得到一个不正确的结果,但不会引起bug发作。這樣用戶會得到一個不正確的結果,但不會引起bug發作。 〓软件厂商在设计产品时的一个基本要求,就是不允许用户做非法的操作。 〓軟件廠商在設計產品時的一個基本要求,就是不允許用戶做非法的操作。 只要允许用户做的,都是合法的。只要允許用戶做的,都是合法的。 用户根本就没有办法知道厂家心里是怎么想的,哪些操作序列是非法的。用戶根本就沒有辦法知道廠家心裡是怎麼想的,哪些操作序列是非法的。 从电脑诞生之日起,就有了电脑BUG。從電腦誕生之日起,就有了電腦BUG。 第一个有记载的bug是美国海军的编程员,编译器的发明者格蕾斯·哈珀(GraceHopper)发现的。第一個有記載的bug是美國海軍的編程員,編譯器的發明者格蕾斯·哈珀(GraceHopper)發現的。 哈珀后来成了美国海军的一个将军,领导了著名计算机语言Cobol的开发。哈珀後來成了美國海軍的一個將軍,領導了著名計算機語言Cobol的開發。 1945年9月9日,下午三点。 1945年9月9日,下午三點。 哈珀中尉正领着她的小组构造一个称为“马克二型”的计算机。哈珀中尉正領著她的小組構造一個稱為“馬克二型”的計算機。 这还不是一个完全的电子计算机,它使用了大量的继电器,一种电子机械装置。這還不是一個完全的電子計算機,它使用了大量的繼電器,一種電子機械裝置。 第二次世界大战还没有结束。第二次世界大戰還沒有結束。 哈珀的小组日以继夜地工作。哈珀的小組日以繼夜地工作。 机房是一间第一次世界大战时建造的老建筑。機房是一間第一次世界大戰時建造的老建築。 那是一个炎热的夏天,房间没有空调,所有窗户都敞开散热。那是一個炎熱的夏天,房間沒有空調,所有窗戶都敞開散熱。 突然,马克二型死机了。突然,馬克二型死機了。 技术人员试了很多办法,最后定位到第70号继电器出错。技術人員試了很多辦法,最後定位到第70號繼電器出錯。 哈珀观察这个出错的继电器,发现一只飞蛾躺在中间,已经被继电器打死。哈珀觀察這個出錯的繼電器,發現一隻飛蛾躺在中間,已經被繼電器打死。 她小心地用摄子将蛾子夹出来,用透明胶布帖到“事件记录本”中,并注明“第一个发现虫子的实例。”[1]她小心地用攝子將蛾子夾出來,用透明膠布帖到“事件記錄本”中,並註明“第一個發現蟲子的實例。”[1] 从此以后,人们将计算机错误戏称为虫子(bug),而把找寻错误的工作称为(debug)。從此以後,人們將計算機錯誤戲稱為蟲子(bug),而把找尋錯誤的工作稱為(debug)。 程序中隐藏的功能缺陷或错误。程序中隱藏的功能缺陷或錯誤。 由于现在的软件复杂程度早已超出了一般人能控制的范围,如Win95、Win98这样的较成熟的操作系统也会不定期地公布其中的Bug。由於現在的軟件複雜程度早已超出了一般人能控制的範圍,如Win95、Win98這樣的較成熟的操作系統也會不定期地公佈其中的Bug。 如何减少以至消灭程序中的Bug,一直是程序员所极为重视的课题。如何減少以至消滅程序中的Bug,一直是程序員所極為重視的課題。

引用自http://translate.google.com.tw/translate?hl=zh-TW&sl=zh-CN&u=http://wenwen.soso.com/z/q54088612.htm&ei=N5arSdTnMIPQkAW4nP3oDQ&sa=X&oi=translate&resnum=6&ct=result&prev=/search%3Fq%3D%25E4%25BD%2595%25E8%25AC%2582bug%26hl%3Dzh-TW%26sa%3DG 網站

沒有留言:

Mini Piano

關於我自己

你發射出去的想望,就像衛星發射電波,一定會傳回來的。這段時間,可能等很久,但你一定要相信。 ~仲利控股董事長辜仲立 這句話很讚!I like it!