最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊

阿里二面:什么是mmap?

2022-11-23 16:28 作者:杰尼龜1100  | 我要投稿

勵(lì)志當(dāng)最強(qiáng)課代表的我來給大家總結(jié)總結(jié)??????

什么是mmap?


視頻內(nèi)容:

1??零拷貝??

2??DNA 拷貝??

3??mmap ???

4??set file 替代 read 加 write??


視頻內(nèi)容:

1??零拷貝??

首先需要對傳統(tǒng)的 lo 方式有一個(gè)概念,基于傳統(tǒng)的 lo 方式底層實(shí)際上是通過調(diào)用 read 和 write 的函數(shù)來實(shí)現(xiàn),通過 read 把數(shù)據(jù)從硬盤讀取到內(nèi)核緩沖區(qū),再復(fù)制到用戶緩沖區(qū),然后再通過 right 寫入到 socket 緩存區(qū),最后寫入網(wǎng)卡設(shè)備。

用戶態(tài)和內(nèi)核態(tài)的上下文切換和4次拷貝。

首先第一步,用戶進(jìn)程通過 rate 方法向操作系統(tǒng)發(fā)起調(diào)用,只是上下文從用戶態(tài)轉(zhuǎn)向內(nèi)核態(tài)。

第二步, DMI 控制器把數(shù)據(jù)從硬盤中拷貝到讀緩沖區(qū)。

第三步, CPU 把讀緩沖區(qū)數(shù)據(jù)拷貝到應(yīng)用緩沖區(qū),上下文從內(nèi)核態(tài)轉(zhuǎn)為用戶態(tài), RAID 返回。

第四步,用戶進(jìn)程通過 RAID 方法發(fā)起調(diào)用,上下文從用戶態(tài)切換為內(nèi)核態(tài)。

第五步, CPU 將應(yīng)用緩沖區(qū)中的數(shù)據(jù)拷貝到 socket 緩沖區(qū)。

第六步, DMA 控制器把數(shù)據(jù)從 socket 緩沖區(qū)拷貝到網(wǎng)卡,上下文從內(nèi)核態(tài)切換回用戶態(tài), write 返回。

?
00:05
?



2??DNA 拷貝??

本質(zhì)上來說它就是一塊主板上獨(dú)立的芯片,通過它來進(jìn)行內(nèi)存和 IO 設(shè)備的數(shù)據(jù)傳輸,從而減少了 CPU 的等待時(shí)間

?
01:19
?



3??mmap ???

mmap 主要實(shí)現(xiàn)方式是將讀緩沖區(qū)中的地址和用戶緩沖區(qū)中的地址進(jìn)行映射,內(nèi)核緩沖區(qū)和應(yīng)用緩沖區(qū)共享,從而減少了從讀緩沖區(qū)到用戶緩沖區(qū)的一次 CPU 拷貝。

第一步,用戶進(jìn)程通過 mmap 方法向操作系統(tǒng)發(fā)起調(diào)用上下文,從用戶態(tài)轉(zhuǎn)向內(nèi)核態(tài)。

第二步, DMI 控制器把數(shù)據(jù)從硬盤中拷貝到讀緩中區(qū)。

第三步,上下文從內(nèi)核態(tài)轉(zhuǎn)為用戶態(tài), MF 調(diào)用返回。

第四步,用戶進(jìn)程通過 write 方法發(fā)起調(diào)用上下文,從用戶態(tài)轉(zhuǎn)為內(nèi)核態(tài)。

第五步, debug 將讀緩沖區(qū)中的數(shù)據(jù)拷貝到 socket 緩沖區(qū)。

第六步, DMI 控制器把數(shù)據(jù)從 socket 緩沖區(qū)拷貝到網(wǎng)卡上下文,從內(nèi)核態(tài)切換回用戶態(tài), write 返回。

?
02:07
?



4?? set file 替代 read 加 write??

由于 set file 替代 read 加 write 從而節(jié)省了一次系統(tǒng)調(diào)用,也就是兩次上下文的切換。

第一步,用戶進(jìn)程通過現(xiàn)在發(fā)現(xiàn)方法向操作系統(tǒng)發(fā)起調(diào)用,上下文從用戶態(tài)轉(zhuǎn)向內(nèi)核態(tài)。

第二步, DMA 控制器把數(shù)據(jù)從硬盤中拷貝到讀緩沖區(qū)。

第三步, CPU 將讀緩沖區(qū)的數(shù)據(jù)拷貝到 socket 緩沖區(qū)。

第四步, DMI 控制器把數(shù)據(jù)從 socket 緩存區(qū)拷貝到網(wǎng)卡,上下文從內(nèi)核態(tài)切換回用戶態(tài) send file 調(diào)用返回 send file 方法 IO 數(shù)據(jù)對用戶空間

?
02:39
?



阿里二面:什么是mmap?的評論 (共 條)

分享到微博請遵守國家法律
湘阴县| 界首市| 佛冈县| 景宁| 平利县| 宕昌县| 宜章县| 金乡县| 正安县| 乐山市| 日土县| 班戈县| 麦盖提县| 丹凤县| 昭觉县| 株洲县| 临澧县| 铅山县| 溧阳市| 宁晋县| 台北市| 龙里县| 襄城县| 垣曲县| 刚察县| 仪陇县| 怀远县| 岳普湖县| 潮安县| 法库县| 祁连县| 大连市| 邹平县| 都江堰市| 寻乌县| 临夏县| 苗栗县| 封丘县| 右玉县| 沁阳市| 桑植县|