成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

【底層原理】存儲數據包的一生(上)

存儲 存儲軟件
存儲系統從整體的分層一覽,包括了主機/應用,存儲介質,存儲網絡。對于存儲來說就做了一件事:Here is a bit of data. Hold onto it. Give that same bit back to me when I ask for it.

 最近認認真真學習了一個叫《Life of a Storage Packet》講座,借助這個講座將整個存儲的過程理解了下,不放過任何一個有疑問的點。這篇文章算是對講座的理解和自己收獲的總結,同時也為那些對存儲系統不夠了解又想要了解的初學者,展現一個存儲數據包的“生命”。這個演講主要聚焦在“整體的存儲”,強調存儲系統中各個基本元素的關系,并且盡可能簡單、清楚地用一種不同的方式可視化一些存儲的概念。

[[217492]]

先上一張大圖,可以說這篇文章目的就是解釋這個圖:

整體視角

存儲系統從整體的分層一覽,包括了主機/應用,存儲介質,存儲網絡。對于存儲來說就做了一件事:Here is a bit of data. Hold onto it. Give that same bit back to me when I ask for it.

Application視角

每個系統都有會有很多應用程序運行在CPU上,對于這些Application來說,他們覺得自己有很多很多足夠的可用內存。

CPU和MMU

計算機系統中有一個“內存管理單元”(MMU,Memory Management Unit)的概念,MMU負責與DRAM內存直接通信,并且獲得一些可用的“頁”

多租戶:內存被某個進程(比如一個應用)獨享,這些內存不能被其他進程重寫。

地址:將CPU的物理地址翻譯成獨有的DRAM地址或者是很多行DRAMs,有了MMU以后,對于每個進程來說,他們就像是一個人獨占了所有的內存一樣。

訪問內存

Application在他需要訪問的時候,獲取這些內存,在實際進行訪問時,會發生如下事情:

1:Application會問操作系統“Hey,我需要一些可用內存”

2:操作系統向MMU說,“能給我一些可以使用內存頁不?”

3:MMU把一些可用的內存頁給操作系統

4:操作系統把這些可用的內存頁給Application。

分配內存

在上圖中,獲取的那些內存,實際是可以分布在內存中的任何地方的(非連續),MMU在把這些內存給應用的時候會進行初始化操作,當然,當應用不再訪問這些內存頁的時候,也會MMU也會負責回收這些內存。

加速訪問

如果Application對內存的訪問,每次都要都要從MMU獲取的話,那太慢了,因此有個經驗法則是:Always put storage/memory as close to the CPU as possible

可以說在存儲中,改善時間的限制是永恒不變的主題,然后訪問DRAM的話,需要60-100ns的時間。我們需要更快的訪問,甚至達到“0”時間訪問。

緩存的魔法

于是在CPU中增加了一些緩存,當然緩存也是分級別的,對于L1緩存大概花費1ns以內,L2緩存大概花費3-6ns,沒錯,這使得每次訪問從60-100ns提升了幾十倍!

更多的空間

如果DRAM中也沒有足夠的空間時,這是你需要更多的持久化存儲,比如說磁盤。當然直接去訪問磁盤會非常的昂貴,當然這里指的是時間的花費非常昂貴。

在Jeff Dean大神的Software Engineering Advice from Building Large-Scale Distributed Systems給出了數據:L1緩存、L2緩存、主存、硬盤的訪問分別是1ns、5ns、100ns、10,000,000ns級別;

舉個比較形象的例子:你需要快遞送個包裹,快遞一個1公里(L1)、5公里(L2)外的包裹,oops,可能馬云爸爸保證當日達;快遞100公里(DRAM)的包裹,11點前下單,當日達,不能再快了!;快遞1000萬公里(Disk)的快遞,啊親,你真的需要快遞嗎?這可是從地球到月球(38.4萬公里)十幾個來回的距離啊親。

小結

存儲設備和RAM不太一樣,不會和CPU直接進行“對話”,而是有一些其他的部分來幫助他們完成對話,我們在下文從存儲視角進一步去講述。

責任編輯:武曉燕 來源: 碼農有道
相關推薦

2015-04-23 08:51:53

2020-07-09 17:37:47

Linux網絡包中斷

2015-08-03 09:33:21

PH程序員一生

2016-08-24 11:13:30

2021-05-12 00:07:27

TCPIP協議

2023-01-10 08:20:55

RocketMQ消息源碼

2019-04-29 07:53:11

TCP數據包TCP網絡編程

2017-11-20 10:08:48

大數據后悔的事

2021-08-06 22:43:54

中斷架構傳遞

2021-07-23 13:34:50

MySQL存儲InnoDB

2023-03-27 00:13:26

數據包Kubernete網絡

2021-10-26 13:18:52

Go底層函數

2025-02-26 07:59:47

2021-05-26 08:01:25

數據包Scapy數據安全

2012-12-04 10:08:16

2018-01-05 12:42:01

Lisa電腦蘋果Mac

2020-11-29 17:08:50

程序員IT

2015-03-24 13:39:08

IE

2025-05-19 08:43:00

2021-09-28 08:05:56

黑客網絡安全網絡攻擊
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 午夜国产 | 精品国产欧美一区二区三区成人 | 91福利在线观看 | 欧美精品中文 | 欧美成人自拍视频 | 国产精品伦一区二区三级视频 | 久久国产视频网站 | 久久精品国产一区二区三区 | 国产精品亚洲第一 | 在线观看视频一区 | 99视频在线| 亚洲视频一区在线观看 | 伊人久久精品一区二区三区 | 国产精品成人一区二区三区 | 99riav国产一区二区三区 | 亚洲福利av | 亚洲精品久久久久久久久久久久久 | 羞羞在线视频 | 久久久久久久网 | 国产精品日韩在线观看一区二区 | 亚洲成人中文字幕 | 色视频网站免费 | 嫩草视频在线 | 亚洲一区在线观看视频 | 91在线精品视频 | 九九九久久国产免费 | 一级看片 | 午夜电影合集 | 黑人精品xxx一区一二区 | 天天操天天射天天舔 | 羞羞视频在线免费 | 午夜影院在线观看 | 亚洲人成在线播放 | 精品久久久久久中文字幕 | 欧美日韩久| 亚洲欧美一区二区三区在线 | 国产一区二区免费电影 | 欧美一级二级在线观看 | 99爱视频 | 久久精品国产精品青草 | 91精品国产综合久久福利软件 |