你是否相信如果你的程序里没有检查一个变量会导致怎么系统瘫痪?无论你相不相信,这是我一个亲身经历过的案例,你可以在本站的程序员那些悲催的事儿中找到很多这样的事。这样的事昨天在发生,今天同样在发生。Unix40多年了,在这40年里,程序员发生过各种各样的的惨剧,但是大多数的事情一而再再而三的重演。
今天的你,可能在开发者各种各样NB的系统,你会相信你的一个空格也能导致系统瘫痪吗?也许你可能很难相信这个事。不过,再下面这个事将告诉你这个血淋淋的事实 —— 一个空格产生的bug可以让你的系统瘫痪。
bumblebee是一个开源项目,这个名字也就是变形金刚里的大黄蜂,这个项目是这样介绍自己的——
bumblebee is Optimus support for Linux, with real offloading, and not switchable graphics.. More important.. it works on Optimus Laptops without a graphical multiplexer..
Optimus 是NVIDIA的“优驰”技术,其可以将您的笔记本电脑PC提升到绝佳状态,提供出色的图形性能,并在需要时延长电池续航时间。这个项目是把这个技术移到Linux上来。
这个项目本来不出名,不过,程序在其安装脚本install.sh里的一个bug让这个项目一下子成了全世界最瞩目的项目,这个bug的fix如下:
1
2
3
|
@@ -348,7 +348,7 @@ case "$DISTRO" in
+ rm -rf /usr/lib/nvidia-current/xorg/xorg
|
看明白了吗?空格。这个空格会导致什么样的问题呢?呵呵。你有没有感到菊花一紧?这个bug绝对的霸气外露!真是验证了“如何写出无法维护代码”的那句话——“测试你的程序是一种懦夫的行为”。
不过,最精彩还不是这个bug,而是全世界程序员的对这个bug 的 code review comments,真的相当的欢乐。请强势围望!
https://github.com/MrMEEE/bumblebee/commit/a047be85247755cdbe0acce6#diff-1
重点是其中的很多图片——下面的图片众多。
转自:http://coolshell.cn/articles/4875.html#more-4875
分享到:
相关推荐
### JavaScript将字符串中的多个空格替换为一个空格的正则实例 在Web开发与日常编程中,我们经常需要处理字符串。特别是在用户输入或者文本处理过程中,常常会遇到需要清理字符串中的多余空格的情况。例如,当从...
给定一个句子(只包含字母和空格), 将句子中的单词位置反转,单词用空格分割, 单词之间只有一个空格,前后没有空格。 比如: (1) “hello xiao mi”-> “mi xiao hello” 输入描述: 输入数据有多组,每组占一行...
将字符串中的多个空格,缩减为一个空格(C语言实现)
一个句子中也许有多个连续空格,过滤掉多余的空格,只留下一个空格。 【输入】 一行,一个字符串(长度不超过200 ),句子的头和尾都没有空格。 【输出】 过滤之后的句子。 【输入样例】 Hello world.This is c ...
一个句子中也许有多个连续空格,过滤掉多余的空格,只留下一个空格。 【输入】 一行,一个字符串(长度不超过200 ),句子的头和尾都没有空格。 【输出】 过滤之后的句子。 【输入样例】 Hello world.This is c ...
输入一句话,里面含有多个空格,一次遍历将多个连续空格变成一个空格。
本文主要探讨了在Oracle数据库中,一个看似微不足道的空格如何可能导致一系列问题,特别是当它出现在SQL语句的注释中时。这个问题在11.2.0.3版本的sqlplus客户端中尤为突出。 首先,让我们理解这个问题的根源。在...
这个名为“ios-字符串中每4个长度加个空格”的项目提供了一个灵活的方法,用于将长字符串按照每4个字符间隔插入空格,使得显示更加清晰,特别是在显示券码号或其他数字序列时。以下是对这个方法的详细解释和相关知识...
假设我们有一个字符串`str = "这是 一个 有 空格 的 字符串"`,我们希望将其处理为`"这是 一个 有 空格 的 字符串"`。 ```java public class StringUtil { public static String removeSpaces(String str) { ...
一个句子中也许有多个连续空格,过滤掉多余的空格,只留下一个空格。 【输入】 一行,一个字符串(长度不超过200),句子的头和尾都没有空格。 【输出】 过滤之后的句子。 【输入样例】 Hello world.This is c ...
使用matlab批量删除txt文件中连续的空格,只保留其中一个。如有两个连续的空格,删掉一个,留下一个。
针对这种情况,"批量去除空格(arcgis批量去除多个字段数据库中空格).zip" 提供了一个解决方案。 该压缩包内的"批量去除空格.tbx"是一个ArcGIS工具箱,由Python脚本编写,用于自动化处理数据库中的空格问题。...
在某些特定场景下,比如输入银行卡号、电话号码等,我们可能希望在用户输入时每达到一定字符数(如四格)就自动添加一个空格,以提高可读性。这个“ios-UITextField自动每四格添加一个空格,支持回删”的示例代码...
这个"android 银行卡每隔4为一个空格demo"就是一个实现这一功能的示例项目。 首先,我们要了解`EditText`是Android中的一个视图组件,用于接收用户的文本输入。在这个场景下,`EditText`将作为用户输入银行卡号的...
这意味着,在英文文本中,一个空格占据半个字节的距离,而在中文文本中,一个空格占据一个字节的距离。 如何调整空格间隔大小? ------------------- 调整空格间隔大小可以通过在 Word 中进行设置。方法如下: 1....
本文主要给大家介绍了关于vi与vim修改tab为4个空格的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧 方法如下: 配置文件位置:/etc/virc 和 /etc/vimrc 配置文件中如果要添加注释,不...
给定字符串,删除开始和结尾处的空格,并将中间的多个连续的空格合并成一个。 //比如 “ I like http://hi.baidu.com/mianshiti ” 会变成 "I like http://hi.baidu.com/mianshiti"。
接着,使用`读取文件`命令获取文件内容,读取的结果通常是一个字符串。 2. **处理字符串中的空格**: - `字符串替换`命令是易语言中用于替换字符串中特定字符或子串的命令,这里我们可以用它来去除空格。设定源...
你会发现,处理后的字符串长度会小于原始字符串的长度,因为多个空格被缩减为了一个空格。 最后,文章还提供了两个相关阅读链接。第一个链接是关于JavaScript的prototype原型的简单介绍,第二个链接是关于正则...
- `\\s+`:表示匹配一个或多个空白字符,包括空格、制表符、换页符等,这样可以同时处理全角空格和半角空格。 3. **检查并输出非空格字符**: - `if (i != null && !"".equals(i) && !i.matches("\\s+"))`:这里...