BUG是啥?

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/29 23:15:49
BUG是啥?

BUG是啥?
BUG是啥?

BUG是啥?
“BUG”的由来:
Bug一词的原意是“臭虫”或“虫子”.但是现在,在电脑系统或程序中,如果隐藏着的一些未被发现的缺陷或问题,人们也叫它“Bug”,这是怎么回事呢?
原来,第一代的计算机是由许多庞大且昂贵的真空管组成,并利用大量的电力来使真空管发光.可能正是由于计算机运行产生的光和热,引得一只小虫子?Bug?钻进了一支真空管内,导致整个计算机无法工作.研究人员费了半天时间,总算发现原因所在,把这只小虫子从真空管中取出后,计算机又恢复正常.后来,Bug这个名词就沿用下来,表示电脑系统或程序中隐藏的错误、缺陷或问题.
与Bug相对应,人们将发现Bug并加以纠正的过程叫做“Debug”,意即“捉虫子”或“杀虫子”.遗憾的是,在中文里面,至今仍没有与“Bug”准确对应的词汇,于是只能直接引用“Bug”一词.虽然也有人使用“臭虫”一词替代“Bug”,但容易产生歧义,所以推广不开.
所谓“(Bug)”,是指电脑系统的硬件、系统软件(如操作系统)或应用软件(如文字处理软件)出错.硬件的出错有两个原因,一是设计错误,一是硬件部件老化失效等.软件的错误全是厂家设计错误.那种说用户执行了非法操作的提示,是软件厂商不负责的胡说八道.用户可能会执行不正确的操作,比如本来是做加法但按了减法键.这样用户会得到一个不正确的结果,但不会引起bug发作.软件厂商在设计产品时的一个基本要求,就是不允许用户做非法的操作.只要允许用户做的,都是合法的.用户根本就没有办法知道厂家心里是怎么想的,哪些操作序列是非法的.
从电脑诞生之日起,就有了电脑BUG.第一个有记载的bug是美国海军的编程员,编译器的发明者格蕾斯·哈珀(GraceHopper)发现的.哈珀后来成了美国海军的一个将军,领导了著名计算机语言Cobol的开发.
1945年9月9日,下午三点.哈珀中尉正领着她的小组构造一个称为“马克二型”的计算机.这还不是一个完全的电子计算机,它使用了大量的继电器,一种电子机械装置.第二次世界大战还没有结束.哈珀的小组日以继夜地工作.机房是一间第一次世界大战时建造的老建筑.那是一个炎热的夏天,房间没有空调,所有窗户都敞开散热.
突然,马克二型死机了.技术人员试了很多办法,最后定位到第70号继电器出错.哈珀观察这个出错的继电器,发现一只飞蛾躺在中间,已经被继电器打死.她小心地用摄子将蛾子夹出来,用透明胶布帖到“事件记录本”中,并注明“第一个发现虫子的实例.”[1]
从此以后,人们将计算机错误戏称为虫子(bug),而把找寻错误的工作称为(debug).
程序中隐藏的功能缺陷或错误.由于现在的软件复杂程度早已超出了一般人能控制的范围,如Win95、Win98这样的较成熟的操作系统也会不定期地公布其中的Bug.如何减少以至消灭程序中的Bug,一直是程序员所极为重视的课题.