本文用較為輕松的方式介紹了幾個經典的互斥算法: Dekker 算法、Dijkstra 提出的算法、Peterson 算法和面包店算法,並簡單地給出了每一個算法的正確性證明和相關的討論。本文探尋分布式計算歷史上的幾個非常有名非常經典的互斥算法,盡管這些算法幾乎是所有操作系統、分布式系統或多線程編程課本中必介紹的算 法,可是由於這些算法由於性能問題已經被現代的算法或機制替代了,實際中不會有人使用這些算法。盡管如此,了解這些算法可以幫助我們理解同步領域的基本原理。此外,了解這些算法的正確性證明可還可以訓練並發算法正確性推導的思維。
由於博客上不容易做出精美的排版,所以本文采用LaTeX排版並輸出pdf,下面是pdf文件的新浪微盤鏈接,歡迎下載!
http://vdisk.weibo.com/s/muyTn