硬件缺陷和软件错误是“技术侦探”的劲敌,它们负隅顽抗,见缝插针。本书提出的九条简单实用的规则,适用于任何软件应用程序和硬件系统,可以帮助软硬件调试工程师检测任何bug,不管它们有多么狡猾和隐秘。
作者使用真实示例展示了如何应用简单有效的通用策略来排查各种各样的问题,例如芯片过热、由蛋酒引起的电路短路、触摸屏失真,等等。本书给出了真正能够隔离关键因素、运行测试序列和查找失败原因的技术。
无论你的系统或程序发生了设计错误、构建错误还是使用错误,本书都可以帮助你用正确的方法来思考,使bug自动暴露,进而一网打尽,斩草除根。
第1章 简介 1
1.1 本书如何教会你调试 1
1.2 这些规则都很显而易见 2
1.3 本书适用于任何人 3
1.4 本书可用于调试各种问题 3
1.5 本书的主旨不在预防、保证或筛选 4
1.6 调试不仅仅是故障检修 5
1.7 有关案例故事 6
1.8 精彩内容,即将上演 6
第2章 总体规则 8
第3章 理解系统 10
3.1 阅读手册 12
3.2 逐字逐句阅读整个手册 13
3.3 知道什么是正常的 15
3.4 知道工作流程 16
3.5 了解你的工具 17
3.6 查阅手册 18
3.7 小结 20
第4章 制造失败 21
4.1 制造失败 24
4.2 从头开始 24
4.3 引发失败 25
4.4 不要模拟失败 25
4.5 如何处理间歇性bug 27
4.6 如果做了所有尝试之后问题仍然间歇性发生 29
4.6.1 仔细观察失败 29
4.6.2 不要盲目相信统计数据 30
4.6.3 是已修复bug,还是仅仅由于运气好,它不再发生了 31
4.7 “那不可能发生” 33
4.8 永远不要丢掉调试工具 34
4.9 小结 36
第5章 不要想,而要看 37
5.1 观察失败 41
5.2 查看细节 43
5.3 问题忽隐忽现 46
5.4 对系统进行插装 46
5.4.1 设计插装工具 46
5.4.2 过后构建插装 48
5.4.3 不要害怕深入研究 50
5.4.4 添加外部插装 51
5.4.5 日常生活中的插装 51
5.5 海森堡测不准原理 52
5.6 猜测只是为了确定搜索的重点目标 53
5.7 小结 54
第6章 分而治之 55
6.1 缩小搜索范围 59
6.1.1 确定范围 60
6.1.2 你在哪一侧 61
6.2 插入易于识别的模式 62
6.3 从有问题的支路开始查找问题 63
6.4 修复已知bug 64
6.5 首先消除噪声干扰 65
6.6 小结 66
第7章 一次只改一个地方 67
7.1 使用步枪,而不要用散弹枪 69
7.2 用双手抓住黄铜杆 71
7.3 一次只改变一个测试 72
7.4 与正常系统进行比较 73
7.5 自从上一次能够正常工作以来你更改了什么 74
7.6 小结 77
第8章 保持审计跟踪 78
8.1 记下你的每步操作、顺序和结果 80
8.2 魔鬼隐藏在细节中 81
8.3 关联 83
8.4 用于设计的审计跟踪在测试中也非常有用 84
8.5 好记性不如烂笔头 84
8.6 小结 85
第9章 检查插头 86
9.1 怀疑自己的假设 88
9.2 从头开始检查 89
9.3 对工具进行测试 90
9.4 小结 92
第10章 获得全新观点 93
10.1 寻求帮助 94
10.1.1 获得全新观点 94
10.1.2 询问专家 94
10.1.3 借鉴别人的经验 95
10.2 到哪里寻求帮助 96
10.3 放下面子 97
10.4 报告症状,而不是理论 98
10.5 小结 99
第11章 如果你不修复bug,
它将依然存在 101
11.1 检查问题确实已被修复 103
11.2 检查确实是修复措施解决了问题 103
11.3 bug从来不会自己消失 104
11.4 从根本上解决问题 105
11.5 对过程进行修复 107
11.6 小结 107
第12章 通过一个案例讲述所有规则 109
第13章 牛刀小试 113
13.1 灯和吸尘器的故事 113
13.2 大量出现的bug 115
13.3 宽松的限制 119
13.4 识破bug 123
第14章 从帮助台得到的观点 128
14.1 帮助台的限制 130
14.2 规则,帮助台风格 130
14.2.1 理解系统 131
14.2.2 制造失败 132
14.2.3 不要想,而要看 132
14.2.4 分而治之 134
14.2.5 一次只改一个地方 134
14.2.6 保持审计跟踪 135
14.2.7 检查插头 136
14.2.8 获得全新观点 136
14.2.9 如果你不修复bug,它将依然存在 137
14.3 小结 137
第15章 结束语 139
15.1 调试规则网站 139
15.2 如果你是一名工程师 139
15.3 如果你是一名经理 140
15.4 如果你是一名教师 141
15.5 小结 141
程序员2004合订本 上下 内容简介 程序员2004合订本由程序员杂志社联合电子工业出版社*新推出。本合订本沿袭2001、2002、2003《程序员合订本》的风...
《刑法最新立法争议问题研究》内容简介:本书以《刑法修正案(九)》修法过程中及修法前后各方的意见、建议为主要研究对象,梳理、
《Java自然语言处理》内容简介:本书将教会读者如何在Java库的帮助下执行语言分析,同时不断地从结果中获得见解。首先介绍NLP及其各
《当代科技艺术》是关于科技艺术的理论、创作以及科普教育艺术化等研究成果的综合,对科技艺术的理论体系进行了创新性的设计和凝
《知识图谱技术与应用》内容简介:本书系统地介绍了知识图谱的相关概念、技术要素与应用,不仅涵盖了知识图谱技术的发展历程与特点
《新少儿小提琴集体课教程 第六册》内容简介:本教程里充满了音乐材料,从一开始到结束,都是大家熟知的民间音调和国外音乐材料,很
《软件无线电》主要内容有数字无线电,通信系统,数字无线电系统五要素,信号失真的建模,模拟调制和解调,带自动增益控制的抽样
中文版AutoCAD机械设计经典技法118例-含光盘1张 本书特色 《中文版AutoCAD机械设计经典技法118例(附光盘)》编著者郭文亮、郭领艳。全书通过11...
《设计问题(第四辑)》内容简介:本书共由十一篇文章组成,全部译自美国麻省理工学院(MIT)出版社出版的《设计问题》(Design Is
《设计师不读书》是一本为创意专业人士“量身打造”,激发他们设计灵感的书。创意总监、广告撰稿人和设计的倡导者奥斯汀·豪对创
《乾隆帝及其时代》内容简介:本书立足于世界史的视野,以乾隆帝八十多年的生命之旅为切入点,广泛搜罗中外各种文献与档案,向人们
《汤一介散文集》内容简介:本书精选汤一介先生历年来的散文作品,包涵忆旧随笔、传统与现代文化评论和对《老子》《心经》《世说新
《数字化改革:场景应用与综合解决方案》内容简介:伴随着新一代信息技术的纵深发展,以大数据、人工智能、区块链、云计算等新兴技
Theultimateguidetothecellphone,theubiquitousandindispensablepocket-sizedgadgetth...
《2015年考研政治高分练习题库》内容简介:本书由权威专家全新编写—— 全:全面覆盖大纲知识点。专:专门针对单项选择题与多项选择
《往往醉后见天真:回忆傅抱石》内容简介:傅抱石(1904—1905)是我国现代著名国画家、美术史研究和绘画理论家,其艺术成就在中国
書裝幀,就如同女媧造人最後吹出的那口氣,賦予一本書新的生命力,更召喚書中內在的靈魂,成為書籍最初的表情,為作品自身說話。
随着网络的普及,网络游戏得到了众多网民的青睐。但是,网络游戏的盛行,也给游戏玩家和游戏公司带来了很多安全问题,如木马盗号
《典型半导体团簇及组装材料的结构和电子特性》内容简介:典型半导体团簇及其团簇组装材料的结构及其电子性质的研究是当前团簇科学
《精神科医生破案笔记2:青山医院之谜》内容简介:1、诡异之地,进入必疯!每一种疯狂试探的背后,都是破碎的灵魂、病态的躯体; 2