什么是错误?软件错误只不过是计算机程序系统中可能发生的简单错误或故障。这最终会导致开发人员预期的意外和错误行为。
许多此类故障确实更难预测,甚至可能导致更大的问题。例如,性能损失、虚拟犯罪以及信息和数据盗窃。
所以这是一个逻辑故障,当编程语言遇到一些冲突时就会出现这种情况。这会导致程序停止正常运行。
错误可以有多种来源,例如算术、逻辑、语法、多线程、功能、接口等等。所以,为了识别它们,从而避免它们的出现,很多公司都进行了调试和多次测试。
我们相信您可以理解什么是错误。现在让我们更多地了解一下这个词的起源。我们走吧!
你的出身是什么?
“Bug”一词是英文,直译为“昆虫”。这个词在 1870 年代已经被工程师用来描述作品中的缺陷。看,那时候没有电子产品、计算机和软件会出问题。
也有记录描述一些不能正常工作的机械机器的术语。为了给你一个想法,甚至伟大的发明家托马斯·埃德森 (Tomas Edson) 也曾写信给朋友谈论这个话题。
因此,有了这一切,这个词就被传送到了 电脑,这是在 1940 年代,当时计算机科学家 Grace Hopper 在哈佛大学使用 Mark II 计算机工作。
因此,在尝试查找机器故障一段时间后,他的合作者发现了一只被困在继电器中的飞蛾。当时没有人注意到它。
但随着时间的推移,这个故事开始以不同的方式讲述,被视为计算宇宙中的第一例 Bug。
就连位于美国的国家美国历史博物馆,也用 7 把钥匙保存了 1947 年 12 月 9 日的事件记录簿。伟大的研究员威廉·比尔·伯克甚至将发现的飞蛾放在书中,并记为这是有史以来发现的第一个真正的房子。
个人电脑的错误和漏洞:
现在你知道它是什么,这个词是怎么来的,那么让我们来谈谈他们带来的一个不太好的问题。特别是当它们与故障和安全问题相关时。
许多黑客可能想利用系统中的此漏洞并最终实施犯罪,例如窃取信用卡、密码等敏感信息。
通常当黑客利用漏洞时,他们会一起传播大量病毒和恶意软件,最终也会损害许多人的计算机。正因为如此,大公司开发程序以寻求尽快纠正系统安全性中可能存在的缺陷。
测试版测试:
如今,市场上发布的所有软件都经过一系列 Beta 测试,以检测缺陷并消除它们。测试通常在所有功能都到位但程序还不稳定时进行。
许多 Beta 测试阶段都是由 QA 部门的员工完成的。但也有测试版,由用户自己进行测试。
这些公测人员通常是公众人士,也有一些私人机构,因为测试的人数越多越好。因此,公司收到大量反馈并更快地解决任何有问题的问题。
需要指出的是,许多类型的程序仍处于永久 Beta 测试状态,每个新版本都会引入新功能。但他们从未到达最终版本。
谷歌公司经常这样做,特别是 Gmail 和谷歌新闻,他们自 2000 年以来一直处于永久测试状态。他们一直在进行测试,直到 2009 年,然后他们离开了。
这种出色的技术允许 开发商 能够等待更长的时间,然后再对可能出现的问题负责,从而为项目提供全面支持。
漏洞修复软件:
在计算中查找和修复错误的过程称为调试。有大量的技术和策略可以做到这一点,从分析流控制到内存转储。
正如我们之前提到的,调试一词是随着 bug 一词首次用于指代计算机而出现的。
用于查找问题的自动化工具称为调试器或调试器。要知道在这类软件中,在虚拟机内部执行程序代码是很常见的。以便发现该系统内的故障。
了解最流行的调试器:
- Eclipse——Java
- 手臂滴滴涕——C++
- Valgrind——Linux
- Firefox JavaScript 调试器 – JavaScript
- WinDbg-Microsoft Windows
- Xpediter-大型机
著名案例:
由于媒体的关注,许多计算机错误至今仍被许多人记住。其中最著名的当然是 千年虫 (称为千年虫)。我们已经讨论过了,因为他们值得荣誉或耻辱的提及。
最主要的是名为阿丽亚娜 5 号的火箭,由 CNES(法国航天局)于 1996 年 6 月 4 日发射。阿丽亚娜 5 号火箭在发射 30 秒后爆炸,造成约 3.7 亿美元的损失。幸运的是,没有人受伤,因为这只是一次测试,船上没有人。检查出 爆炸视频.
爆炸的原因?一个计算机错误,错误出现在转换 64 位数据时,与 16 位数据相比,这反过来要复杂得多。
这个问题被称为 整合溢出,这意味着积分外渗。这又包括创建一个大于 16 位变量支持的数字。
于是在2013年,克里斯·雷诺兹惊醒,他已经成为世界首富。这都是由于 PayPal 软件中的一个错误。一觉醒来,他的账户里有 $ 92,233,720,368,547,800 万亿美元。
这甚至很有趣,因为先生。即使在很短的时间内,雷诺兹的财富也只是墨西哥人卡洛斯斯利姆的 100 万倍。谁是当时世界上最富有的人,拥有 $ 670 亿美元的财富。
所以PayPal支付系统一检测到错误,就迅速撤回操作,而先生。雷诺恢复正常。
什么是千年虫?
Millennium Bug,也称为 Y2K Bug,是一个错误,据信在千禧年之交,所有计算机将开始显示 1900 年 1 月 1 日而不是 2000 年的日期。
所有这一切都归功于 60 年代的软件仅使用 2 位数字来表示年份值。这当然节省了内存空间和金钱。这样就只注册了“60”,比如前面会出现的“19”就隐含了。
所以多年来,许多程序都被更新为新格式,这反过来又支持 2000 年,从而解决了这个问题。
但在 1990 年代末,人们发现许多公司,尤其是大公司,还没有更新他们的软件来应对这种情况。
使事情变得更加复杂的是系统 Bios,它在大多数情况下只使用两位数来显示日期。这最终导致了对金融体系的极大担忧。这个缺陷也会影响他吗?会有什么后果?
如果日期自动设置为 1900 年 1 月,利息将变为负数,谁欠钱就成为债务人。门票呢?至于那些在新千年的第一个月到期的人,他们将落后 100 年。
千年虫是如何修复的?
我们只知道,最后什么都没有发生,预言的一切都没有发生。没有因为系统的预定日期而发生灾难或悲剧。
虽然什么都没发生,但很明显,这是一场只是为了推广程序的普遍更新而进行的竞赛,这在全球范围内产生了大量费用。
更不用说在千禧年之交时,许多人甚至公司已经购买了更新更现代的计算机,并支持 2000 年。
一些小事件最终还是发生了,比如在西班牙,一些停车计时器显示操作错误。
在法国,1月1日19100的天气预报是由国家气象局发布的,这个公告是在他们自己的网站上实时发布的。在奥地利,一些验证公交车票的机器也停止工作。
结论:
现在你知道 Bug 是什么,知道它们代表从小错误到重大安全问题,这可能是有问题的。但他们也能像先生一样想出搞笑有趣的故事。雷诺兹醒来时满身现金。
但无论哪种方式,它们都是软件开发人员试图尽可能避免的问题。正是出于这个目的,我们之前提到的 beta 测试得到了推广。
因为通过 Beta 测试,您可以在以最终版本发布产品之前获得大量反馈,并且它对市场来说是稳定的。
这就是为什么我们的建议是:始终使您的程序和操作系统保持最新。这非常重要,因为这些简单的升级通常可以修复许多问题和安全漏洞。除了使您的程序更加安全。
就是这样,我们希望您喜欢我们的文章,让我们到此为止。既然您知道错误是什么,请尽量远离它们。一个大大的拥抱和成功?