分类：电脑/网络-软件
问题：“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，一直是程序员所极为重视的课题。