日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

用C来实现内存池

發布時間:2025/6/15 72 豆豆
生活随笔 收集整理的這篇文章主要介紹了 用C来实现内存池 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

介紹:

?????? 設計內存池的目標是為了保證服務器長時間高效的運行,通過對申請空間小而申請頻繁的對象進行有效管理,減少內存碎片的產生,合理分配管理用戶內存,從而減少系統中出現有效空間足夠,而無法分配大塊連續內存的情況。

目標:

??? 此次設計內存池的基本目標,需要滿足線程安全性(多線程),適量的內存泄露越界檢查,運行效率不太低于malloc/free方式,實現對4-128字節范圍內的內存空間申請的內存池管理(非單一固定大小對象管理的內存池)。

內存池技術設計與實現

??? 本內存池的設計方法主要參考SGI的alloc的設計方案,為了適合一般的應用,并在alloc的基礎上做一些簡單的修改。

??? Mempool的內存池設計方案如下(也可參考候捷《深入剖析STL》)

??? 從系統申請大塊heap內存,在此內存上劃分不同大小的區塊,并把具有相同大小的區塊連接起來,組成一個鏈表。比如A大小的塊,組成鏈表L,當申請A大小 時,直接從鏈表L頭部(如果不為空)上取到一塊交給申請者,當釋放A大小的塊時,直接掛接到L的頭部。內存池的原理比較簡單,但是在具體實現過程中大量的 細節需要注意。

??? 1:字節對齊。

??? 為了方便內存池中對象的管理,需要對申請內存空間的進行調整,在Mempool中,字節對齊的大小為最接近8倍數的字節數。比如,用戶申請5個字節,Mempool首先會把它調整為8字節。比如申請22字節,會調整為24,對比關系如下

序號

對齊字節

范圍

0

8

1-8

1

16

9-16

2

24

17-24

3

32

25-32

4

40

33-40

5

48

41-48

6

56

49-56

7

64

57-64

8

72

65-72

9

80

73-80

10

88

81-88

11

96

89-96

12

104

97-104

13

112

105-112

14

120

113-120

15

128

121-128

(圖1)

對于超過128字節的申請,直接調用malloc函數申請內存空間。這里設計的內存池并不是對所有的對象進行內存管理,只是對申請內存空間小,而申 請頻繁的對象進行管理,對于超過128字節的對象申請,不予考慮。這個需要與實際項目結合,并不是固定不變的。實現對齊操作的函數如下

static size_t round_up(size_t size)
{
??????? return (((size)+7) &~ 7);// 按8字節對齊
}

2:構建索引表

內存池中管理的對象都是固定大小,現在要管理0-128字節的范圍內的對象申請空間,除了采用上面提到的字節對齊外,還需要變通一下,這就是建立索引表,做法如下;
static _obj* ?free_list[16];
創建一個包含16個_obj*指針的數組,關于_obj結構后面詳細講解。free_list[0]記錄所有空閑空間為8字節的鏈表的首地 址;free_list[1]對應16字節的鏈表,free_list[2]對應24字節的列表。free_list中的下標和字節鏈表對應關系參考圖1 中的“序號”和“對齊字節”之間的關系。這種關系,我們很容易用算法計算出來。如下

static size_t freelist_index(size_t size)
{
??????? return (((size)+7)/7-1);// 按8字節對齊
}

??? 所以,這樣當用戶申請空間A時,我們只是通過上面簡單的轉換,就可以跳轉到包含A字節大小的空閑鏈表上,如下;
_obj** p = free_list[freelist_index(A)];

3:構建空閑鏈表

通過索引表,我們知道mempool中維持著16條空閑鏈表,這些空閑鏈表中管理的空閑對象大小分別為8,16,24,32,40…128。這些空閑鏈表鏈接起來的方式完全相同。一般情況下我們構建單鏈表時需要創建如下的一個結構體。

struct Obj
{
??? Obj *next;
??? Char* p;
??? Int iSize;
}

next指針指向下一個這樣的結構,p指向真正可用空間,iSize用于只是可用空間的大小,在其他的一些內存池實現中,還有更復雜的結構體,比如 還包括記錄此結構體的上級結構體的指針,結構體中當前使用空間的變量等,當用戶申請空間時,把此結構體添加的用戶申請空間中去,比如用戶申請12字節的空 間,可以這樣做

Obj *p = (Obj*)malloc(12+sizeof(Obj));
p->next = NULL;
p->p = (char*)p+sizeof(Obj);
p->iSize = 12;

但是,我們并沒有采用這種方式,這種方式的一個缺點就是,用戶申請小空間時,內存池加料太多了。比如用戶申請12字節時,而真實情況是內存池向內存 申請了12+ sizeof(Obj)=12+12=24字節的內存空間,這樣浪費大量內存用在標記內存空間上去,并且也沒有體現索引表的優勢。Mempool采用的是 union方式

union Obj
{
??? Obj *next;
??? char client_data[1];
}

這里除了把上面的struct修改為union,并把int iSize去掉,同時把char*p,修改為char client_data[1],并沒有做太多的修改。而優勢也恰恰體現在這里。如果采用struct方式,我們需要維護兩條鏈表,一條鏈表是,已分配內存 空間鏈表,另一條是未分配(空閑)空間鏈表。而我們使用索引表和union結構體,只需要維護一條鏈表,即未分配空間鏈表。具體如下

索引表的作用有兩條1:如上所說,維護16條空閑鏈表2:變相記錄每條鏈表上空間的大小,比如下標為3的索引表內維持著是大小為24字節的空閑鏈表。這樣我們通過索引表減少在結構體內記錄p所指向空間大小的iSize變量。從而減少4個字節。

Union的特性是,結構內的變量是互斥存在的。再運行狀態下,只是存在一種變量類型。所以在這里sizeof(Obj)的大小為4,難道這里我們也需要把這4字節也加到用戶申請空間中去嘛?其實不是,如果這樣,我們又抹殺了union的特性。

當我們構建空閑分配鏈表時,我們通過next指向下一個union結構體,這樣我們不使用p指針。當把這個結構體分配出去時,我們直接返回 client_data的地址,此時client_data正好指向申請空間的首字節。所以這樣,我們就不用在用戶申請空間上添加任何東西。


圖2

??? Obj的連接方式如上所示,這樣我們無需為用戶申請空間添加任何內容。???

4:記錄申請空間字節數

如果采用面向對象方式,或者我們在釋放內存池的空間時能夠明確知道釋放空間的大小,無需采用這種方式。


圖3

在C語言中的free沒有傳遞釋放空間大小,而可以正確釋放,在這里也是模仿這種方式,采用這種記錄申請空間大小的方式去釋放內存。用戶申請空 間+1操作將在字節對齊之前執行,找到合適空間后,把首字節改寫為申請空間的大小,當然1個字節最多紀錄256個數,如果項目需要,可以設置為short 類型或者int類型,不過這樣就需要占用用戶比較大的空間。當釋放內存空間時,首先讀取這個字節,獲取空間大小,進行釋放。為了便于對大于128字節對象 的大小進行合適的釋放,同時也對大于128字節的內存申請,添加1字節記錄大小。所以現在這里限制了用戶內存申請空間不得大于255字節,不過現在已經滿 足項目要求。當然也可以修改為用short類型記錄申請空間的大小。

??? // 申請
??? *(( unsigned char *)result) = (size_t)n;
????unsigned char * pTemp = (unsigned char*)result;
????++pTemp;
??? result = (_obj*)pTemp;
??? return result;

??? // 釋放
????unsigned char * pTemp = (unsigned char *)ptr;
????--pTemp;
????ptr = (void*)pTemp;
????n = (size_t)(*( unsigned char *)ptr);

5:內存池的分配原理

在內存池的設計中,有兩個重要的操作過程1:chunk_alloc,申請大塊內存,2:refill回填操作,內存池初始化化時并不是為索引表中 的每一項都創建空閑分配鏈表,這個過程會推遲到,只有用戶提取請求時才會創建這樣的分配鏈表。詳細參考如下代碼(在sgi中stl_alloc.h文件中 你也可以看到這兩個函數),主要步驟在注釋中已經說明。

/**
* @bri: 申請大塊內存,并返回size*(*nobjs)大小的內存塊
* @param: size,round_up對齊后的大小,nobjs
* @return: 返回指向第一個對象內存指針
*/
static char* chunk_alloc(size_t size, int *nobjs)
{
???? /**< 返回指針 */
???? char* __result;
???? /**< 申請內存塊大小 */
???? size_t __total_bytes = size *(*nobjs);
???? /**< 當前內存可用空間 */
???? size_t __bytes_left = _end_free - _start_free;

???? /**< 內存池中還有大片可用內存 */
???? if (__bytes_left >= __total_bytes)
???? {
???????? __result = _start_free;
???????? _start_free += __total_bytes;
???????? return (__result);
???? }
???? /**< 至少還有一個對象大小的內存空間 */
???? else if (__bytes_left >= size)
???? {
???????? *nobjs = (int)(__bytes_left/size);
???????? __total_bytes = size * (*nobjs);
???????? __result = _start_free;
???????? _start_free += __total_bytes;
???????? return (__result);
???? }
???? /**< 內存池中沒有任何空間 */
???? else
???? {
???????? /**< 重新申請內存池的大小 */
???????? size_t __bytes_to_get = 2 * __total_bytes + round_up(_heap_size >> 4);
???????? /**< 把內存中剩余的空間添加到freelist中 */
???????? if(__bytes_left > 0)
???????? {
????????????? _obj *VOLATILE* __my_free_list =?
?????????????????? _free_list + freelist_index(__bytes_left);
????????????? ((_obj*)_start_free)->free_list_link =
*__my_free_list;
????????????? *__my_free_list = (_obj*)_start_free;
???????? }
???????? // 申請新的大塊空間
???????? _start_free = (char*)malloc(__bytes_to_get);
???????? /*=======================================================================*/
???????? memset(_start_free,0,__bytes_to_get);
???????? /*=======================================================================*/
???????? // 系統內存已經無可用內存,那么從內存池中壓縮內存
???????? if(0 == _start_free)
???????? {
????????????? size_t __i;
????????????? _obj *VOLATILE* __my_free_list;
????????????? _obj *__p;
????????????? /**< 從freelist中逐項檢查可用空間(此時只收集比size對象大的內存空間) */
????????????? for (__i = size; __i <= (size_t)__MAX_BYTES; __i += __ALIGN)
????????????? {
?????????????????? __my_free_list = _free_list + freelist_index(__i);
?????????????????? __p = *__my_free_list;
?????????????????? /**< 找到空閑塊 */
?????????????????? if (__p != 0)
?????????????????? {
?????????????????????? *__my_free_list = __p->free_list_link;
?????????????????????? _start_free = (char*)__p;
?????????????????????? _end_free = _start_free + __i;
?????????????????????? return (chunk_alloc(size,nobjs));
?????????????????? }
????????????? }
????????????? _end_free = 0;
????????????? /**< 再次申請內存,可能觸發一個異常 */
????????????? _start_free = (char*)malloc(__bytes_to_get);
???????? }
???????? /**< 記錄當前內存池的容量 */
???????? _heap_size += __bytes_to_get;
???????? _end_free = _start_free + __bytes_to_get;
???????? return (chunk_alloc(size,nobjs));
???? }
}

/*=======================================================================*/
/**
?* @bri: 填充freelist的連接,默認填充20個
?* @param: __n,填充對象的大小,8字節對齊后的value
?* @return: 空閑
?*/
static void* refill(size_t n)
{
???? int __nobjs = 20;
???? char* __chunk = (char*)chunk_alloc(n, &__nobjs);
???? _obj *VOLATILE* __my_free_list;
???? _obj *VOLATILE* __my_free_list1;
???? _obj * __result;
???? _obj * __current_obj;
???? _obj * __next_obj;
???? int __i;
???? // 如果內存池中僅有一個對象
???? if (1 == __nobjs)?
???????? return(__chunk);
???? __my_free_list = _free_list + freelist_index(n);
???? /* Build free list in chunk */
???? __result = (_obj*)__chunk;
???? *__my_free_list = __next_obj = (_obj*)(__chunk + n);
???? __my_free_list1 = _free_list + freelist_index(n);
???? for (__i = 1;; ++__i)
???? {
???????? __current_obj = __next_obj;
???????? __next_obj = (_obj*)((char*)__next_obj+n);
???????? if(__nobjs - 1 == __i)
???????? {
????????????? __current_obj->free_list_link = 0;
????????????? break;
???????? }else{
????????????? __current_obj->free_list_link = __next_obj;
???????? }
???? }
???? return(__result);
}

經過上面操作后,內存池可能會成為如下的一種狀態。從圖上我們可以看到,已經構建了8,24,88,128字節的空閑分配鏈表,而其他沒有分配空閑 分配鏈表的他們的指針都指向NULL。我們通過判斷索引表中的指針是否為NULL,知道是否已經構建空閑分配表或者空閑分配表是否用完,如果此處指針為 NULL,我們調用refill函數,重新申請20個這樣大小的內存空間,并把他們連接起來。在refill函數內,我們要查看大內存中是否有可用內存, 如果有,并且大小合適,就返回給refill函數。


圖4

?

??? 6:線程安全
??? 采用互斥體,保證線程安全。

內存池測試

??? 內存池的測試主要分兩部分測試1:單線程下malloc與mempool的分配速度對比2:多線程下malloc和mempool的分配速度對比,我們分為4,10,16個線程進行測試了。
??? 測試環境:操作系統:windows2003+sp1,VC7.1+sp1,硬件環境:intel(R) Celeron(R) CPU 2.53GHz,512M物理內存。

??? 申請內存空間設定如下
#define ALLOCNUMBER0 4
#define ALLOCNUMBER1 7
#define ALLOCNUMBER2 23
#define ALLOCNUMBER3 56
#define ALLOCNUMBER4 10
#define ALLOCNUMBER5 60
#define ALLOCNUMBER6 5
#define ALLOCNUMBER7 80
#define ALLOCNUMBER8 9
#define ALLOCNUMBER9 100

??? Malloc方式和mempool方式均使用如上數據進行內存空間的申請和釋放。申請過程,每次循環申請釋放上述數據20次
??? 我們對malloc和mempool,分別進行了如下申請次數的測試(單位為萬)

2

10

20

30

40

50

80

100

150

200

malloc和mempool在單線程,多線程,release,debug版的各種測試數據,形成如下的統計圖


圖5

可以看到mempool無論在多線程還是在單線程情況下,mempool的速度都優于malloc方式的直接分配。

??? Malloc方式debug模式下,在不同的線程下,運行時間如下,通過圖片可知,malloc方式,在debug模式下,申請空間的速度和多線程的關系不大。多線程方式,要略快于單線程的運行實現。


圖6

??? Malloc方式release模式測試結果如下。


圖7

多線程的優勢,逐漸體現出來。當執行200w次申請和釋放時,多線程要比單線程快1500ms左右,而4,10,16個線程之間的差別并不是特別大。不過整體感覺4個線程的運行時間要稍微高于10,16個線程的情況下,意味著進程中線程越多用在線程切換上的時間就越多。

下面是mempool在debug測試結果


圖8

??? 下面是mempool在release模式下的測試結果


圖9

??? 以上所有統計圖中所用到的數據,是我們測試三次后平均值。

通過上面的測試,可以知道mempool的性能基本上超過直接malloc方式,在200w次申請和釋放的情況下,單線程release版情況 下,mempool比直接malloc快110倍。而在4個線程情況下,mempool要比直接malloc快7倍左右。以上測試只是申請速度的測試,在 不同的壓力情況下,測試結果可能會不同,測試結果也不能說明mempool方式比malloc方式穩定。

??? 小結:內存池基本上滿足初期設計目標,但是她并不是完美的,有缺陷,比如,不能申請大于256字節的內存空間,無內存越界檢查,無內存自動回縮功能等。只是這些對我們的影響還不是那么重要。

由于這是一個公司項目,代碼涉及版權,所以不能發布出來。如果你想做自己的內存池,可以與我聯系ugg_xchj#hotmail.com.

?

來源:http://blog.csdn.net/yangzhongxuan/article/details/8017629

總結

以上是生活随笔為你收集整理的用C来实现内存池的全部內容,希望文章能夠幫你解決所遇到的問題。

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

亚洲精品视频免费在线 | 久久久久婷 | 18女毛片| 4438全国亚洲精品观看视频 | 免费日韩 精品中文字幕视频在线 | 欧美在线观看视频一区二区 | 成人理论在线观看 | 日韩电影久久久 | 久久免费视屏 | 中文在线8资源库 | www国产亚洲精品 | 99久久婷婷| av免费在线看网站 | 樱空桃av| 日韩在线观看你懂得 | 91看片在线 | 综合网天天色 | 在线视频你懂得 | 成全免费观看视频 | 91一区二区三区在线观看 | 日韩在线三区 | 色婷婷激情网 | av片在线观看 | 日韩丝袜在线观看 | 亚洲欧美乱综合图片区小说区 | 亚洲午夜在线视频 | av黄色免费网站 | 99精品欧美一区二区蜜桃免费 | 天堂av在线网站 | 97国产精品 | 在线观看av中文字幕 | 色午夜 | 国产一及片 | 天天做天天爱天天综合网 | 香蕉视频免费看 | 日日夜夜骑 | 曰本免费av | 视频在线观看国产 | 国产成人久久av | 免费av网站观看 | 日韩欧美国产视频 | 一区二区精品久久 | 成人欧美亚洲 | 二区三区精品 | 天天艹天天 | 激情在线网址 | 操老逼免费视频 | 欧美国产日韩激情 | 国产成人精品一二三区 | 欧美性高跟鞋xxxxhd | 日本深夜福利视频 | 午夜视频在线观看一区二区三区 | 99久热在线精品视频 | 在线观看免费黄视频 | 国产成人av在线影院 | 99se视频在线观看 | 欧美一级久久 | 一级免费黄色 | 日韩精品久久久 | 久久久久美女 | 97超碰在线久草超碰在线观看 | 久草在线手机观看 | 久久久国产网站 | 国产在线欧美在线 | 久久99久久99精品免观看软件 | 四虎国产精品永久在线国在线 | 最近中文国产在线视频 | 96av视频| 色悠悠久久综合 | 日韩乱色精品一区二区 | 国产高清久久久 | 啪啪免费视频网站 | 天天拍夜夜拍 | 香蕉日日| 日韩视频中文字幕在线观看 | 九九热国产 | 久久电影日韩 | 一区二区三区四区免费视频 | 97偷拍视频 | 五月婷婷黄色 | 91成人黄色| 五月丁婷婷 | 美女黄频在线观看 | 久久视频在线观看中文字幕 | 日韩va欧美va亚洲va久久 | 国产男女爽爽爽免费视频 | 国产精品一二三 | 国产精品久久久久一区二区三区共 | 99精品免费网 | 波多野结衣电影久久 | 日韩一区二区三区在线观看 | 日韩av中文在线 | 国产资源在线播放 | 国色天香av| 不卡精品视频 | 久久精品美女 | 日韩在线免费小视频 | 国产午夜精品一区二区三区在线观看 | 日韩高清免费电影 | 一区二区三区在线观看免费视频 | 国产高清视频在线播放一区 | 片黄色毛片黄色毛片 | 狠狠色丁香九九婷婷综合五月 | 黄色亚洲精品 | 久久九九精品久久 | 中文字幕乱码亚洲精品一区 | 亚洲精品视频偷拍 | 亚洲片在线资源 | 国产免费视频在线 | 亚洲在线黄色 | 手机av在线网站 | 久久久国内精品 | 国产精品久久久久av免费 | 成人精品一区二区三区中文字幕 | 国产成人三级三级三级97 | 午夜的福利 | 国产精品电影在线 | 亚洲精品综合在线观看 | 国产成人av一区二区三区在线观看 | 久久看毛片 | 亚洲国产三级在线 | 亚洲三级毛片 | 中文字幕免费观看全部电影 | 高潮毛片无遮挡高清免费 | 欧美analxxxx| av福利电影 | 日韩免费一区二区在线观看 | 91成人免费在线 | 国产亚洲精品久久网站 | 一区二区丝袜 | 国产又粗又猛又爽又黄的视频免费 | 一区二区三区视频在线 | 久久免费电影网 | 欧美精品小视频 | 国产99久久久国产精品免费看 | 天天做天天爱天天综合网 | 国产日产精品一区二区三区四区 | 四虎影视精品永久在线观看 | 免费在线黄网 | 在线视频app | 成人动态视频 | 啪啪免费视频网站 | 国产精品女人网站 | 久久精品第一页 | 国产精品嫩草影院9 | 男女视频91 | 亚洲午夜久久久久久久久电影网 | 精品国产理论 | 日韩和的一区二在线 | 久久国产精品小视频 | 久草在线一免费新视频 | 91在线精品观看 | a成人在线| 亚洲日本va中文字幕 | 91麻豆精品国产91久久久使用方法 | 91av视频播放 | 国产高清不卡在线 | 一区二区网 | 国产视频一区二区在线 | 国产一区高清在线 | 亚洲成av人片在线观看www | 狠狠操天天操 | 天天综合网天天 | 日本高清xxxx| 婷婷综合在线 | 二区中文字幕 | 99精品国产99久久久久久97 | 久久综合中文字幕 | 亚洲一级片免费观看 | 久久久久久久久久久综合 | 97成人免费 | 久久久国产一区二区 | 五月天av在线 | 成人影片免费 | a特级毛片 | 国产精品第54页 | 久久人人爽人人 | 手机在线看片日韩 | av在线影片| 夜夜爽www | 亚洲国产成人av网 | 中文字幕在线观看播放 | 色老板在线视频 | 在线播放国产精品 | 亚洲精品乱码久久久一二三 | av性在线| 久久久久久久久久免费视频 | 亚洲综合在线一区二区三区 | 欧美大码xxxx | 国产亚洲精品bv在线观看 | 欧美另类网站 | 91亚洲狠狠婷婷综合久久久 | 五月天综合婷婷 | 日本中文字幕影院 | 久久国产精品影片 | 天堂成人在线 | 日韩免费小视频 | 免费看的黄色 | 欧美日本高清视频 | 97在线免费视频观看 | 九九国产视频 | 欧美色图p | 99精品视频免费在线观看 | 国产一级免费视频 | 天天爱天天射 | 欧美成人tv | 日本精品久久久一区二区三区 | 久久精品久久精品久久 | 97视频亚洲 | av看片在线观看 | 久久久久草 | avwww在线 | 四虎影视成人永久免费观看亚洲欧美 | 中文字幕永久 | 又黄又爽又无遮挡的视频 | 午夜av免费看 | 精品免费久久 | 成人h在线观看 | av黄色免费在线观看 | 天天干人人 | 久久精品xxx | 日韩av资源在线观看 | 在线观看视频 | 久久精品精品电影网 | 国产精品一区二区久久精品爱微奶 | 婷色在线 | 久久最新网址 | 91在线影院 | 91在线观 | 色婷婷狠狠五月综合天色拍 | 国产区在线 | 国产91九色视频 | 天天综合在线观看 | 欧美日韩电影在线播放 | 色94色欧美 | 久热av | 色婷婷视频在线 | 免费成视频 | 国产123区在线观看 国产精品麻豆91 | 日韩久久精品 | 久久精品96 | 国产日韩高清在线 | 欧美一级免费在线 | 视频99爱| 黄色电影网站在线观看 | 日韩高清精品免费观看 | 日日婷婷夜日日天干 | 中文字幕亚洲精品在线观看 | 又黄又爽又色无遮挡免费 | 又黄又爽的免费高潮视频 | 久久艹艹 | 五月婷色 | 人人干人人艹 | 91黄色小视频 | 久久综合成人 | 国偷自产视频一区二区久 | 欧美日韩一区二区视频在线观看 | 99久久综合狠狠综合久久 | 久久精彩 | 一级理论片在线观看 | 色偷偷88888欧美精品久久久 | 91视频链接 | 色先锋av资源中文字幕 | 久久久国产一区 | 在线三级播放 | av在线中文 | 日日摸日日添夜夜爽97 | 在线播放日韩av | 免费观看黄| 国产精品一区二区三区视频免费 | 激情文学综合丁香 | 91视频首页| 日本女人的性生活视频 | 黄色av三级在线 | 天天插日日操 | 亚洲成av人片在线观看www | 日本中文字幕在线看 | 中国一区二区视频 | 久久精品电影网 | 一级片在线 | 欧美色图东方 | 激情丁香综合五月 | 在线观看国产一区 | 国产日韩中文字幕 | 日日夜夜噜噜噜 | 97精品国产97久久久久久久久久久久 | av在线看网站 | 国产高清视频免费在线观看 | 久久9999久久免费精品国产 | 欧美国产亚洲精品久久久8v | 日韩一区在线播放 | 国产精品美女久久久久久久久 | 亚洲第一久久久 | 亚洲成av人片在线观看www | 国产不卡精品 | 色婷婷激情五月 | 日韩久久久久久久久久久久 | a级免费观看 | 69视频国产 | 91麻豆精品一区二区三区 | 热久久最新地址 | 国产真实精品久久二三区 | 丁香婷婷深情五月亚洲 | 黄色资源在线观看 | 中文字幕资源在线观看 | 久久久免费观看视频 | 久久一级片 | 午夜精品99久久免费 | 欧美成人精品三级在线观看播放 | 在线观看91视频 | 久久字幕精品一区 | 亚洲激情六月 | 国产精品6999成人免费视频 | 久热爱 | 最新日本中文字幕 | av线上看| 波多野结衣在线观看一区二区三区 | 玖玖爱国产在线 | 色偷偷88888欧美精品久久 | 欧美巨大荫蒂茸毛毛人妖 | 日韩av片无码一区二区不卡电影 | av先锋影音少妇 | 国产精品一区二区在线 | av在线播放免费 | 黄污网站在线观看 | 91成人在线观看喷潮 | 亚洲午夜av电影 | 久久色中文字幕 | 人人操日日干 | 中文字幕高清有码 | 黄色1级毛片 | 国产成人久久精品亚洲 | 深爱开心激情 | 最近高清中文在线字幕在线观看 | 国产中文在线视频 | 香蕉影院在线观看 | 毛片在线播放网址 | 精品一区二区三区四区在线 | 免费一级黄色 | 激情欧美一区二区免费视频 | 最近中文字幕 | 中文字幕在线免费看线人 | 欧美激情视频三区 | 亚洲小视频在线观看 | 日日干干夜夜 | 日韩电影一区二区在线观看 | 亚洲少妇xxxx| 久久最新视频 | 成人免费网视频 | 国产成人精品久久久 | 国产超碰在线 | 日韩高清在线一区二区 | 欧美一区二区免费在线观看 | 伊人电影天堂 | av在线免费不卡 | 天天插日日射 | 日韩一区二区三免费高清在线观看 | 超碰人人超 | 91超级碰碰 | 欧美在线观看视频免费 | 日韩欧美精品在线视频 | 国产剧情在线一区 | 久久精品超碰 | 久久综合爱 | av片在线观看免费 | 98精品国产自产在线观看 | 99人久久精品视频最新地址 | 成人97视频一区二区 | 国产成人精品一区二区三区 | 欧美日韩一区二区免费在线观看 | 亚洲婷婷综合色高清在线 | 久久精品人人做人人综合老师 | 天天爽人人爽夜夜爽 | 国产一区二区三区高清播放 | 久久久国产精品网站 | 一区二区三区四区免费视频 | 成人久久毛片 | 国产福利a | 成年人在线视频观看 | 久久久久区| 91久久精品一区 | 亚洲精品国偷拍自产在线观看蜜桃 | 福利视频一区二区 | 久久欧美在线电影 | 成人一区影院 | 一区电影 | 亚洲精品中文字幕视频 | 一区中文字幕在线观看 | 久久久久欧美精品999 | 九九久久精品视频 | 爱射综合| 夜夜夜夜猛噜噜噜噜噜初音未来 | av午夜电影 | 国产日韩精品在线 | 欧美九九九| 日韩在线影视 | 在线亚洲欧美日韩 | 成人在线视频免费看 | 91视视频在线直接观看在线看网页在线看 | 日本字幕网 | 日韩高清精品一区二区 | 免费aa大片 | 国产精品福利在线 | 国产a视频免费观看 | 91看片在线播放 | 天堂资源在线观看视频 | 91精品国自产在线观看欧美 | 日韩在线字幕 | 在线观看av免费观看 | 黄p网站在线观看 | 天天操夜夜操天天射 | 午夜私人影院久久久久 | mm1313亚洲精品国产 | 97视频免费观看 | 中文字幕欲求不满 | 黄色大片网 | 一区国产精品 | 亚洲精品三级 | 亚洲理论片在线观看 | 在线播放日韩av | 日日操日日 | 黄网在线免费观看 | 97国产情侣爱久久免费观看 | 国产成人精品一区二区 | 国产在线观看地址 | 天天做天天爱天天综合网 | 亚洲涩综合 | 日韩av免费在线电影 | 欧美精品一区二区性色 | 91av蜜桃| 中文字幕亚洲高清 | 成人av电影免费在线播放 | 免费在线国产精品 | 久操视频在线观看 | 色美女在线 | 成人久久久久久久久 | 五月天婷婷在线播放 | 狠狠色丁香久久婷婷综合_中 | 国产精品成人国产乱一区 | 免费能看的av| 精品亚洲国产视频 | 成全免费观看视频 | 久久国产精品一二三区 | 久久婷婷一区二区三区 | 日日干狠狠操 | 色婷婷国产精品 | 国产精品美女久久久久久久 | 中文字幕免费高 | 久久久久国产精品免费免费搜索 | 日日爽日日操 | 日韩精品一区二区三区中文字幕 | 国产三级视频在线 | 亚洲精品在线一区二区 | 最新中文字幕在线资源 | 免费看黄电影 | 精品人妖videos欧美人妖 | 中文字幕在线视频一区二区 | 久草网视频在线观看 | 中文字幕在线观看免费观看 | 六月丁香激情综合 | 欧洲色吧| 最近中文字幕高清字幕免费mv | 亚洲午夜精品久久久久久久久 | 国产一级电影免费观看 | 福利区在线观看 | 国产精品欧美 | 久久久久久久av | 91精品国产自产在线观看 | 成人av在线亚洲 | 色播五月婷婷 | 韩国av免费 | 免费欧美精品 | 久久亚洲日本 | 91传媒免费观看 | 国产小视频在线免费观看视频 | 日韩黄在线观看 | 亚洲电影网站 | 成人国产综合 | 日韩av高清在线观看 | 成人精品一区二区三区电影免费 | 国产精品3区 | 亚洲一区二区三区毛片 | 人人爽人人爽人人爽学生一级 | 免费视频色 | 免费看十八岁美女 | 久草网视频在线观看 | 欧美少妇的秘密 | 九九视频在线 | 成人午夜网 | www色,com| 日本黄色免费在线观看 | 欧美亚洲国产一卡 | 久久综合偷偷噜噜噜色 | 91免费黄视频 | 91资源在线播放 | 男女激情片在线观看 | av资源网在线播放 | 国产一区二区三区高清播放 | 成人黄视频 | 黄色网免费 | 18久久久久 | 欧美日在线观看 | 91av电影 | 日日碰狠狠添天天爽超碰97久久 | 精品久久在线 | 亚洲一区二区观看 | 国产精品日韩久久久久 | 97精品国产97久久久久久久久久久久 | 日韩高清在线一区二区三区 | 国产99久久久国产精品免费看 | 久久中文精品视频 | 永久免费观看视频 | 亚洲国产三级在线观看 | 81国产精品久久久久久久久久 | 欧美老女人xx | 国产小视频在线 | 国内综合精品午夜久久资源 | www.色的| 国产亚洲精品久久久久久 | 久久国产精品久久久 | 国产精品久久精品国产 | 日韩黄色免费电影 | 久久综合九色综合欧美就去吻 | 国产视频精品在线 | 亚洲日本一区二区在线 | 天天干天天射天天插 | 黄色性av | 99久久久国产精品美女 | 国产中文字幕91 | 国产一区二区电影在线观看 | 99热这里只有精品免费 | 日本精品久久久久中文字幕5 | 91麻豆视频网站 | 99在线观看免费视频精品观看 | 麻花豆传媒mv在线观看网站 | 色综合天天狠天天透天天伊人 | 中文字幕在线观看免费观看 | 91亚洲欧美| 国产高清视频网 | 亚洲电影图片小说 | 高清在线观看av | 2024国产精品视频 | 九色琪琪久久综合网天天 | 欧美一二三视频 | 国产一二三四在线观看视频 | 亚洲精品国精品久久99热一 | 中文字幕 在线 一 二 | 久久精品视频在线 | 国产精品99久久久久久武松影视 | 色婷婷亚洲婷婷 | 四虎亚洲精品 | 国产一卡久久电影永久 | 草久电影 | 国产一级黄色电影 | 精品久久久久免费极品大片 | 国产成人精品一区二区三区 | 2019中文最近的2019中文在线 | 国产你懂的在线 | 久久国产高清 | 亚洲精品影视 | 亚洲精品午夜一区人人爽 | 日韩丝袜| 精品久久久精品 | 东方av在线免费观看 | 国产福利一区在线观看 | 国产玖玖在线 | 久久久久久久久久免费 | 日韩成人中文字幕 | 99色在线观看视频 | 久久女同性恋中文字幕 | 日日操夜夜操狠狠操 | 黄色网www | 99久久精品国产毛片 | 久热国产视频 | 手机av在线网站 | 中文字幕免费观看全部电影 | 一区二区三区观看 | 日韩激情久久 | 精品成人a区在线观看 | 日日爽天天| 99精品国产成人一区二区 | 日韩网站一区 | 日本少妇久久久 | 黄色一级性片 | 欧美一级黄色视屏 | 国产精品久久影院 | 国产一级做a | 美女久久久久久 | 色婷婷视频网 | 人人澡人人添人人爽一区二区 | 又色又爽又黄高潮的免费视频 | www日日| 五月婷社区 | 四虎伊人 | 狠狠躁18三区二区一区ai明星 | 日韩欧美69 | 国产综合91 | 久久久香蕉视频 | 亚洲砖区区免费 | 中文字幕色网站 | 亚洲电影第一页av | 五月天久久激情 | 免费一级毛毛片 | 青春草免费在线视频 | 欧美性黑人 | 中文字幕一区二区在线播放 | 久久精品亚洲一区二区三区观看模式 | 五月天久久综合网 | 久久久久久欧美二区电影网 | 国语自产偷拍精品视频偷 | 中文字幕在线字幕中文 | 欧美日韩免费一区二区 | 在线观看国产永久免费视频 | 夜夜爽天天爽 | 韩国av一区二区三区 | 天堂av色婷婷一区二区三区 | 日韩小视频网站 | 久久国产美女视频 | 日韩免费电影 | 色狠狠综合 | 成人毛片久久 | 国产亚洲成人网 | 国产精品久久嫩一区二区免费 | 在线观看免费 | 国产一区二区手机在线观看 | 777视频在线观看 | 欧美日韩在线精品 | 99久久er热在这里只有精品66 | 国产精品毛片久久 | 亚洲黄色高清 | av中文字幕在线免费观看 | 亚洲1区 在线 | www色,com| 国产成人精品久久亚洲高清不卡 | 亚洲一区二区三区miaa149 | 国产成人精品一区二区三区网站观看 | www亚洲一区 | 免费观看av网站 | 日日操网 | 国产成人精品久久久久 | 九九九九精品九九九九 | 中文字幕日韩精品有码视频 | www.五月婷婷.com | 日韩理论电影网 | av免费线看 | 成人一级片免费看 | 午夜色婷婷 | 精品亚洲成人 | 国产 字幕 制服 中文 在线 | 九九九热精品免费视频观看网站 | 欧美激情精品久久久久久免费印度 | www.xxxx变态.com| 天天干天天操天天做 | 欧美精品久久久久久久亚洲调教 | 天天激情综合网 | 精品久久久久久久久久久久久久久久久久 | 粉嫩一区二区三区粉嫩91 | 黄色三级免费 | 精选久久| 91爱看片| 人人爽人人爽人人爽 | 国产精品 国内视频 | 在线看中文字幕 | 日韩中文在线播放 | av在线一| av一本久道久久波多野结衣 | 国产美女免费观看 | 欧洲不卡av| 在线观看片 | 黄网站免费久久 | 日本少妇久久久 | 国产色视频123区 | 成人免费观看完整版电影 | 日本精品视频一区 | 天天干天天做天天操 | 国产精久久 | 国产高清在线观看av | 国产亚洲欧美在线视频 | 二区三区毛片 | 国产小视频你懂的在线 | 国产在线91在线电影 | 不卡中文字幕av | 日韩精品久久久免费观看夜色 | 久久激情电影 | 99国产在线观看 | 久久免费高清视频 | 在线免费观看涩涩 | 性色av免费观看 | 中文字幕在线资源 | 欧美永久视频 | 国产日本亚洲高清 | 伊人超碰在线 | 免费在线中文字幕 | 日韩欧美精品在线观看 | 久9在线| 91重口视频| 在线观看中文av | 97色se| 一区精品在线 | 欧美va天堂va视频va在线 | 天天操天天爱天天爽 | 99久久电影 | 国产精品18久久久久白浆 | 久久99久久久久久 | 99热这里精品 | 97在线观看免费高清完整版在线观看 | 亚洲视频h| 日韩欧美一区二区在线播放 | 视频在线观看入口黄最新永久免费国产 | 中文字幕一区二区三区乱码不卡 | 免费观看成人av | av在线影视 | 日韩视频免费观看高清完整版在线 | 国产精品一级在线 | 黄色网址在线播放 | 精品在线一区二区三区 | 成人动图 | 精品理论片 | 久久国产一区二区三区 | 99在线看| 欧美一级片在线播放 | 亚洲天天做 | 黄色的视频 | 五月天婷婷丁香花 | 亚洲草视频 | 成人久久18免费网站麻豆 | 久久国产精品精品国产色婷婷 | 国产精品久久久久久久久搜平片 | 国产精品久久久久久久免费大片 | 色香蕉视频 | 亚洲免费在线看 | 中文字幕第 | 深爱婷婷久久综合 | a天堂中文在线 | 国产在线97| 丁香五婷| av综合站| 黄色一二级片 | 色综合天天爱 | 在线只有精品 | 日日干夜夜爱 | 欧美一区二视频在线免费观看 | 黄色aa久久| 国产又粗又硬又长又爽的视频 | 免费看成人 | 啪啪免费视频网站 | 天天躁日日躁狠狠躁av中文 | 四虎国产精品成人免费影视 | 亚洲午夜久久久综合37日本 | 久久久久久久久久久久久国产精品 | 波多野结依在线观看 | 欧美激情第十页 | 在线观看日韩一区 | 亚洲a在线观看 | 久久综合九色综合97_ 久久久 | 亚洲成av | 免费成人黄色av | 日韩精品一区二区在线观看 | 国产免费观看久久黄 | 亚洲在线网址 | 成人在线小视频 | 日韩精品在线免费播放 | 最新av在线免费观看 | 亚洲日本中文字幕在线观看 | 亚洲高清在线视频 | 亚洲 欧美 综合 在线 精品 | 久久在线 | 免费能看的av | 日韩区在线观看 | 激情综合色图 | a级片韩国| 日日夜夜干 | 日韩激情久久 | 国产一区二区视频在线播放 | 亚洲天堂精品视频在线观看 | 国产一区在线不卡 | 国产在线91精品 | 精品国产诱惑 | 久久久久亚洲精品男人的天堂 | 天天操夜夜爱 | 黄毛片在线观看 | 亚洲成a人片在线观看中文 中文字幕在线视频第一页 狠狠色丁香婷婷综合 | 国产精品2018 | 不卡视频在线 | 99激情网 | 国产精品99久久久久久大便 | www.天堂av| 偷拍区另类综合在线 | 国产午夜精品一区二区三区四区 | 精品久久电影 | 久久精品欧美日韩精品 | 五月婷婷亚洲 | 色诱亚洲精品久久久久久 | 97精品国产手机 | 黄色网址a | 亚洲高清av在线 | 亚洲性少妇性猛交wwww乱大交 | 久久av影院| 日本女人的性生活视频 | 国产色拍拍拍拍在线精品 | sesese图片 | 麻豆国产精品一区二区三区 | 在线视频99 | 在线观看精品 | 午夜在线国产 | 精品国产日本 | 激情网在线视频 | 天天色天天综合网 | 国产精品久久久久久麻豆一区 | 国产一卡二卡在线 | 天天综合在线观看 | 欧美在线视频一区二区三区 | 国产成人av在线影院 | 最近中文字幕视频网 | 久久不卡视频 | 中文字幕乱码一区二区 | 亚洲欧美一区二区三区孕妇写真 | 国产精品麻豆视频 | 精品久久1 | 亚洲一级电影在线观看 | 激情婷婷六月 | 国产一级一片免费播放放a 一区二区三区国产欧美 | 天天干夜夜干 | 欧美视频在线二区 | 天天色播 | 欧美午夜性生活 | 日产乱码一二三区别在线 | 亚洲精品欧美成人 | 精品一区二区三区香蕉蜜桃 | 色香com. | 国产亚洲精品美女久久 | 国产网站在线免费观看 | 一区二区久久 | 91成人破解版 | www.91av在线| 骄小bbw搡bbbb揉bbbb | 色妞色视频一区二区三区四区 | 国模一区二区三区四区 | 国产精品精品久久久 | 国产精品麻豆欧美日韩ww | www视频在线免费观看 | 久久久久久久久久久黄色 | 日日日操操 | 免费亚洲电影 | 久久中文欧美 | 园产精品久久久久久久7电影 | 丁香资源影视免费观看 | 国产精品丝袜久久久久久久不卡 | 国产精品女同一区二区三区久久夜 | 91最新地址永久入口 | 91av在线免费播放 | 色五月激情五月 | 久久久高清一区二区三区 | 亚洲黄色大片 | 中文字幕亚洲欧美日韩 | 亚洲视频观看 | 亚洲欧美在线观看视频 | 97精品欧美91久久久久久 | 91九色视频| 伊人网综合在线观看 | 激情五月伊人 | 成人精品一区二区三区电影免费 | 操老逼免费视频 | 看av在线| 91自拍视频在线 | 草久电影| 99精品欧美一区二区三区黑人哦 | 欧美性色xo影院 | 一区二区三区高清在线观看 | 成人一级片免费看 | 夜夜操夜夜干 | 狠狠色丁香久久婷婷综 | 蜜臀aⅴ国产精品久久久国产 | 久久国产精品一区二区三区四区 | 黄色国产精品 | 日韩欧美精品在线视频 | 最新日韩在线 | 五月激情综合婷婷 | 精品一区二区在线免费观看 | 91视频免费看 | 一级黄色片毛片 | 美女一区网站 | av在线播放不卡 | 日本在线观看一区 | 伊人在线视频 | 中文国产字幕在线观看 | 亚洲无吗av | 欧美日韩aa | 亚洲网久久 | 亚洲精品国内 | 久久尤物电影视频在线观看 | 久草网在线观看 | 成人永久视频 | 欧美日韩在线视频一区 | 成人超碰97 | 丁香亚洲 | 日韩视频中文字幕在线观看 | 欧美在线视频日韩 | 99中文字幕视频 | 一区二区三区在线观看免费 | 国产精品久久久久久婷婷天堂 | 蜜桃av观看 | 伊人五月天婷婷 | 夜夜骑日日 | 亚洲男人天堂a | 成人免费网站视频 | 久保带人 | 国产在线一区观看 | 黄色日本免费 | 国产三级av在线 | 欧美一区免费在线观看 | 黄av免费在线观看 | 国产一区二区影院 | 99c视频高清免费观看 | 久久精品79国产精品 | 国产精品免费观看视频 | 日本护士撒尿xxxx18 | 最近能播放的中文字幕 | 亚洲春色成人 | 91av小视频 | 久草久热 | 亚洲女人天堂成人av在线 | 亚洲一级片在线观看 | 国语自产偷拍精品视频偷 | 久久永久免费视频 | 亚洲欧美视频 | 在线视频免费观看 | 久久视频在线免费观看 | 亚洲老妇xxxxxx | 亚洲视频 一区 | 久久神马影院 | 国产青青青 | 日韩中文字幕视频在线观看 | 天天艹天天操 | 青青河边草免费观看 | 97超碰总站| 操一草 | 国产美腿白丝袜足在线av | 97精品国产97久久久久久久久久久久 | 国产高清久久 | 中文字幕有码在线 | 国产精品美女久久久久久免费 | 69国产盗摄一区二区三区五区 | 久久99精品国产麻豆宅宅 | 最近中文字幕久久 | 福利视频一二区 | 久久尤物电影视频在线观看 | 久久久久久久久综合 | 伊人五月天婷婷 | 91亚洲精品久久久蜜桃 | 中文网丁香综合网 | 在线一级片 | 一区二区在线影院 | 国产伦精品一区二区三区在线 | 在线亚洲欧美日韩 | 狠狠色丁香婷婷综合久小说久 | 久久xxxx| 中文字幕免费播放 | 中文字幕电影一区 | 亚洲精品www| 国产成人福利在线 | 国产中文字幕亚洲 | 久久久久久久久久久电影 | 成人黄色中文字幕 | 色五月色开心色婷婷色丁香 | 成人免费在线观看入口 | 91九色视频网站 | 91精品啪在线观看国产线免费 | 最新真实国产在线视频 | 伊人天天综合 | 激情在线网 | 丁香五月亚洲综合在线 | 91香蕉亚洲精品 | 欧洲精品视频一区二区 | 91麻豆精品国产91久久久久久久久 | 看片一区二区三区 | 欧美日韩天堂 | 欧美一级电影在线观看 | 国产69精品久久久久久 | 国产小视频在线免费观看视频 | 久久综合五月天婷婷伊人 | 久久午夜色播影院免费高清 | 免费99| 欧美日韩一级在线 | 成人免费观看在线视频 | 日韩一级电影在线观看 | 黄色在线看网站 | 欧洲视频一区 | 亚洲国产电影在线观看 | 91丨九色丨蝌蚪丰满 | 97免费中文视频在线观看 | 国产免费久久av | av日韩av| 毛片无卡免费无播放器 | 最新色视频 | 93久久精品日日躁夜夜躁欧美 | 九九在线精品视频 | 岛国片在线 |