你是否相信如果你的程序里没有检查一个变量会导致怎么系统瘫痪?无论你相不相信,这是我一个亲身经历过的案例,你可以在本站的程序员那些悲催的事儿
中找到很多这样的事。这样的事昨天在发生,今天同样在发生。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如下:
@@ -348,7 +348,7 @@ case "$DISTRO" in
- rm -rf /usr /lib/nvidia-current/xorg/xorg
+ rm -rf /usr/lib/nvidia-current/xorg/xorg
看明白了吗?空格
。这个空格会导致什么样的问题呢?呵呵。你有没有感到菊花一紧?这个bug绝对的霸气外露!真是验证了“如何写出无法维护代码
”的那句话——“测试你的程序是一种懦夫的行为
”。
不过,最精彩还不是这个bug,而是全世界程序员的对这个bug 的 code review comments,真的相当的欢乐。请强势围望!
https://github.com/MrMEEE/bumblebee/commit/a047be85247755cdbe0acce6#diff-1
重点是其中的很多图片——下面的图片众多。
分享到:
相关推荐
给定一个句子(只包含字母和空格), 将句子中的单词位置反转,单词用空格分割, 单词之间只有一个空格,前后没有空格。 比如: (1) “hello xiao mi”-> “mi xiao hello” 输入描述: 输入数据有多组,每组占一行...
将字符串中的多个空格,缩减为一个空格(C语言实现)
一个句子中也许有多个连续空格,过滤掉多余的空格,只留下一个空格。 【输入】 一行,一个字符串(长度不超过200 ),句子的头和尾都没有空格。 【输出】 过滤之后的句子。 【输入样例】 Hello world.This is c ...
javascript将字符串中的多个空格替换为一个空格的正则实例.docx
一个句子中也许有多个连续空格,过滤掉多余的空格,只留下一个空格。 【输入】 一行,一个字符串(长度不超过200 ),句子的头和尾都没有空格。 【输出】 过滤之后的句子。 【输入样例】 Hello world.This is c ...
输入一句话,里面含有多个空格,一次遍历将多个连续空格变成一个空格。
防不胜防:一个空格在数据库里可能引发的N重血案.pdf
一个句子中也许有多个连续空格,过滤掉多余的空格,只留下一个空格。 【输入】 一行,一个字符串(长度不超过200),句子的头和尾都没有空格。 【输出】 过滤之后的句子。 【输入样例】 Hello world.This is c ...
使用matlab批量删除txt文件中连续的空格,只保留其中一个。如有两个连续的空格,删掉一个,留下一个。
android银行卡每隔4为一个空格demo.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
给定字符串,删除开始和结尾处的空格,并将中间的多个连续的空格合并成一个。 //比如 “ I like http://hi.baidu.com/mianshiti ” 会变成 "I like http://hi.baidu.com/mianshiti"。
做公司的项目 需要填写银行卡号 每隔4追加一个空格
javascript将字符串中的多个空格缩减为一个空格代码实例: 在实际应用中可能有这样的需求,那就是将字符串中的多个空格缩减为一个空格。 下面就是一段能够实现此功能的代码实例。 代码如下: //对字符串扩展 String....
本文主要给大家介绍的是关于SQL Server查找包含空格的表和列的相关内容,为什么会有这篇文章,是因为最近发现一个数据库中的某个表有个字段名后面包含了一个空格,这个空格引起了一些小问题,一般出现这种情况,是...
自己写的一个 删除 字符串空格的小程序 对 初学C语言的 朋友 很有帮助
写一程序将一个文件拷贝至另一个文件 其中在所拷贝的文件中 多个连续空格只拷贝一个空格,制表符则用一个空格代替 其它字符不变。该程序文件名由命令行参数输入。
编写函数,由实参传来一个字符串,统计其中字母,数字空格,和其他字符的个数
自定义每隔一段时间自动按下空格键,当然你可根据代码改变你要按的键。
已知一个字符串的长度,剔除其中所有的空格字符。请从字符串最后一个字符开始逐个向前判断、并进行处理。
在一个已知的字符串中查找最长单词,假定字符串中只含字母和空格,空格用来分隔不同单词。(C语言)