【0.1代碼編寫知識】之【軟硬件的錯誤排查之道】

以下摘錄自《調(diào)試九法:軟硬件的錯誤排查之道》

調(diào)試規(guī)則

  • 理解系統(tǒng)
  • 制造失敗
  • 不要想,而要看
  • 分而治之
  • 一次只改一個地方
  • 保持審計跟蹤
  • 檢查插頭
  • 獲得全新觀點
  • 如果你不修復(fù)bug瑟枫,它將依然存在

理解系統(tǒng)

這是第一條規(guī)則枫浙,因為它是最重要的询筏。

  • 閱讀手冊
  • 仔細(xì)閱讀每個細(xì)節(jié)
  • 掌握基礎(chǔ)知識
  • 了解工作流程
  • 了解工具
  • 查詢細(xì)節(jié)

制造失敗

雖然看起來很簡單绵脯,但如果不制造失敗的話渊迁,調(diào)試就會變得很困難拧揽。

  • 制造失敗
  • 從頭開始
  • 引發(fā)失敗
  • 但不要模擬失敗
  • 查找不受你控制的條件(正是它導(dǎo)致了間歇性失斕甓堋)
  • 記錄每件事情,并找到間歇性bug的特征
  • 不要過于相信統(tǒng)計數(shù)據(jù)
  • 要認(rèn)識到“那”是可能會發(fā)生的
  • 永遠(yuǎn)不要丟掉一個調(diào)試工具

不要想淤袜,而要看

憑空想象痒谴,問題可能有幾千條原因。而實際的原因只有去看了才能發(fā)現(xiàn)铡羡。

  • 觀察失敗
  • 查看細(xì)節(jié)
  • 植入插裝工具
  • 添加外部插裝工具
  • 不要害怕深入研究
  • 注意海森堡效應(yīng)
  • 猜測只是為了確定搜索的重點

分而治之

當(dāng)bug的藏身之地不斷被縮小一半時积蔚,它將很難再隱藏下去。

  • 通過逐次逼近縮小搜索范圍
  • 確定范圍
  • 確定你位于bug的哪一側(cè)
  • 使用易于查看的測試模式
  • 從有問題的一端開始搜索
  • 修復(fù)已知bug
  • 首先消除噪聲干擾

一次只改一個地方

我們在生活中要有一點先見之明烦周。如果你所做的更改沒有起到預(yù)期的作用尽爆,那么就把它改回來怎顾。它們可能會產(chǎn)生無法預(yù)料的影響。

  • 隔離關(guān)鍵因素
  • 用雙手抓住黃銅桿
  • 一次只改一個測試
  • 與正常情況進行比較
  • 確定自從上一次正常工作以來你改變了什么地方

保持審計跟蹤

不要只是在心里記住“保持審計跟蹤”這條規(guī)則漱贱,而要把它寫下來槐雾。

  • 把你的操作、操作的順序和結(jié)果全部記錄下來
  • 要知道饱亿,任何細(xì)節(jié)都可能是重要的
  • 把事件關(guān)聯(lián)到一起
  • 用于設(shè)計的審計跟蹤在測試中也非常有用
  • 把事情記錄下來蚜退!

檢查插頭

一些顯而易見的假設(shè)往往是錯誤的。請恕我贅述彪笼,假設(shè)錯誤通常是最容易修復(fù)的錯誤钻注。

  • 質(zhì)疑你的假設(shè)
  • 從頭開始
  • 對工具進行測試

獲得全新觀點

不管怎樣,你都需要休息一下配猫,喝杯咖啡幅恋。

  • 征求別人的意見
  • 獲取專業(yè)知識
  • 聽取別人的經(jīng)驗
  • 幫助無處不在
  • 放下面子
  • 報告癥狀,而不要講你的理論
  • 你提出的問題不必十分肯定

如果你不修復(fù)bug泵肄,它將依然存在

現(xiàn)在你已經(jīng)掌握了所有的技術(shù)捆交,沒有理由再讓bug存在了。

  • 查證問題確實已被修復(fù)
  • 查證確實是你的修復(fù)措施解決了問題
  • 要知道腐巢,bug從來不會自己消失
  • 從根本上解決問題
  • 對過程進行修復(fù)

**從幫助臺得到的觀點是不明確的

只能通過遠(yuǎn)程方式了解問題品追,眼睛和耳朵接收到的信息并不十分準(zhǔn)確,而且關(guān)鍵是時間緊迫冯丙。

  • 遵循規(guī)則肉瓦。 無論用戶多么糊涂,都必須找到應(yīng)用規(guī)則的途徑胃惜。
  • 對行動和結(jié)果加以確認(rèn)泞莉。 用戶會誤解你的意思,同時會犯錯誤船殉。通過確認(rèn)他們所說和所做的一切可以及早發(fā)現(xiàn)這些問題鲫趁。
  • 使用自動工具。 不要讓用戶參與系統(tǒng)生成的日志和遠(yuǎn)程監(jiān)控與控制工具利虫。
  • 即使是最簡單的假設(shè)也需要確認(rèn)挨厚。 是的,有些人就是不知道有電才能使用字處理器列吼。
  • 使用可用的故障檢修指南幽崩。 要處理的很可能就是已知的、好的設(shè)計寞钥。不要忽略歷史。
  • 幫助完善故障檢修指南陌选。 如果找到了某個已知系統(tǒng)的一個新問題理郑,將解決問題的所有內(nèi)容進行歸檔可以幫助下一位支持人員蹄溉。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市您炉,隨后出現(xiàn)的幾起案子柒爵,更是在濱河造成了極大的恐慌,老刑警劉巖赚爵,帶你破解...
    沈念sama閱讀 218,204評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件棉胀,死亡現(xiàn)場離奇詭異,居然都是意外死亡冀膝,警方通過查閱死者的電腦和手機唁奢,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,091評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來窝剖,“玉大人麻掸,你說我怎么就攤上這事〈蜕矗” “怎么了脊奋?”我有些...
    開封第一講書人閱讀 164,548評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長疙描。 經(jīng)常有香客問我诚隙,道長,這世上最難降的妖魔是什么起胰? 我笑而不...
    開封第一講書人閱讀 58,657評論 1 293
  • 正文 為了忘掉前任久又,我火速辦了婚禮,結(jié)果婚禮上待错,老公的妹妹穿的比我還像新娘籽孙。我一直安慰自己,他們只是感情好火俄,可當(dāng)我...
    茶點故事閱讀 67,689評論 6 392
  • 文/花漫 我一把揭開白布犯建。 她就那樣靜靜地躺著,像睡著了一般瓜客。 火紅的嫁衣襯著肌膚如雪适瓦。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,554評論 1 305
  • 那天谱仪,我揣著相機與錄音玻熙,去河邊找鬼。 笑死疯攒,一個胖子當(dāng)著我的面吹牛嗦随,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播敬尺,決...
    沈念sama閱讀 40,302評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼枚尼,長吁一口氣:“原來是場噩夢啊……” “哼贴浙!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起署恍,我...
    開封第一講書人閱讀 39,216評論 0 276
  • 序言:老撾萬榮一對情侶失蹤崎溃,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后盯质,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體袁串,經(jīng)...
    沈念sama閱讀 45,661評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,851評論 3 336
  • 正文 我和宋清朗相戀三年呼巷,在試婚紗的時候發(fā)現(xiàn)自己被綠了囱修。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,977評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡朵逝,死狀恐怖蔚袍,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情配名,我是刑警寧澤啤咽,帶...
    沈念sama閱讀 35,697評論 5 347
  • 正文 年R本政府宣布,位于F島的核電站渠脉,受9級特大地震影響宇整,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜芋膘,卻給世界環(huán)境...
    茶點故事閱讀 41,306評論 3 330
  • 文/蒙蒙 一鳞青、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧为朋,春花似錦臂拓、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,898評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至霞溪,卻和暖如春孵滞,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背鸯匹。 一陣腳步聲響...
    開封第一講書人閱讀 33,019評論 1 270
  • 我被黑心中介騙來泰國打工坊饶, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人殴蓬。 一個月前我還...
    沈念sama閱讀 48,138評論 3 370
  • 正文 我出身青樓匿级,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子根蟹,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,927評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 軟硬件調(diào)試通常會讓人手忙腳亂脓杉,但只要遵循一定的方法便會事半功倍糟秘。本文總結(jié)了《調(diào)試九法:軟硬件錯誤的排查之道》的精華...
    硬件工程師ted閱讀 1,232評論 0 4
  • 1****简逮、問:你在測試中發(fā)現(xiàn)了一個bug****,但是開發(fā)經(jīng)理認(rèn)為這不是一個bug****尿赚,你應(yīng)該怎樣解決散庶? 首...
    蛋炒飯_By閱讀 5,294評論 1 94
  • 【2017年9月16日】宏哥病了。受家族疾病影響凌净,他從小體弱悲龟,心動過速,存在冠心病的可能冰寻。為此须教,他一向注意保養(yǎng)身體...
    菩提蔓閱讀 167評論 0 0
  • 在18年划乖,相信大家都知道很多企業(yè)上市贬养,很多人抓住了機會,很多人不知道琴庵,不相信误算,錯過了機會。那么股市火熱迷殿,入市的人越...
    郭定富閱讀 504評論 0 7
  • 近期的幾幅淡彩練習(xí)
    帕帕拉恰Padparadsch閱讀 322評論 1 4