自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Slab在內(nèi)核內(nèi)存管理和用戶態(tài)Memcached的雙重存在

系統(tǒng) Linux
很多基礎(chǔ)的概念,將跨越軟件的層次而存在。比如slab,對于內(nèi)核人員,我們都知道slab是buddy之上的一層。

[[416651]]

很多基礎(chǔ)的概念,將跨越軟件的層次而存在。比如slab,對于內(nèi)核人員,我們都知道slab是buddy之上的一層。

因為buddy作為Linux內(nèi)核最底層的內(nèi)存管理器,它分配1頁,2頁,4頁,2^n頁,但是作為內(nèi)核的堆用戶本身,經(jīng)常只是調(diào)用kmalloc()申請一個小內(nèi)存,或者調(diào)用kmem_cache_alloc()申請一個數(shù)據(jù)結(jié)構(gòu),2^n頁給它,會形成大量碎片浪費。所以slab找buddy要了2^n頁后,內(nèi)部切割為同樣size的object,再給kmalloc和kmem_cache_alloc()拿走。

它的邏輯如下:

這樣一種軟件本質(zhì)意義上的需求,不會因為只是內(nèi)核就需要。比如同樣的slab算法,也被著名的用戶態(tài)軟件Memcached需要著。

Memcached是一種分布式內(nèi)存對象緩存系統(tǒng),用于動態(tài)Web等應用以減輕數(shù)據(jù)庫的負載。它在內(nèi)存中緩存數(shù)據(jù)和對象,使用key-value對形式存儲。它的網(wǎng)站首頁(https://memcached.org/)顯示了它的基本用法邏輯:

Memcached的原理也類似內(nèi)核態(tài)page cache的原理:

比如你查詢一個數(shù)據(jù)庫,可以先看看Memcached里面有沒有命中,命中就直接從Memcached的內(nèi)存里面拿到值了,沒有的時候才需要去查數(shù)據(jù)庫。查到后,可以把結(jié)果放入Memcached,這樣下次再訪問同樣數(shù)據(jù),不再需要進行數(shù)據(jù)庫的查詢動作。

Memcached也同樣采用slab分配算法來組織數(shù)據(jù)的存放,里面可以組織不同大小的chunks:

正如Linux內(nèi)核的每一種不同slab里面的object的大小不一樣。

我們安裝1個Memcached:

  1. $ sudo apt-get install memcached 

然后啟動起來,你馬上看到memcached打印說自己創(chuàng)建了各種不同chunk size的slab:

 

當然,還有更多的相似性,比如Memcached里面的對象,也是LRU算法替換。所以LRU這種,也是一種本質(zhì)上的事情。

本文轉(zhuǎn)載自微信公眾號「Linux閱碼場」,可以通過以下二維碼關(guān)注。轉(zhuǎn)載本文請聯(lián)系Linux閱碼場公眾號。

 

責任編輯:武曉燕 來源: Linux閱碼場
相關(guān)推薦

2018-12-06 10:22:54

Linux內(nèi)核內(nèi)存

2021-12-20 09:53:51

用戶態(tài)內(nèi)核態(tài)應用程序

2023-10-26 11:39:54

Linux系統(tǒng)CPU

2013-10-11 17:24:47

Linux運維內(nèi)存管理

2023-01-06 08:04:10

GPU容器虛擬化

2024-12-11 08:18:11

2024-09-29 08:57:25

2021-09-08 10:21:33

內(nèi)核網(wǎng)絡(luò)包Tcpdump

2021-09-17 11:59:21

tcpdump網(wǎng)絡(luò)包Linux

2021-08-31 07:54:24

TCPIP協(xié)議

2018-03-01 16:25:52

Linux內(nèi)核內(nèi)存管理

2018-08-10 22:15:53

2016-08-10 12:52:31

2011-06-03 09:26:11

2017-08-16 16:20:01

Linux內(nèi)核態(tài)搶占用戶態(tài)搶占

2019-05-23 10:59:24

Java內(nèi)存 C++

2025-01-02 11:06:22

2009-11-25 13:08:48

PHP內(nèi)存緩存技術(shù)me

2025-01-06 08:00:09

2021-01-14 09:37:20

內(nèi)核空間用戶
點贊
收藏

51CTO技術(shù)棧公眾號