欧美亚洲韩国_av电影院在线看_久久久久97_台湾佬中文娱乐网欧美电影

站長資訊網
最全最豐富的資訊網站

linux驅動程序運行在什么空間

linux驅動程序運行在“內核”空間。一般情況下驅動程序中都是調用kmalloc()來給數據結構分配內存,調用vmalloc()為活動的交換區分配數據結構,為某些I/O驅動程序分配緩沖區,或為模塊分配空間;kmalloc和vmalloc分配的是內核的內存。

linux驅動程序運行在什么空間

程序員必備接口測試調試工具:立即使用
Apipost = Postman + Swagger + Mock + Jmeter
Api設計、調試、文檔、自動化測試工具
后端、前端、測試,同時在線協作,內容實時同步

本教程操作環境:linux7.3系統、Dell G3電腦。

linux驅動程序運行在“內核”空間。

對于一般編寫的單片機程序來說應用程序和驅動程序往往是雜糅的,擁有一定能力水平的單片機程序編程人員可以實現應用和驅動的分層。而在Linux系統中已經強制將應用和驅動進行了分層。

在單片機程序中,應用可以直接操作底層的寄存器。而在Linux系統中卻禁止這樣的行為,舉個例子:Linux應用的編寫人員故意在應用中調用了驅動中關于電源管理的驅動,關閉了系統,那不就得不償失了?

具體的Linux應用程序對驅動的調用如圖所示:

linux驅動程序運行在什么空間

應用程序運行在用戶空間,驅動程序運行在內核空間。處于用戶空間應用程序如果想要實現對內核的操作,必須經過一種"系統調用"的方法,實現從用戶空間進入內核空間,實現對底層的操作。

Linux中的內核空間

內核也是程序,也應該具有自己的虛存空間,但是作為一種為用戶程序服務的程序,內核空間有它自己的特點。

內核空間與用戶空間的關系

在一個32位系統中,一個程序的虛擬空間最大可以是4GB,那么最直接的做法就是,把內核也看作是一個程序,使它和其他程序一樣也具有4GB空間。但是這種做法會使系統不斷的切換用戶程序的頁表和內核頁表,以致影響計算機的效率。解決這個問題的最好做法就是把4GB空間分成兩個部分:一部分為用戶空間,另一部分為內核空間,這樣就可以保證內核空間固定不變,而當程序切換時,改變的僅是程序的頁表。這種做法的唯一缺點便是內核空間和用戶空間均變小了。

例如:在i386這種32位的硬件平臺上,Linux在文件page.h中定義了一個常量PAGE_OFFSET:

#ifdef CONFIG_MMU #define __PAGE_OFFSET  (0xC0000000)        //0xC0000000為3GB #else #define __PAGE_OFFSET  (0x00000000) #endif  #define PAGE_OFFSET		((unsigned long)__PAGE_OFFSET)
登錄后復制

Linux以PAGE_OFFSET為界將4GB的虛擬內存空間分成了兩部分:地址0~3G-1這段低地址空間為用戶空間,大小為3GB;地址3GB~4GB-1這段高地址空間為內核空間,大小為1GB。

當系統中運行多個程序時,多個用戶空間與內核空間的關系可以表示如下圖:

linux驅動程序運行在什么空間

如圖中所示,程序1、2……n共享內核空間。當然,這里的共享指得是分時共享,因為在任何時刻,對于單核處理器系統來說,只能有一個程序在運行。

內核空間的總體布局

Linux在發展過程中,隨著硬件設備的更新和技術水平的提高,其內核空間布局的發展也是一種不斷打補丁的方式。這樣的后果就是使得內核空間被分成不同的幾個區域,而且在不同的區域具有不同的映射方式。通常,人們認為Linux內核空間有三個區域,即DMA區(ZONE_DMA)、普通區(ZONE_NORMAL)和高端內存區(ZONE_HIGHMEM)。

實際物理內存較小時內核空間的直接映射

早期計算機實際配置的物理內存通常只有幾MB,所以為了提高內核通過虛擬地址訪問物理地址內存的速度,內核空間的虛擬地址與物理內存地址采用了一種從低地址向高地址依次一一對應的固定映射方式,如下圖所示:

linux驅動程序運行在什么空間

可以看到,這種固定映射方式使得虛擬地址與物理地址的關系變得很簡單,即內核虛擬地址與實際物理地址只在數值上相差一個固定的偏移量PAGE_OFFSET,所以當內核使用虛擬地址訪問物理頁框時,只需在虛擬地址上減去PAGE_OFFSET即可得到實際物理地址,比使用頁表的方式要快得多!

由于這種做法幾乎就是直接使用物理地址,所以這種按固定映射方式的內核空間也就叫做“物理內存空間”,簡稱物理內存。另外,由于固定映射方式是一種線性映射,所以這個區域也叫做線性映射區。

當然,這種情況下(計算機實際物理內存較小時),內核固定映射空間僅占整個1GB內核空間的一部分。例如:在配置32MB實際物理內存的x86計算機系統時,內核的固定映射區便是PAGE_OFFSET~(PAGE_OFFSET+0x02000000)這個32MB空間。那么內核空間剩余的內核虛擬空間怎么辦呢?

當然還是按照普通虛擬空間的管理方式,以頁表的非線性映射方式使用物理內存。具體來說,在整個1GB內核空間中去除固定映射區,然后在剩余部分中再去除其開頭部分的一個8MB隔離區,余下的就是映射方式與用戶空間相同的普通虛擬內存映射區。在這個區,虛擬地址和物理地址不僅不存在固定映射關系,而且通過調用內核函數vmalloc()獲得動態內存,故這個區就被稱為vmalloc分配區,如下圖所示:

linux驅動程序運行在什么空間

對于配置32MB實際物理內存的x86計算機系統來說,vmalloc分配區的起始位置為PAGE_OFFSET+0x02000000+0x00800000。

這里說明一下:這里說的內核空間與物理頁框的固定映射,實質上是內核頁對物理頁框的一種“預定”,并不是說這些頁就“霸占”了這些物理頁框。即只有當虛擬頁真正需要訪問物理頁框時,虛擬頁才與物理頁框綁定。而平時,當某個物理頁框不被與它對應的虛擬頁所使用時,該頁框完全可以被用戶空間以及后面所介紹的內核kmalloc分配區使用。

總之,在實際物理內存較小的系統中,實際內存的大小就是內核空間的物理內存區與vmalloc分配區的邊界。

ZONE_DMA區與ZONE_NORMAL區

對于整個1GB的內核空間,人們還把該空間頭部的16MB叫做DMA區,即ZONE_DMA區,因為以往硬件將DMA空間固定在了物理內存的低16MB空間;其余區則叫做普通區,即ZONE_NORMAL。

內核空間的高端內存

隨著計算機技術的發展,計算機的實際物理內存越來越大,從而使得內核固定映射區(線性區)也越來越大。顯然,如果不加以限制,當實際物理內存達到1GB時,vmalloc分配區(非線性區)將不復存在。于是以前開發的、調用了vmalloc()的內核代碼也就不再可用,顯然為了兼容早期的內核代碼,這是不能允許的。

下圖就表示了這種內核空間所面臨的局面:

linux驅動程序運行在什么空間

顯然,出現上述問題的原因就是沒有預料到實際物理內存可以超過1GB,因而沒有為內核固定映射區的邊界設定限制,而任由其隨著實際物理內存的增大而增大。

解決上述問題的方法就是:對內核空間固定映射區的上限加以限制,使之不能隨著物理內存的增加而任意增加。Linux規定,內核映射區的上邊界的值最大不能大于一個小于1G的常數high_menory,當實際物理內存較大時,以3G+high_memory為邊界來確定物理內存區。

例如:對于x86系統,high_memory的值為896M,于是1GB內核空間余下的128MB為非線性映射區。這樣就確保在任何情況下,內核都有足夠的非線性映射區以兼容早期代碼并可以按普通虛存方式訪問實際物理內存的1GB以上的空間。

也就是說,高端內存的最基本思想:借一段地址空間,建立臨時地址映射,用完后釋放,達到這段地址空間可以循環使用,訪問所有物理內存。當計算機是物理內存較大時,內核空間的示意圖如下:

linux驅動程序運行在什么空間

習慣上,Linux把內核空間3G+high_memory~4G-1的這個部分叫做高端內存區(ZONE_HIGHMEM)。

總結一下:在x86結構的內核空間,三種類型的區域(從3G開始計算)如下:

  • ZONE_DMA:內核空間開始的16MB
  • ZONE_NORMAL:內核空間16MB~896MB(固定映射)
  • ZONE_HIGHMEM :內核空間896MB ~ 結束(1G)

根據應用目標不同,高端內存區分vmalloc區、可持久映射區和臨時映射區。內核空間中高端內存的布局如下圖所示:

linux驅動程序運行在什么空間

vmalloc映射區

vmalloc映射區時高端內存的主要部分,該區間的頭部與內核線性映射空間之間有一個8MB的隔離區,尾部與后續的可持久映射區有一個4KB的隔離區。

vmalloc映射區的映射方式與用戶空間完全相同,內核可以通過調用函數vmalloc()在這個區域獲得內存。這個函數的功能相當于用戶空間的malloc(),所提供的內存空間在虛擬地址上連續(注意,不保證物理地址連續)。

可持久內核映射區

如果是通過 alloc_page() 獲得了高端內存對應的 page,如何給它找個線性空間?

內核專門為此留出一塊線性空間,從PKMAP_BASE開始,用于映射高端內存,就是可持久內核映射區。

在可持久內核映射區,可通過調用函數kmap()在物理頁框與內核虛擬頁之間建立長期映射。這個空間通常為4MB,最多能映射1024個頁框,數量較為稀少,所以為了加強頁框的周轉,應及時調用函數kunmap()將不再使用的物理頁框釋放。

臨時映射區

臨時映射區也叫固定映射區和保留區。該區主要應用在多處理器系統中,因為在這個區域所獲得的內存空間沒有所保護,故所獲得的內存必須及時使用;否則一旦有新的請求,該頁框上的內容就會被覆蓋,所以這個區域叫做臨時映射區。

關于高端內存區一篇很不錯的文章:linux 用戶空間與內核空間——高端內存詳解。

內核內存分配修飾符gfp

為了在內核內存請求函數對請求進行必要的說明,Linux定義了多種內存分配修飾符gfp。它們是行為修飾符、區修飾符、類型修飾符。

行為修飾符

在內存分配函數中的行為修飾符說明內核應當如何分配內存。主要行為修飾符如下:

Linux的主要內核內存分配行為修飾符
修飾符 說明
__GFP_WAIT 分配器可以休眠
__GFP_HIGH 分配器可以訪問緊急事件緩沖池
__GFP_IO 分配器可以啟動磁盤IO
__GFP_FS 分配器可以啟動文件系統IO
__GFP_COLD 分配器應該使用高速緩沖中快要淘汰的頁框
__GFP_NOWARN 分配器不發出警告
__GFP_REPEAT 分配失敗時重新分配
__GFP_NOFAILT 分配失敗時重新分配,直至成功
__GFP_NORETRY 分配失敗時不再重新分配

區修飾符

區修飾符說明需要從內核空間的哪個區域中分配內存。內存分配器默認從內核空間的ZONE_NORMAL開始逐漸向高端獲取為內存請求者分配內存區,如果用戶特意需要從ZONE_DMA或ZONE_HOGNMEM獲得內存,那么就需要內存請求者在內存請求函數中使用以下兩個區修飾符說明:

Linux的主要內核內存分配區修飾符
修飾符 說明
__GFP_DMA 從ZONE_DMA區分配內存
__GFP_HIGHMEM 從ZONE_HIGHMEM區分配內存

類型修飾符

類型修飾符實質上是上述所述修飾符的聯合應用。也就是:將上述的某些行為修飾符和區修飾符,用“|”進行連接并另外取名的修飾符。這里就不多介紹了。

內核常用內存分配及地址映射函數

函數vmalloc()

函數vmalloc()在vmalloc分配區分配內存,可獲得虛擬地址連續,但并不保證其物理頁框連續的較大內存。與物理空間的內存分配函數malloc()有所區別,vmalloc()分配的物理頁不會被交換出去。函數vmalloc()的原型如下:

void *vmalloc(unsigned long size) {        return __vmalloc(size, GFP_KERNEL | __GFP_HIGHMEM, PAGE_KERNEL); }
登錄后復制

void *__vmalloc(unsigned long size, gfp_t gfp_mask, pgprot_t prot) { 	return kmalloc(size, (gfp_mask | __GFP_COMP) & ~__GFP_HIGHMEM); }
登錄后復制

其中,參數size為所請求內存的大小,返回值為所獲得內存虛擬地址指針。

與vmalloc()配套的釋放函數如下:

void vfree(const void *addr) { 	kfree(addr); }
登錄后復制

其中,參數addr為待釋放內存指針。

函數kmalloc()

kmalloc()是內核另一個常用的內核分配函數,它可以分配一段未清零的連續物理內存頁,返回值為直接映射地址。由kmalloc()可分配的內存最大不能超過32頁。其優點是分配速度快,缺點是不能分配大于128KB的內存頁(出于跨平臺考慮)。

在linux/slab.h文件中,該函數的原型聲明如下:

static __always_inline void *kmalloc(size_t size, gfp_t flags) { 	struct kmem_cache *cachep; 	void *ret;  	if (__builtin_constant_p(size)) { 		int i = 0;  		if (!size) 			return ZERO_SIZE_PTR;  #define CACHE(x)  		if (size <= x)  			goto found;  		else  			i++; #include <linux/kmalloc_sizes.h> #undef CACHE 		return NULL; found: #ifdef CONFIG_ZONE_DMA 		if (flags & GFP_DMA) 			cachep = malloc_sizes[i].cs_dmacachep; 		else #endif 			cachep = malloc_sizes[i].cs_cachep;  		ret = kmem_cache_alloc_notrace(cachep, flags);  		trace_kmalloc(_THIS_IP_, ret, 			      size, slab_buffer_size(cachep), flags);  		return ret; 	} 	return __kmalloc(size, flags); }
登錄后復制

其中,參數size為以字節為單位表示的所申請空間的大小;參數flags決定了所分配的內存適合什么場合。

與函數kmalloc()對應的釋放函數如下:

void kfree(const void *objp) { 	struct kmem_cache *c; 	unsigned long flags;  	trace_kfree(_RET_IP_, objp);  	if (unlikely(ZERO_OR_NULL_PTR(objp))) 		return; 	local_irq_save(flags); 	kfree_debugcheck(objp); 	c = virt_to_cache(objp); 	debug_check_no_locks_freed(objp, obj_size(c)); 	debug_check_no_obj_freed(objp, obj_size(c)); 	__cache_free(c, (void *)objp); 	local_irq_restore(flags); }
登錄后復制

小結一下,kmalloc、vmalloc、malloc的區別:

  • kmalloc和vmalloc是分配的是內核的內存,malloc分配的是用戶的內存;
  • kmalloc保證分配的內存在物理上是連續的,vmalloc保證的是在虛擬地址空間上的連續,malloc不保證任何東西;
  • kmalloc能分配的大小有限,vmalloc和malloc能分配的大小相對較大;
  • vmalloc比kmalloc要慢。

也就是說:kmalloc、vmalloc這兩個函數所分配的內存都處于內核空間,即從3GB~4GB;但位置不同,kmalloc()分配的內存處于3GB~high_memory(ZONE_DMA、ZONE_NORMAL)之間,而vmalloc()分配的內存在VMALLOC_START~4GB(ZONE_HIGHMEM)之間,也就是非連續內存區。一般情況下在驅動程序中都是調用kmalloc()來給數據結構分配內存,而vmalloc()用在為活動的交換區分配數據結構,為某些I/O驅動程序分配緩沖區,或為模塊分配空間。

linux驅動程序運行在什么空間

可參考文章:Kmalloc和Vmalloc的區別。

函數alloc_pages()

與上述在虛擬空間分配內存的函數不同,alloc_pages()是在物理內存空間分配物理頁框的函數,其原型如下:

static inline struct page * alloc_pages(gfp_t gfp_mask, unsigned int order) { 	if (unlikely(order >= MAX_ORDER)) 		return NULL;  	return alloc_pages_current(gfp_mask, order); }
登錄后復制

其中,參數order表示所分配頁框的數目,該數目為2^order。order的最大值由include/Linux/Mmzone.h文件中的宏MAX_ORDER決定。參數gfp_mask為說明內存頁框分配方式及使用場合。

函數返回值為頁框塊的第一個頁框page結構的地址。

調用下列函數可以獲得頁框的虛擬地址:

void *page_address(struct page *page) { 	unsigned long flags; 	void *ret; 	struct page_address_slot *pas;   	if (!PageHighMem(page)) 		return lowmem_page_address(page);   	pas = page_slot(page); 	ret = NULL; 	spin_lock_irqsave(&pas->lock, flags); 	if (!list_empty(&pas->lh)) { 		struct page_address_map *pam;   		list_for_each_entry(pam, &pas->lh, list) { 			if (pam->page == page) { 				ret = pam->virtual; 				goto done; 			} 		} 	} done: 	spin_unlock_irqrestore(&pas->lock, flags); 	return ret; }
登錄后復制

使用函數alloc_pages()獲得的內存應該使用下面的函數釋放:

void __free_pages(struct page *page, unsigned int order) { 	if (put_page_testzero(page)) { 		if (order == 0) 			free_hot_page(page); 		else 			__free_pages_ok(page, order); 	} }
登錄后復制

函數kmap()

kmap()是一個映射函數,它可以將一個物理頁框映射到內核空間的可持久映射區。這種映射類似于內核ZONE_NORMAL的固定映射,但虛擬地址與物理地址的偏移不一定是PAGE_OFFSET。由于內核可持久映射區的容量有限(總共只有4MB),因此當內存使用完畢后,應該立即釋放。

函數kmap()的函數原型如下:

void *kmap(struct page *page) { 	might_sleep(); 	if (!PageHighMem(page)) 		return page_address(page); 	return kmap_high(page); }
登錄后復制

小結

由于CPU的地址總線只有32位, 32的地址總線無論是從邏輯上還是從物理上都只能描述4G的地址空間(232=4Gbit),在物理上理論上最多擁有4G內存(除了IO地址空間,實際內存容量小于4G),邏輯空間也只能描述4G的線性地址空間。

為了合理的利用邏輯4G空間,Linux采用了3:1的策略,即內核占用1G的線性地址空間,用戶占用3G的線性地址空間。所以用戶進程的地址范圍從0~3G,內核地址范圍從3G~4G,也就是說,內核空間只有1G的邏輯線性地址空間。

如果Linux物理內存小于1G的空間,通常內核把物理內存與其地址空間做了線性映射,也就是一一映射,這樣可以提高訪問速度。但是,當Linux物理內存超過1G時,線性訪問機制就不夠用了,因為只能有1G的內存可以被映射,剩余的物理內存無法被內核管理,所以,為了解決這一問題,Linux把內核地址分為線性區和非線性區兩部分,線性區規定最大為896M,剩下的128M為非線性區。從而,線性區映射的物理內存成為低端內存,剩下的物理內存被成為高端內存。與線性區不同,非線性區不會提前進行內存映射,而是在使用時動態映射。

低端內存又分成兩部分:ZONE_DMA:內核空間開始的16MB、ZONE_NORMAL:內核空間16MB~896MB(固定映射)。剩下的就是高端內存:ZONE_HIGHMEM :內核空間896MB ~ 結束(1G)。

根據應用目標不同,高端內存區分vmalloc區、可持久映射區和臨時映射區三部分。vmalloc區使用vmalloc()函數進行分配;可持久映射區使用allc_pages()獲得對應的 page,在利用kmap()函數直接映射;臨時映射區一般用于特殊需求。

用戶空間和內核空間
內核空間(3G~4G)

高端內存(3G+high_memory~4G)ZONE_HIGHMEM

非線性映射區

臨時映射區
可持久映射區
vmalloc區

低端內存(3G~3G+high_memory-1)

線性映射區(固定映射區)

ZONE_NORMAL
ZONE_DMA
用戶空間(0~3G-1) 頁目錄–>中間頁目錄–>頁表

贊(0)
分享到: 更多 (0)
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
主站蜘蛛池模板: 色屁屁ts人妖系列二区 | 一级二级三级视频 | 国产福利视频一区二区 | 伊人久久大香线蕉 | 久久婷婷网站 | 亚洲天堂网一区二区 | 粉豆av| 精品欧美乱码久久久久久1区2区 | 韩国午夜影院 | 99成人在线视频 | 激情五月婷婷网 | 亚洲精品国产乱码在线看蜜月 | 不卡中文一二三区 | 国产网红主播精品av | 天天拍天天干 | 精品三级在线观看 | 国产a区| 日韩精品综合 | 亚洲第一成年免费网站 | 国产在线视频第一页 | 日日夜夜综合网 | 成人免费毛片足控 | 日韩1区| 黄色片网站免费在线观看 | 天天干天天弄 | 色呦呦呦呦 | 一级一级黄色片 | 亚洲综合久 | 午夜专区 | 欧美日韩国产综合在线 | 亚洲三区视频在线观看 | 亚洲精品乱码久久久久久按摩观 | 国产成人亚洲综合a∨婷婷 精品久久久久久国产 | 黄色网址在线免费观看 | 日韩精品在线观看一区二区 | 激情四射婷婷 | 精品在线不卡 | 亚洲大片免费观看 | 国产精品久久久久久亚洲影视公司 | 久久精品免费 | 91中文字幕在线 | av在线色 | 一级黄色av片 | 成人动漫一区二区 | 欧美在线视频观看 | 不卡中文 | 三级网站免费观看 | 亚洲国产欧洲 | 少妇精品高潮欲妇又嫩中文字幕 | 91久久综合 | 波多野吉衣毛片 | 国产精品国产a级 | 中日韩在线播放 | 亚洲成人aaa| 久久精品www人人爽人人 | 久久丁香综合五月国产三级网站 | 亚洲男女免费视频 | 婷婷爱五月 | 好吊色欧美一区二区三区视频 | 五月婷婷六月丁香 | 国产三级自拍 | 夜夜骑夜夜骑 | av日韩在线免费观看 | 欧洲亚洲视频 | 亚洲图片综合区 | 日韩毛片| 99色网站 | 成人教育av| 亚洲成人一区在线观看 | 91av在线视频播放 | 久久亚洲精品国产 | 久久怡春院 | 国产在线小视频 | 亚洲精品97 | 国产免费av网站 | 日韩免费视频观看 | a天堂在线观看 | 日本少妇吞精囗交视频 | 亚州视频一区二区三区 | 青青操国产视频 | 91精品福利在线 | 欧美精品一区二区久久婷婷 | 色婷婷影院 | 国产肥熟 | 国产一区二区美女视频 | 国产伦精品一区 | 日日舔夜夜操 | 国产高清免费观看 | 久草福利在线播放 | 国产精品第10页 | 亚洲高清视频免费观看 | 巨物撞击尤物少妇呻吟 | 在线观看网站污 | 欧美黄色片免费看 | 美色视频 | 国产成人精品久久 | 色香色香欲天天天影视综合网 | zzijzzij亚洲丰满少妇 | 国产一级片子 | 午夜精 | 99福利| 黄色国产视频网站 | 成人美女免费网站视频 | 打开每日更新在线观看 | 天天精品综合 | 日韩精选在线观看 | 神马久久av | 国产农村妇女毛片精品 | gogo午夜高清免费摄影 | 日韩午夜小视频 | 亚洲精品午夜 | 日韩一级免费 | 色射色| 超碰人操 | 婷婷六月天 | 亚洲视频在线免费 | 超清av| 久久久1| 啪啪小视频网站 | 成人久久影院 | 日本在线精品视频 | 国产chinasex麻豆videos | 亚洲无限码| 亚洲精品一| 中文字幕26页 | 九色在线 | 色综合一区二区三区 | 婷婷综合影院 | 成年人av在线播放 | 久久国产精品免费一区二区三区 | 成人aaa视频| av免费大全 | 亚洲色网址 | 欧美成网站 | 精品亚洲国产成av人片传媒 | 亚洲高h | 色图综合网 | 国产夜夜春 | 一本色道久久综合亚洲精品酒店 | 91久久国产综合久久91精品网站 | 午夜理伦三级理论 | 人成免费 | 日本性爱视频在线观看 | 97免费超碰| 久久久男人的天堂 | 日韩一区二区三区四区五区六区 | 一区一区三区产品乱码 | 久久久美女视频 | 久久久久精彩视频 | 午夜激情成人 | 永久久久久久 | 国产毛片在线视频 | 亚洲一区欧美二区 | 五月亚洲| 夜色成人| 天天射天天射天天射 | 丁香激情视频 | 成人精品亚洲 | 午夜影院操 | 日韩中文在线观看 | jlzzjlzz欧美大全| 99re在线| 中文字幕在线观看日韩 | 欧美三级免费看 | 亚洲无马砖区2021 | 国产精品自拍区 | 美女污污网站 | 天天干天天爽天天操 | 日本黄色网页 | 麻豆回家视频区一区二 | 亚洲69视频| 久久白浆 | 狠狠操在线播放 | 久久六 | 国产福利精品在线观看 | 亚洲自拍图片 | 成人黄色视屏 | 男女在线免费观看 | 久久久成人精品视频 | 人人看av| 国产区在线观看视频 | 在线a视频 | 嫩草在线播放 | 日韩资源在线观看 | 久草国产精品视频 | av基地网 | 亚州av在线| 一起操网址| 成人午夜精品久久久久久久网站 | 九色.com | 日韩欧美毛片 | 另类性姿势bbwbbw | jzzijzzij亚洲成熟少妇在线播放 一区二区视频在线播放 | 天堂网一区| 国产乱色 | 久久久久九九九 | 国产乱xxxxx国语对白 | 五月激情六月 | 色性av| 国产成人综合自拍 | 又黄又爽在线观看 | 在线免费观看国产视频 | 国产精品日韩 | 久久久国产精品成人免费 | 国产精品亚洲成在人线 | 羞羞草影院| 欧美乱妇狂野欧美在线视频 | 亚洲天堂xxx | 黄色靠逼视频 | 国产日韩欧美精品在线 | www.亚洲在线 | www.激情五月.com | 国产噜噜噜噜久久久久久久久 | 免费又黄又爽又猛大片午夜 | 嫩草一区二区 | 少妇高潮露脸国语对白 | 国产白袜脚足j棉袜在线观看 | 一级a毛片在线观看 | 激情婷婷小说 | 公车痴汉媚药强抹在线观看 | 久草中文网 | 欧美a视频在线观看 | 欧美中文在线观看 | 欧美日韩中文字幕在线视频 | 成人免费视频国产在线观看 | 99久久精品免费 | 国产激情av| 欧美精品v | 亚洲乱码一区av黑人高潮 | 一区二区三区四区精品 | 狠狠搞av| 中国黄色一及片 | 日韩精品1区 | 欧美视频在线观看一区二区三区 | 无遮挡毛片 | 日日爱666| av网页在线观看 | 黄色亚洲网站 | 他趴在我两腿中间添得好爽在线看 | 国产精品99久久久久久久久 | 星空大象mv高清在线观看 | 亚洲女人的天堂 | 看毛片的网址 | 日本成人不卡 | 人人舔人人插 | 日本黄色片网址 | 一级艳片新婚之夜 | 国产亚洲精品久久久久动 | 精品视频www| 婷婷中文字幕 | 久久咪咪 | h片在线 | 麻豆av免费| www.99视频| 国产又粗又猛又黄又爽的视频 | 黄色一级一片免费播放 | 欧美第一页 | 日本吃奶摸下激烈网站动漫 | 原创少妇半推半就88av | 国产理论片在线观看 | va在线观看| 婷婷视频一区二区三区 | 亚洲美女一黄大片 | 亚洲人免费视频 | 人人干人 | 在线黄色观看 | 国产66页| 久草资源在线观看 | 国产一级片在线 | 欧美三级欧美一级 | 亚洲淫视频| 污视频网站在线观看 | 性色在线 | 欧美日韩国产精品一区 | 99久久黄色 | 日本人dh亚洲人ⅹxx | 99精品国产综合久久久久久 | 成人少妇影院yyyy | 亚洲一区二区久久 | 国产亚洲性欧美日韩在线观看软件 | 九九精品在线观看 | 国产精品久久777777毛茸茸 | 欧美极品在线视频 | 北岛玲一区二区 | a亚洲天堂| 亚洲乱码中文字幕 | 野花国产精品入口 | 日韩欧美国产一区二区三区在线观看 | 91麻豆精品国产91久久久久久久久 | 一级真人毛片 | 国产性猛交xxxx免费看久久 | 日本xx视频| 亚洲国产自产 | 国产69精品久久久久777 | 男女在线免费观看 | 先锋影音中文字幕 | 免费在线 | 国产香蕉久久精品综合网 | 天堂av一区二区三区 | 蛇女欲潮性三级 | 日韩一区二区三区视频在线观看 | 亚洲激情网站 | 三级黄网| 国产女人呻吟高潮抽搐声 | 亚洲第一综合网 | 伊人手机在线视频 | 男人天堂综合 | 日日cao| 日韩www.| 91香草视频 | www.av天天| 亚洲精品一二三四 | 日本不卡网站 | 国产精品成人网 | 太久av| melody在线高清免费观看动漫 | 伊人伊人伊人 | 色呦呦网站在线观看 | 亚洲男女在线观看 | 亚洲男人天堂2023 | 五月综合激情网 | 国产精品国产三级国产aⅴ中文 | 一区二区三区四区五区六区 | 可以免费在线观看的av | av片网址 | 亚洲区小说区图片区 | 好吊日在线 | 欧美xx视频 | 久久久久久久网站 | 国产一区二区三区四区在线观看 | 黄色国产精品 | 午夜精品视频在线 | 最新国产小视频 | 欧美日韩三级视频 | 青青草公开视频 | 国产chinasex对白videos麻豆 | 在线看片你懂的 | 国产精品播放 | 亚洲精品中文字幕在线观看 | 国产思思99re99在线观看 | 国产成人精品免费看视频 | 国产淫语 | 精品91久久久 | 国产精品999在线观看 | 黄色aaaa | 黄色国产视频 | 中文字幕免费一区 | 91网页在线观看 | 毛片网在线| 一区二区不卡视频在线观看 | 欧美在线xxx | 激情黄色av| 国产在线拍揄自揄拍 | 久久综合导航 | 成人a视频片观看免费 | 二级毛片 | 欧美一级爆毛片 | 国产伦精品一区二区三区视频我 | 草啪啪 | 国产精品a成v人在线播放 | 久久.com | 日本xxx在线观看 | 91午夜视频在线观看 | 啪啪五月天 | 一区二区三区精品国产 | 色中色综合网 | 黄瓜视频在线观看 | 天堂成人在线 | 婷婷丁香六月 | 欧美偷拍一区二区 | 人人搞人人 | 国产伦精品一区二区三区四区免费 | 日本三级一区 | 综合xx网 | 国产黄免费 | av老司机久久 | 狠狠躁天天躁夜夜添人人 | 日韩成人av网站 | 国产视频在 | 在线精品视频播放 | 久久久久久久久久艹 | www插插插| 日本一本高清视频 | 成人午夜视频免费 | 欧美有码视频 | 一区二区三区欧美在线 | 五月天天| 中文字幕手机在线视频 | 久久国产精品久久久久久 | 国语对白清晰刺激对白 | 男女做那个视频 | 久艹视频在线观看 | 精品国产一二区 | 污污视频在线免费观看 | 日本中文字幕免费 | 精品国产一区二区三区久久久蜜月 | 亚洲精品乱码久久久久久蜜桃不爽 | 一区中文字幕 | 色鬼综合 | 日韩免费在线 | 日韩欧美一区在线观看 | 色五丁香| av一区二区三区四区 | 美女视频污 | 国产婷婷色| 日韩av成人在线 | 亚洲一区二区三区国产 | 国产精品网站在线 | 亚洲精品乱码久久久久久黑人 | 中文毛片无遮挡高潮免费 | 蜜桃视频色 | 日韩欧美一级视频 | 国产综合图片 | 成人无高清96免费 | 国产在线播放av | 精品日韩一区二区三区免费视频 | 91久久国产精品 | 射进来av影视网 | 亚洲最大在线 | 久久这里都是精品 | 国产精品19乱码一区二区三区 | 日本一区二区三区网站 | 久久精品国产免费 | 亚洲色欲色欲www | 99精品偷自拍 | 亚洲一区二区在线视频 | 久久嗨| 黄色av网站在线播放 | 亚洲天堂视频在线观看免费 | 做爰无遮挡三级 | 亚洲一区二区三区在线 | 日韩黄色一级视频 | 日韩视频在线观看一区 | 麻豆福利在线 | 淫综合网| 男男做爰猛烈啪啪高 | av网站地址| 亚洲免费小视频 | 好看的毛片 | 亚洲欧美日韩精品久久 | 久久久天堂 | 黄色在线观看国产 | 亚洲性猛交| 色之久久综合 | 加勒比av在线播放 | 黄色草逼网站 | 激情九九 | 夜夜性日日交xxx性视频 | 久久精品23| 日本成人中文字幕 | 日日撸夜夜撸 | 亚洲 国产 日韩在线 精品 | 91免费黄 | 天天草夜夜 | 在线观看国产免费视频 | av一区免费在线观看 | av网站在线免费 | 久草热在线视频 | 最近中文字幕在线播放中 | 天天做天天射 | 国产原创精品 | 神马久久影院 | 九九热在线视频播放 | 国产操片| www在线视频 | 成人亚洲视频 | 久久伊人影院 | 一级a毛片在线观看 | 中文字幕在线观看日本 | 韩日av在线| 色婷婷激情 | 亚洲成年人 | 中文字幕日韩第一页 | 日韩精品首页 | 国产情侣免费视频 | 亚洲第二页 | 国产网红主播精品av | 香蕉视频91 | 国产馆av | 91婷婷射 | 久久精品99久久久久久 | 日本在线播放 | 中文幕无线码中文字蜜桃 | 在线播放美人ol松岛枫 | 欧美国产一级片 | 成人先锋av| 精品中文在线 | jizzjizz亚洲 | 国产精品一二 | 青青青草视频在线 | 中文字幕在线观看视频一区 | 丝袜美腿亚洲综合 | 国产肉体xxxx裸体784大胆 | 欧美嫩交 | 色一区二区三区四区 | 欧美亚洲专区 | 日韩黄网站 | 看一级黄色大片 | 一本色道久久综合狠狠躁 | 伊人55影院 | 黄色在线观看免费视频 | 伊人久久在线 | 在线观看日韩视频 | 久久伊人亚洲 | 久久久性 | 国产传媒视频在线观看 | 亚洲精选视频在线 | 日本性爱动漫 | 日韩中文字幕观看 | 欧美日韩在线国产 | 欧美日韩高清一区二区 | 爽爽影院在线免费观看 | 亚洲精品乱码久久久久久麻豆不卡 | 亚洲人成人 | 成人激情文学 | 精品日韩一区二区三区 | 中日韩乱码一二新区 | 超碰网址 | 香蕉久久夜色精品国产使用方法 | www黄色网址| 午夜影视大全 | 一区二区国产在线 | 中文字幕精品在线观看 | 日韩午夜免费 | 午夜影院操 | 成人毛片100免费观看 | 嫩嫩av| 伊人成人在线视频 | 伊人称影院 | 天堂综合网 | 成年人高清视频 | 国产v亚洲v天堂无码 | 天天干天天爽天天操 | 丰满雪白极品少妇流白浆 | 日日好av| 亚洲91色 | 国产日批 | ww黄色| 中国一级免费毛片 | 欧美福利一区 | 久久久久久久久黄色 | 一级二级三级黄色片 | 亚洲狼人综合 | 最新av在线网站 | 日韩精品极品视频 | 国产欧美在线播放 | 国产一级黄色大片 | 日韩精品第二页 | 偷偷操网站 | 欧美大片一区二区三区 | av大全在线 | 亚洲一二三区视频 | 性猛交xxxx乱大交孕妇2十 | 男人亚洲天堂 | 成人欧美一区二区 | 91av免费在线观看 | 欧美日韩www | 久久你懂的 | av无线看 | 欧美成人动态图 | 国产视频最新 | 国产精品中文字幕在线 | 久久免费国产 | 这里只有精品视频在线播放 | 亚洲日本香蕉 | 日本视频网址 | 最新国产在线拍揄自揄视频 | 成人aaa视频 | 永久免费看成人av的动态图 | 95国产精品 | 烈性摔跤 | 超薄肉色丝袜一区二区 | 亚洲深夜福利 | 中文字幕久久一区二区三区 | 欧美国产一区二区 | 亚洲一区二区三区国产精华液 | 天堂a视频 | 浮力影院国产第一页 | 91久久国产综合久久91精品网站 | www.久久精品.com | 国产靠逼视频 | 国产精品69毛片高清亚洲 | 欧美日韩精品一二三区 | 色播综合网 | 婷婷天堂 | 国产伦精品一区二区三区四区免费 | 丨国产丨调教丨91丨 | 四虎在线视频免费观看 | 少妇色 | 国产999精品久久久久久 | 欧美黄色录像视频 | 欧美日韩国产成人精品 | 国产黄色高清视频 | 亚洲人成一区 | 69天堂 | 日韩二三区 | 成年人精品 | 久久cao| 免费av在线 | 九九在线精品视频 | 日本中文字幕一区二区 | aaa成人| 国产三区在线成人av | 天天操,夜夜操 | 中文字字幕码一二三区 | 亚洲成网 | 少妇激情偷人爽爽91嫩草 | 草一色 | 亚洲精品乱码久久久久久按摩观 | 亚洲欧美一区二区三区久久 | 男女啊啊啊 | 天天天天 | 久久久久久久网站 | 东方成人av在线 | 在线国产黄色 | 精品一区免费观看 | 精品美女久久久 | 日本免费视频 | 全球av在线| 色老板精品凹凸在线视频观看 | 最新免费黄色网址 | 成人靠逼视频 | 色一情一伦一子一伦一区 | 长篇爽欲亲伦96部小说 | 国产a级精品| 亚洲 欧美 视频 | 99精品在线免费观看 | 日本美女影院 | 91丨九色丨国产在线观看 | 日韩中文字幕高清 | 日韩av手机在线播放 | 国产精品国产三级国产aⅴ入口 | 女女综合网 | 五月天久久久久久 | 国产一区二区在线播放视频 | 亚洲免费av网址 | 天天综合入口 | 国产美女毛片 | 亚洲激情网 | 中文字字幕在线中文乱码 | 免费日批网站 | 久久久成人精品 | 欧美日韩在线第一页 | 国产成人啪精品午夜在线观看 | 国产成人久久精品麻豆二区 | 黄色国产视频 | 小日子的在线观看免费第8集 | 一级片手机在线观看 | 亚洲免费观看高清 | 亚洲欧洲自拍偷拍 | 欧美日韩a级 | 精品欧美一区二区久久久 | 日本a v网站 | 欧美日韩免费一区二区三区 | 亚洲在线免费 | 欧美精品成人在线 | 亚洲性猛交xxxx乱大交 | 色午夜| 欧美日韩专区 | 欧美一级做 | 亚洲www永久成人夜色 | 精品少妇久久久 | 夜夜爽日日澡人人添 | 亚洲精品视频大全 | 美国av大片 | 成人免费视频网址 | 亚洲成人激情在线 | 久久久影院 | 一区二区三区视频免费在线观看 | 99久久久国产 | 欧美激情成人 | 污黄网站在线观看 | 激情综合站 | 人人人人爽| 色偷偷人人澡人人爽人人模 | 黄色在线观看国产 | 超碰97在线资源站 | 麻豆传媒av在线播放 | 国产中文字幕在线视频 | 黄瓜视频在线免费看 | 牛牛av | 国产伦精品一区二区三区千人斩 | 一区国产精品 | 男女互操在线观看 | 一区二区三区在线观看av | 少妇久久久久久久 | 色人阁av| 青青青视频在线 | 亚洲91在线视频 | www.18av| 亚洲精品少妇久久久久久 | 午夜一本 | 色福利hd写真video | 国产精品久久久久久69 | 成年人免费毛片 | japanese国产打屁股 | www.xxxxx日本| 国产在线一区二区 | 黄网在线免费观看 | 中文字幕第一页第二页 | 激情婷婷丁香 | 久久免费精品视频 | 日韩在线观看你懂的 | 日韩免费av在线 | av资源天堂 | 国产喷水视频 | 亚洲 美腿 欧美 偷拍 | 成人黄色三级视频 | 国内自拍视频在线观看 | 久久久蜜桃一区二区人 | 97国产一区 | 男人天堂亚洲天堂 | 亚洲精品成a人在线观看 | 久久第一页 | 国产免费a级片 | 欧美大片在线看免费观看 | 麻豆一区二区99久久久久 | 久久婷婷成人综合色 | 欧美人成在线 | av在线免费观看不卡 | 日韩欧美h | 日本中文字幕在线观看 | 一区二区三区精 | 青青草原在线免费观看视频 | 蜜桃av噜噜一区二区三区小说 | 国产男女av | 午夜专区 | 中国国产黄色片 | 欧美精品福利视频 | 欧美日韩一区在线 | 在线视频污| 伊人中文字幕在线观看 | 全部免费毛片在线播放高潮 | 欧美日韩免费高清一区色橹橹 | 伊人涩| 亚洲精品乱码久久久久久金桔影视 | 亚洲欧美激情视频 | 国产精品国产三级国产aⅴ无密码 | 91超碰在线播放 | 国产成人福利视频 | 三级爱爱 | 亚洲视频免费在线观看 | 夜夜躁狠狠躁日日躁av麻豆 | av72成人 | 成人久久视频 | 午夜一级片 | 欧美成人精品一区二区三区 | 婷婷综合网 | 免费日韩一区 | 天堂网在线播放 | 久久av综合| 国产一级特黄aaa大片 | 国产女同在线观看 | 婷婷综合网站 | 久热这里只有精品6 | 国产精品成人av久久 | 免费看黄色大片 | 日韩爱爱爱 | 日韩亚洲天堂 | 黄色三级三级三级三级 | 国产成人小视频 | 国模无码大尺度一区二区三区 | 夜夜嗨网站 | 成人午夜精品 | 国产一二三四在线 | 国产精品综合久久久久久 | 波多野结衣精品 | 中国男女全黄大片 | 一级二级三级视频 | 午夜精品久久久久久久蜜桃 | 亚洲欧美日韩国产综合 | 在线不卡日韩 | av大片在线播放 | 国产精品网站一区 | 亚洲男人天堂视频 | 欧美日韩一区二区在线视频 | 国产精品自拍在线观看 | 伊人久久综合影院 | 色婷婷激情 | 久久性视频 | 日本少妇吞精囗交 | 小早川怜子久久精品中文字幕 | 日本zzjj | 久久网页 | 学生孕妇videosex性欧美 | 性高潮影院 | 国产96视频 | 成人欧美一区二区三区在线观看 | 亚洲视频欧洲视频 | 四季av一区二区凹凸精品 | 日本一区二区不卡在线 | 国产美女精品一区二区三区 | 91福利在线观看 | 色婷婷视频网 | 男女视频免费 | 91插插插插插 | av在线免费网址 | 日本人毛片 | 国产精品人人做人人爽人人添 | 午夜久久福利 | 亚洲自拍偷拍精品视频 | 亚洲第一页av| 精品初高中害羞小 | 亚洲乱码国产乱码精品精网站 | 成人欧美一区二区三区在线观看 | 91在线在线| 日本高清黄色 | 99sao| 欧美伦理在线观看 | 毛片h| www.成人在线观看 | 六月丁香久久 | 在线色一区| 欧美日韩国产第一页 | 国产性猛交╳xxx乱大交 | 国产三级自拍 | 日日骚视频 | 欧美午夜精品一区二区三区 | 爱性久久久久久 | 在线中文视频 | 久草国产在线观看 | 波多野结衣久久 | 在线观看网页视频 | 俄罗斯videodesxo极品 | 精品动漫一区二区三区 | 欧美激情一区二区 | 男女超碰 | 99成人在线视频 | 成人看片17c.com | 亚洲欧美精品在线观看 | 亚洲香蕉| 日韩一级片网站 | 亚洲视频在线网 | 亚洲一区二区三区成人 | 伊人久久久久久久久久久久久 | 特级黄色大片 | 天天拍天天操 | 成人网在线播放 | 日韩一区精品 | 日韩色黄大片 | 亚洲五月婷婷 | 成人在线激情视频 | 花样视频污 | 污污在线看 | 九色视频网站 | 亚洲国产精品人人爽夜夜爽 | 久久久久久久久免费 | 你懂得在线| 熊出没之冬日乐翻天免费高清观看 | 操夜夜操| 99视屏| 日本一道本 | 啊av在线| 国产男女视频 | av在线国产精品 | 国产黄色一区 | 欧美黄色大片免费观看 | 日韩不卡高清 | 久久精品久久久久久久 | 国产伦精品一区二区三区免费优势 | 欧美精品99久久久 | 色久在线| 亚洲性综合 | 久久久网| 800av在线视频 | 日韩免费视频一区 | 久久精品国产99国产 | 金8天国av| 中文字幕在线播放第一页 | 河北彩花av在线播放 | 午夜久久久久久久 | aaa午夜 | 九九久视频 | 亚洲综合情 | 亚洲一级看 | 精品福利一区 | 97久久久久久久 | 欧美另类精品 | 另类激情视频 | 男女啪啪在线观看 | 成人激情综合 | 久久草精品| 色综合天天 | 爱逼综合网 | 午夜aaa | 欧美性猛交一区二区三区精品 | 免费国产黄色 | 在线观看黄色片 | 久久亚洲在线 | 97自拍偷拍 | 国产精品福利一区二区三区 | 激情久久五月 | 精品中出 | 国产一二视频 | 五月天六月婷婷 | 亚洲精品久久久久国产 | 国产女人高潮毛片 | 久久久久久久久国产精品 | 国产高清日韩 | 尤物天堂 | www.日韩高清| 色91视频 | 人人射视频| 永久精品动漫网站入口大全 | 中文欧美日韩 | 免费一级特黄毛大片 | 伊人春色影院 | 国产成人宗合 | 理论片高清免费理论片毛毛片 | 杨幂一区二区国产精品 | 中文字幕精品久久 | 欧美不卡在线视频 | 91精品久久久久久久久久入口 | 亚洲怡红院av | 欧美美女在线 | 成人av专区 | 天天操婷婷 | 亚洲网站免费观看 | 精品视频网 | 曰本三级日本三级日本三级 | 理论片91 | 亚洲深夜在线 | 国产精品搬运 | 日本道在线观看 | 日本中文字幕免费观看 | 亚洲免费视频大全 | 秋霞毛片 | 欧美第一页 | 亚洲国产一区二区三区a毛片 | 欧美激情综合五月色丁香 | 亚洲黄色免费观看 | 国产一区,二区 | 国产aa大片 | 久久久久这里只有精品 | sese国产| 在线观看av中文字幕 | 特级一级片 | 精品国产一区二区三区久久久蜜月 | 亚洲图片综合网 | 国产精品国产三级国产aⅴ无密码 | 久久久久久国产精品视频 | 亚洲第一区在线观看 | 日韩成人精品一区二区 | 久久国产中文字幕 | 午夜小视频免费在线观看 | 青青草原伊人 | 青青草精品在线视频 | 91福利视频一区 | 国产a级免费 | 日本人妻换人妻毛片 | 亚洲女优在线 | 国产亚洲第一页 | 久久综合久久88 | 国产精品成人自拍 | 久久一区二区三区精品 | 91免费在线播放 | 日韩午夜在线 | 男人天堂你懂的 | 草草草在线观看 | 中国特级黄色大片 | 好吊色欧美一区二区三区视频 | 91tv国产成人福利 | 91精品亚洲 | 成人在线观看一区 | 天天操天天插天天干 | 久久久久久久久久国产 | 久久影视一区二区 | 91天堂网 | 亚洲一区二区视频 | 自拍偷拍亚洲欧洲 | 精品在线视频一区 | 午夜av在线播放 | a国产在线 | 免费的黄色小视频 | 在线观看污视频网站 | 色爽 | 伊人二区 | 青青青免费视频观看在线 | 91破处视频 | 国产午夜一区二区 | 婷婷久久久 | 精品一区二区三区三区 | 美女精品 | 亚洲精品一区二区三区中文字幕 | 国产精品久久久久久欧美2021 | 伊人久久五月天 | 国产传媒av在线 | 丝袜综合网| 97人人看| 亚洲永久精品ww.7491进入 | 日韩一区欧美二区 | 日韩精品手机在线 | 日韩av在线播放观看 | 国产又黄又猛又爽 | 宅男噜噜噜一区二区三区 | 视色av| 亚洲精品日韩欧美 | 国产欧美日韩中文字幕 | 国产精品乱码一区二区三区 |