日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

两个精彩的比喻:吞吐量和延迟、信号量和互斥锁

發布時間:2025/3/8 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 两个精彩的比喻:吞吐量和延迟、信号量和互斥锁 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

  本文為轉載文章,覺得很有意思,原文在這里。

  我們知道,計算機中有很多概念并不容易理解,有些時候一個好的比喻能勝過很多句解釋。下面兩個是我看到的兩個很精彩的比喻,拿出來和大家分享一下。

  第一比喻是關于吞吐量(throughput)和延遲(latency)的。如果你要搞網絡性能優化,這兩個概念是你必須要知道的,它們看似簡單實則不是。我相信包括我在內的很多人都曾經認為大的吞吐量就意味著低延遲,高延遲就意味著吞吐量變小。下面的比喻可以解釋這種觀點根本不對。該比喻來自這里,我來做個大體意譯(非逐字翻譯)。

  我們可以把網絡發送數據包比喻成去街邊的 ATM 取錢。每一個人從開始使用 ATM 到取錢結束整個過程都需要一分鐘,所以這里的延遲是60秒,那吞吐量呢?當然是 1/60 人/秒。現在銀行升級了他們的 ATM 機操作系統,每個人只要30秒就可以完成取款了!延遲是 30秒,吞吐量是 1/30 人/秒。很好理解,可是前面的問題依然存在對不對?別慌,看下面。

  因為這附近來取錢的人比較多,現在銀行決定在這里增加一臺 ATM 機,一共有兩臺 ATM 機了。現在,一分鐘可以讓4個人完成取錢了,雖然你去排隊取錢時在 ATM 機前還是要用 30 秒!也就是說,延遲沒有變,但吞吐量增大了!可見,吞吐量可以不用通過減小延遲來提高。

  好了,現在銀行為了改進服務又做出了一個新的決定:每個來取錢的客戶在取完錢之后必須在旁邊填寫一個調查問卷,用時也是30秒。那么,現在你去取錢的話從開始使用 ATM 到完成調查問卷離開的時間又是 60 秒了!換句話說,延遲是60秒。而吞吐量根本沒變!一分鐘之內還是可以進來4個人!可見,延遲增加了,而吞吐量沒有變。

  從這個比喻中我們可以看出,延遲測量的是每個客戶(每個應用程序)感受到的時間長短,而吞吐量測量的是整個銀行(整個操作系統)的處理效率,是兩個完全不同的概念。用作者的原話說是:

  In short, the throughput is a function of how many stages are in parallel while latency is a function of how many are in series when there are multiple stages in the processing. The stage with the lowest throughput determines the overall throughput.

  正如銀行為了讓客戶滿意不光要提高自身的辦事效率外,還要盡量縮短客戶在銀行辦事所花的時間一樣,操作系統不光要盡量讓網絡吞吐量大,而且還要讓每個應用程序發送數據的延遲盡量小。這是兩個不同的目標。

  另外一個比喻是解釋信號量(semaphore)和互斥鎖(mutex)的區別。該比喻最初來自這里,我先翻譯一下,然后對它做個改進。

  互斥鎖是一把公共廁所的鑰匙。一個人使用廁所的時候可以拿到這把鑰匙,用完之后把這把鑰匙交給排隊的下一個人。

  信號量是沒有人使用的廁所的鑰匙數量,所有廁所的鑰匙都一樣。比如有4個廁所有相同的鑰匙和鎖。信號量的值就是鑰匙的數量,一開始是4。當進來一個人的時候數量就是少一個,如果4個廁所都滿了,信號量就成0了,出去一個人就增加1,并把鑰匙交給排隊的下一個人。

  這個例子并不是太好,尤其是它無法解釋 二元(binary)信號量和互斥鎖的區別!我把這個比喻做了改進。互斥鎖的比喻還是和上面一樣,需要指出的是,當你拿到那把鑰匙的時候你就是它的擁有者(owner),別人是無法打開廁所門的。

  而信號量什么呢?它就是一個大的公共廁所,里面有若干個位置,外面的大門口有一個可以翻動牌子寫著“已滿”和“可用”,當里面還有空的位置的時候,進去的人不用翻動這個牌子,直到沒有位置時最后一個進去的人必須把它設成“已滿”,這時后面的人必須排隊等候,然后出去的人必須把牌子翻到“可用”,如果需要的話。

  很好理解對嘛?那么它怎么解釋二元信號量呢?也就是當這個廁所里面能容納一個人的時候,每個人進去的時候都要把門口的牌子翻到“已滿”,出去的時候翻到“可用”。它和互斥鎖的區別馬上就可以看出來了,翻動的牌子在外面可以被別人翻的,而鎖住的鎖只有拿鑰匙的人才可以開!

  當然了,信號量之所以翻譯成“信號”,還是有道理的,因為它(廁所門口的牌子)標示的是資源(廁所空位)的狀態,而互斥鎖就是鎖,它實實在在地鎖住了資源。這在生產者消費者的情況下區別更明顯。

總結

以上是生活随笔為你收集整理的两个精彩的比喻:吞吐量和延迟、信号量和互斥锁的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产区视频在线观看 | 少妇无内裤下蹲露大唇视频 | 日本男人天堂网 | 国产精品一区二区三区免费 | 欧美日本一区二区三区 | 日韩av在线中文字幕 | 热热热av| 超碰av在线免费观看 | 亚洲不卡一区二区三区 | 成年人激情视频 | 欧美激情第五页 | 国产视频在 | 亚洲精品国产手机 | 日本在线不卡一区二区 | 夜夜操夜夜爱 | 日本大尺度吃奶做爰视频 | 手机看片福利永久 | 91们嫩草伦理 | www.99re.| 91视频免费在观看 | 鲁一鲁啪一啪 | 国产精品国产精品国产专区不片 | 麻豆影视大全 | 日韩精品成人一区二区在线 | 亚洲字幕av一区二区三区四区 | 亚洲人人在线 | 天堂va蜜桃一区 | 欧美日韩国 | 中文字幕一区二区视频 | 特级淫片裸体免费看冫 | 天天干天天弄 | 自拍偷拍亚洲视频 | 亚洲国产高清在线 | 美女视频免费在线观看 | 最新在线观看av | 18禁一区二区| 日本a级在线 | 亚洲欧美激情图片 | 国产精品国产三级国产播12软件 | 日韩精品第一 | 国产美女一级视频 | 波多野结衣视频一区二区 | 91精品国产91久久久久久 | 国产三级做爰高清在线 | 日韩色吧| 乱图区| 亚洲深爱 | 香蕉av网站 | 精品人妻午夜一区二区三区四区 | www亚洲视频 | 一边顶弄一边接吻 | 日本四级电影 | 解开人妻的裙子猛烈进入 | 欧美黄色免费网站 | 久久久久一区二区三区四区 | 成人靠逼视频 | 一级黄色aa | 亚洲精品91在线 | 视频区小说区图片区 | 日产精品久久久久 | 一区二区视频播放 | 中文字幕三级电影 | 青青青青在线 | 国产精品久久久久久 | 狠狠2020| 综合色亚洲 | 国产香蕉在线 | 欧美毛茸茸 | 中文字幕乱码人妻无码久久 | 日本一二三不卡视频 | 国产亚洲精品精品精品 | 久久精品一区二区免费播放 | 激情久久中文字幕 | 亚洲一区二区三区四区在线播放 | 伊人网在线观看 | 2018国产大陆天天弄 | 在线观看视频一区 | 白浆影院| 成人午夜淫片100集 伊人久久国产 | 亚洲国产精品成人久久蜜臀 | 误杀1电影免费观看高清完整版 | 男插女动态图 | 日韩性网站 | 97视频在线免费 | 三级在线网址 | 亚洲婷婷在线观看 | 亚洲av毛片一区二二区三三区 | 日韩欧美国产一区二区在线观看 | 又紧又大又爽精品一区二区 | 欧美一区二区三 | 麻豆精品在线观看 | 日韩精品视频免费看 | 日本一区二区在线视频 | 国内精品视频在线 | 国产欧美日韩综合精品 | 久久综合网址 | 亚洲黄色在线看 | 亚洲欧美字幕 | 国产视频在线免费观看 |