精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

下一代X Server:揭開Wayland的面紗

系統(tǒng)
自 Ubuntu 決定未來將啟用 Wayland 之后,根據(jù) Phoronix 的消息,來自于 Red Hat 的 Adam Jackson 在 Fedora 項目的郵件列表里表示,F(xiàn)edora 也有計劃部署 Wayland。究竟Wayland是什么呢?本文將從X Window開始回顧,繼而揭開Wayland的面紗。

自 Ubuntu 決定未來將啟用 Wayland 之后,根據(jù) Phoronix 的消息,來自于 Red Hat 的 Adam Jackson 在 Fedora 項目的郵件列表里表示,F(xiàn)edora 也有計劃部署 Wayland,但目前它只是有可能被作為軟件包放置在 Fedora 15 中,并不會默作為安裝組件。

Wayland是什么呢?它是X Window?還是要取代X Window?它的優(yōu)勢在哪里?Linux桌面/移動會因此有什么變化?在本篇中,我將回顧歷史,展望未來,通過簡易的文字,來先回顧一下X Window,從而繼續(xù)解答Wayland。

來源:http://imtx.me 作者:TualatriX

古老的X Window和現(xiàn)代的桌面技術

X Window在1984年由MIT研發(fā),它的設計哲學之一是:提供機制,而非策略。舉個最簡單的例子吧:X Window提供了生成窗口(Window)的方法,但它沒規(guī)定窗口要怎么呈現(xiàn)(map)或擺放(place),這個策略是由外部程序——窗口管理器(Window Manager)所決定的。另外一個X Window的主要特點便是:Server/Client網(wǎng)絡模型。不論是本地、遠程的應用程序,都統(tǒng)一通過Server/Client模型來運作,比如:讓遠程的應用程序跑在本地上。

X Window在推出之后快速演化,在1987年時候,其核心協(xié)議已經(jīng)是第11版本了,簡稱:x11。這個版本已經(jīng)將“提供機制,而非策略”這個哲學貫徹地非常徹底,以致于核心協(xié)議基本穩(wěn)定,不需要特別大的改動。于是乎,你看到了,現(xiàn)在是2010年,整整23年了,X Window依然是X11。

你可能會詫異,23年了,X Window的核心都沒有特別大的變化,它能適應現(xiàn)代桌面的快速發(fā)展嗎?這就要再次提到X Window的設計優(yōu)勢了,X Window在核心層之外提供一個擴展層,開發(fā)者可以開發(fā)相應擴展,來實現(xiàn)自己的擴展協(xié)議,比方說:

標準的Window都是矩形的,我如何用它來畫一個圓形的窗口?X Window協(xié)議并未提供,但是通過“shape”這個擴展,X Window可以實現(xiàn)不規(guī)則的窗體。

所以啊,這23年,X Window除了繼續(xù)完善核心協(xié)議、驅動以外,很大程度上,都是擴展使它保持“與時俱進”,比如說:

  • 要多頭顯示支持,這個是由“Xinerama”擴展實現(xiàn)的;
  • 要有多媒體視頻回放的支持,這個是由“X Video”擴展實現(xiàn)的;
  • OpenGL的3D支持,則是通過“GL”擴展來實現(xiàn)的;
  • Compiz那樣的合成桌面特效是怎么弄的?沒錯,還需要一個新的擴展,它便是:“Composite”;
  • 甚至Keyboard的支持,都是通過“X Keyboard Extension”(也就是“XKB”)的!

X Window的核心,基本上就是在處理Server/Client、驅動之類的,而外部的那些支持,基本上全是通過“擴展”進行的。這沒什么不好,X Window的結構設計精良,盡管是擴展,但它們沒有任何效能上的問題。通過擴展方便地實現(xiàn)了一些對新技術、新事物的支持,而且方便維護,這再好不過了。

所以你看到了盡管23年過去了,基于X Window的GNOME、KDE,還能保持與同期Windows、Mac OS X競爭甚至某些方面更好,你就不得不佩服這些前輩在最初設計時定下的設計哲學是多么正確了。

雖然擴展的眾多沒有給X Window造成什么問題,也跟X Window的設計哲學相符,但是其Server/Client的網(wǎng)絡構架,卻一直倍受質疑,這便是:

X Window的效率問題

經(jīng)常聽到有人說,X Window的Server/Client結構嚴重影響效率,導致Linux桌面的效應速度一直不如Windows、Mac OS X。事實是不是這樣呢?讓我們還是透過原理來說話吧。

#p#

這張,便是當前X Window系統(tǒng)的架構圖,稍微解釋一下:

  • X Client:圖形應用程序,如Firefox、Pidgin等;
  • X Server:你看不見的控制中心;
  • Compositor:合成桌面系統(tǒng),如Compiz;
  • Kernel/KMS/evdev:這便是Linux Kernel,后面會提到KMS技術了,其中還有一項evdev,是管理輸入設備的。

X Architecture

通過這些箭頭,你已經(jīng)可以明白一些X Window的工作機制了,不過還從一個應用場景來解釋一下,想像一下,當你點擊了Firefox(X Client)的“刷新”按鈕,將會發(fā)生以下事情:

  1. 你用鼠標點擊了Firefox的“刷新”按鈕,這時內核收到了鼠標發(fā)來的事件,并將其通過evdev輸入驅動發(fā)送至了X Server。這時內核實際上做了很多事情,包括將不同品牌的鼠標發(fā)出的不同信號轉換成了標準的“evdev”輸入信息。
  2. 這時X Server可以判斷哪個Window該收到這個消息,并將某座標按下按鈕的消息發(fā)往X Client——Firefox。但事實上X Server并不知道它得到的窗口信息是不是正確!為什么呢?因為當前的Linux桌面早已經(jīng)不是10年前的那樣了,現(xiàn)在是“Composite”即合成桌面的時代,合成桌面的一個特點便是:Compositor(如Compiz)管理窗口的一切,X Server只能知道屏幕的某個點收到了鼠標消息,卻不知道這個點下面到底有沒有窗口——誰知道Compiz是不是正在搞一個漂亮的、緩慢的動畫,把窗口收縮起來了呢?
  3. 假設應用場景沒這么復雜,F(xiàn)irefox順利地收到了消息,這時Firefox要決定該如何做:按鈕要有按下的效果。于是Firefox再發(fā)送請求給X Server,說:“麻煩畫一下按鈕按下的效果。”
  4. 當X Server收到消息后,它就準備開始做具體的繪圖工作了:首先它告訴顯卡驅動,要畫怎么樣一個效果,然后它也計算了被改變的那塊區(qū)域,同時告訴Compiz那塊區(qū)域需要重新合成一下。
  5. Compiz收到消息后,它將從緩沖里取得顯卡渲染出的圖形并重新合成至整個屏幕——當然,Compiz的“合成”動作,也屬于“渲染(render)”,也是需要請求X Server,我要畫這塊,然后X Server回復:你可以畫了。
  6. 整個過程可能已經(jīng)明了了,請求和渲染的動作,從X Client->X Server,再從X Server->Compositor,而且是雙向的,確實是比較耗時的,但是,事實還不是如此。介于X Window已有的機制,盡管Compiz已經(jīng)掌管了全部最終桌面呈現(xiàn)的效果,但X Server在收到Compiz的“渲染”請求時,還會做一些“本職工作”,如:窗口的重疊判斷、被覆蓋窗口的剪載計算等等(不然它怎么知道鼠標按下的坐標下,是Firefox的窗口呢)——這些都是無意義的重復工作,而且Compiz不會理會這些,Compiz依然會在自己的全屏幕“畫布”上,畫著自己的動畫效果……

從這個過程,基本可以得出結論:

  1. X Client <-> X Server <-> Compositor,這三者請求渲染的過程,不是很高效;
  2. X Server,Compositor,這兩者做了很多不必要的重復工作和正文切換。

當然,這里我沒有直接說明這種模式有沒有給X Window造成效率問題,因為我們還少一個對照組。再看對照組之前,再來看看X Server的另一個趨勢:

#p#

從“什么都做”到“做得越來越少”的X Window

X Window剛出現(xiàn)那會,主要提供一個在操作系統(tǒng)內核上的抽象層,來實現(xiàn)一個圖形環(huán)境。所謂圖形環(huán)境,最主要的便是:圖形+文字。當時的X Window便提供“繪圖”和“渲染文字”的機制。圖形桌面上的圖案和文字,都通過X Window合成并繪制出來。

一個典型的例子,如果你要用X來畫點,就要在你的程序中通過“XDrawPoint”來進行,X Server收到消息后,便會畫出相應的點。

現(xiàn)在,稍微接觸過圖形開發(fā)的人都知道了,在X Window下,一般都通過GTK+和Qt來進行了。更深一層的是,通過Cairo(Qt不是)來繪制圖形。Cairo是什么?它是一個繪圖+渲染引擎,著名的瀏覽器Firefox,便是使用Cairo來渲染網(wǎng)頁和文字的。

Cairo是一個全能的、跨平臺的矢量繪圖庫,它不是簡單的包裝一下各個平臺的繪圖庫而已,盡管它最初是基于X Window開發(fā)出來的繪圖庫。現(xiàn)在Cairo支持各種不同的后端,來向其輸出圖形,比如X、Windows的GDI、Mac OS X的Quartz,還有各種文件格式:PNG、PDF,當然還有SVG。可以說,Cairo是一個很徹底的、全能的繪圖庫,現(xiàn)在無論繪制什么圖形,都不會考慮到用XLib了。

在Cairo之上,還有文字排版庫:Pango,同樣很明顯的,處理文字排版,都不會用XFont之類的東西了,而是直接用Pango畫。當然Pango也是跨平臺的。

盡管在Linux平臺下,Cairo、Pango的發(fā)揮依然是基于X Window的,但X Window充其量僅僅是一個“backend”而已,并不是少它不行。同理,跨平臺的GTK+、Qt也只是視X為其中所支持的后端之一,假如哪天X真的不在了,更換一個新后端,當前的GNOME、KDE也能完整的跑起來。

再提另外一個比較典型的關于“X曾經(jīng)做的,但現(xiàn)已不做”的例子,便是“模式設置(mode-setting)”,說通俗點,就是“分辨率的設置”,但后面會說明不僅僅如此。

大家都知道,Linux只是一個內核,它只有控制臺,通過Shell來進行交互,而控制臺默認是80x24(單位:字符)的,要進入分辨率1024x768或更高的圖形模式,就需要X進行一次“模式設置”,設置正確的分辨率等等。

盡管后來Linux也支持了各種用戶層(user-space)的模式設置,讓終端也支持標準的分辨率,但是X的模式設置與此是不相干的,所以一兩年前,在Linux的啟動過程中,從終端進入圖形界面時,屏幕會“閃”一下,這時便在進行“模式設置”——這里就一定要用“模式設置”這個術語了,因為即使終端是1024的,進入X圖形也是1024的,模式的變更還是要進行。

后來呢,嗯,2009年初期,KMS(內核模式設置)終于出現(xiàn)了!!!很少關心桌面圖形的Linux內核,在當時引入了“內核級”的模式設置,也就是說,在內核載入完畢、顯示驅動初始化后很短的時間內,即設置好標準的分辨率和色深,通過在X層做相應的更改,從此X的初始化就可以省去“模式設置”這一過程了!也就是從Fedora 10開始,Linux的啟動非常平滑、漂亮,沒有任何閃爍了。現(xiàn)在的Ubuntu 10.10也一樣,KMS的應用已經(jīng)相當成熟。

X從此又少了一樣圖形任務……“X淚奔~你們都不要我了。”

可以說,這20多年來,X從“什么都做”已經(jīng)到了“做的越來越少”。絕大多數(shù)的開發(fā)者開發(fā)圖形應用程序,已經(jīng)可以完全無視X的存在了,X現(xiàn)在更像是一個中間人的角色。那么,X這個中間人會不會有一天,完全被其他事物所取代呢?

沒錯!那就是下面要介紹的Wayland!

#p#

Wayland究竟是什么?

如果在兩年前,按照那篇《Wayland:Linux的新X Server》的理解,它是一個新的“X Server”,在于改善當前X Server的不足,從而取代它。現(xiàn)在,我們已經(jīng)可以用更標準的語言來定義Wayland了,那就是:A Simple Display Server。

沒錯,Wayland是一個簡單的“顯示服務器”(Display Server),與X Window屬于同一級的事物,而不是僅僅作為X Window下X Server的替代(注:X Window下分X Server和X Client)。也就是說,Wayland不僅僅是要完全取代X Window,而且它將顛覆Linux桌面上X Client/X Server的概念,以后將沒有所謂的“X Client”了,而是“Wayland Client”。

更確切的說,Wayland只是一個協(xié)議(Protocol),就像X Window當前的協(xié)議——X11一樣,它只定義了如何與內核通訊、如何與Client通訊,具體的策略,依然是交給開發(fā)者自己。所以Wayland依然是貫徹“提供機制,而非策略”的Unix程序。

“什么?Wayland還是Server/Client模式?”可以這么理解,但實際上與X Window的Server/Client有著本質的區(qū)別。

讓我們用一張類似前文所示的圖表來重新演示一下,在Wayland的框架下,窗口事件的響應是如何進行的。

在Wayland的架構圖中,最顯著的一些特點是:

  • 它復用了所有Linux內核的圖形、輸入輸出技術:KMS、evdev,因此已支持的驅動可以直接拿來用;
  • Wayland沒有傳統(tǒng)的Server/Client的模式,取而代之的是:Compositor/Client,這不僅僅是換一個名稱而已,后面會講到具體區(qū)別;

Wayland Architecture

還記得前文中“點擊Firefox的刷新按鈕”這個應用場景吧?在Wayland里,所有的流程是這樣的:

  1. 內核收到了鼠標發(fā)出的信息,經(jīng)過處理后轉發(fā)到了Wayland Compositor,就像之前發(fā)往X Server一樣。
  2. Compositor收到消息后,立馬能知道哪個窗口該收到這個消息,因為它就是總控制中心,它掌握窗口的層級關系、動畫效果,因此它知道該坐標產生的鼠標點擊信息應該發(fā)送給誰,就這樣,Compositor將鼠標的點擊信息發(fā)送給了Firefox。
  3. Firefox收到了消息,這時如果是在X Window下的話,F(xiàn)irefox會向X Server請求繪制按鈕被按下的效果。然而在Wayland里,F(xiàn)irefox可以自行進行繪制而不需要再請求Compositor的許可!這就是傳說中的:直接渲染機制(Direct Render)!Wayland不管Client的繪制工作,整個過程變得十分簡單而且高效!當Firefox自行完成了按鈕狀態(tài)的繪制后,它只需要通知Compositor,某塊區(qū)域已經(jīng)被更新了。
  4. Compositor收到Firefox發(fā)來的信息的,再重新合成那塊更新的那塊區(qū)域,將最終桌面效果呈現(xiàn)給用戶。這個過程主要是跟內核、顯卡驅動打交道了。

整個流程是不是很自然、很簡單?

所以結論出來了:

  1. Wayland的“直接渲染架構”徹底結束了傳統(tǒng)X Window在渲染圖形時需要不停的向Server請求、確認再繪制這個繁瑣的過程,理論上響應速度有了“爆發(fā)式”增長;
  2. Wayland從根本上消除了“Server+Compositor”的重復勞動,僅有且只需要有一個“Compositor”合成器而已。

Compostior,就是Wayland上的“X Server”,但是它更純粹,它不像X Server一樣,像個大家長,什么都要管。Compositor只做該做的事情,把上面的過程簡化成任務便是:

  1. 基于Wayland協(xié)議,處理evdev的信息;
  2. 通知Client(即應用程序)對相關事件做出反應(至于應用程序想怎么反應,Compositor不需要過問);
  3. 收到Client的狀態(tài)更新,重新合成圖形或管理新的圖形布局。

你意識到了,Wayland Compositor的角色,就像是“X Server”+“Window Manager”,但它只做份內的事情而已。我想你已經(jīng)可以想像Wayland構架是如何簡單而且高效了,它一舉解決了“X Window”發(fā)展這么多年來積累的、通過“擴展”去解決的那些問題。

看似很美好,那么Wayland現(xiàn)在的可用性如何?大家都知道,GTK+、Qt,現(xiàn)在都是基于X的,它們能順利地移植至基于Wayland嗎?當然可以!

#p#

逐漸成熟的Wayland周邊應用

還記得前面那篇文章中,我說過的這句話吧:“盡管在Linux平臺下,Cairo、Pango的發(fā)揮依然是基于X Window的,但X Window充其量僅僅是一個“backend”而已,并不是少它不行。同理,跨平臺的GTK+、Qt也只是視X為其中所支持的后端之一,假如哪天X真的 不在了,更換一個新后端,當前的GNOME、KDE也能完整的跑起來。”

你已經(jīng)想到了,GTK+、Qt,只需要簡單的處理一下后端,便可以跑在Wayland上了。比如:

在當前的GTK+3.0開發(fā)分支中,有一個開發(fā)分支是“rendering-cleanup”。“清理渲染”?這是做什么的?聯(lián)想一下那個連Client“怎么渲染”都要管的X Server吧。

對了!GTK+3.0已經(jīng)徹底移除了所有圖形渲染、繪圖方面跟X相關的部分了,現(xiàn)在它是一個100%基于Cairo繪制的圖形工具庫了(之前GTK+2.x時在2.8開始逐漸轉向用Cairo繪制,但一直不徹底)。

這意味著兩點:

  • GTK+的一直以來評價不怎么樣的跨平臺性,在3.0將有顯著的突破;
  • GTK+的Wayland后端,已經(jīng)在路上了!

見GTK+跑在Wayland上,截圖引自:Kristian Shows Off GTK+ 3.0 On Wayland

Wayland and GTK+

當然,Qt也有了,限于篇福,這里就不介紹了。

另外一個已經(jīng)在主開發(fā)分支便支持Wayland的東西便是:Clutter。這是一個基于OpenGL的動畫框架,我以前介紹過很多次的GNOME Shell、Moblin,都是基于Clutter的。在Clutter當前1.5.x的開發(fā)分支,Wayland作為其中一個“backend”,已經(jīng)得到了“experimental”的支持。所以說,GNOME 3.0、MeeGo Netbook很可能會成為第一個應用Wayland的桌面環(huán)境。

那么,看來Wayland真的觸手可及了啰?可以這么說,但是還差一點。

#p#

Wayland技術實現(xiàn)及工作重點

Wayland的核心協(xié)議已經(jīng)實現(xiàn)的差不多了,它充分利用了Linux內核的KMS、GEM、DRM等技術,另外,它默認是支持3D加速的,也就是通過OpenGL ES進行圖形的合成——光是這一點,X Window又要淚奔了。

使用OpenGL ES這個子集而非OpenGL,這意味著什么?想想有多少項目是用OpenGL ES的:Android、iOS、WebOS、WebGL……幾乎所有主流的的移動操作系統(tǒng)、瀏覽器3D的實現(xiàn),都選用了精簡、高效的OpenGL ES。

我不知道當前Android的Display Server、Input/Output是如何實現(xiàn)的,總之跟iOS相比,在觸控的響應上是有差距的。未來,對OpenGL ES有著良好支持的Wayland,不知道會不會給這些基于Linux內核的移動操作系統(tǒng)發(fā)力呢?我想是非常有可能的!

這時問題就來了,因為Wayland所使用的,都是當前Linux下最新潮的圖形技術。所以理所當然的,在驅動這一層面會有一些廠商跟不上。

拿nVIDIA開刷吧,KMS技術都出來一年多了,Intel的全部顯卡和AMD部分顯卡已經(jīng)獲得支持了,可nVIDIA壓根就沒有興趣搞這個,以致于開源社區(qū)利用反向工程,通過“Nouveau”項目讓nVIDIA支持了KMS,當然比較遺憾的是,性能跟官方閉源的驅動是差了相當?shù)木嚯x。

所以說,基于Wayland的Linux桌面/移動要真正得到應用,驅動這一關是一定要解決的。不過正所謂潮流不可擋,nVIDIA遲早會支持這項技術的。

等到驅動完全不成問題了,Wayland還需要一個全功能的“Compositor”,這個角色,就由Clutter/Mutter、Compiz、KWin等當前主流的窗口管理器來扮演的,相信只要通過簡單的修改,這些合成窗口管理器很快地就能轉變成一個全能的“Wayland Compositor”!

把玩Wayland及展望未來

講了這么多技術、歷史和業(yè)界,大家肯定枯燥了,究竟現(xiàn)在有沒有可以跑的“Wayland Compositor”可以玩玩呢?當然!

現(xiàn)在,只要你從官方取得源碼,然后根據(jù)教程進行編譯,就能跑起一個簡單實現(xiàn)的“Wayland Compositor”。由于Wayland協(xié)議的靈活性,Wayland Compositor也可以擁有自己的后端:比如直接在DRM上跑Wayland(不需要X),或者在X Window上跑起一個Wayland Compositor(相當于在X Window上用Xephyr再跑一個X Window)。

當前我在Ubuntu 10.10的圖形環(huán)境下,就跑起了默認的這個簡易的Wayland Compositor,幾點說明:

  • 支持透明、陰影和簡單的窗口管理;
  • 所有的圖形繪制,都是通過Cairo-gl(Cairo的OpenGL后端)進行;

Wayland Terminal

這是又一個例子,我編譯了Clutter的Wayland后端,成功地跑起了一個Clutter的Demo:即同中Ubuntu Tweak的3D Logo。

Wayland and Clutter

除了這個Wayland Compositor本身是跑在X Window之上,其本身合成效果、處理窗口布局等等,都完全沒有用到X,而且整個代碼非常簡潔。未來的Linux圖形,就會像是這樣一個結構簡單又高效的樣子。

相信看完我這些介紹,大家對Wayland是個什么角色,已經(jīng)比較清楚了吧?

簡單的說,它就是一個去除X Window中不必要的設計、充分利用現(xiàn)代Linux內核圖形技術的一個顯示機制,它的出現(xiàn)是自然而然的,它的使命不是為了消滅X Window,而是將Linux的圖形技術發(fā)揮至更高的一個境界。傳統(tǒng)的X Window(即經(jīng)典X應用、Gtk 1.x/2.x等舊應用),也會在相當長一段時間內得到繼續(xù)支持,通過Wayland Client的形式跑在Wayland Compositor上,直到最終升級、取代或被淘汰。

2011年后期或2012年,我們將能看到Wayland正式著陸,期待吧!

原文:12

【編輯推薦】

  1. Ubuntu:請你分清桌面端與服務器
  2. Linux下三大免費桌面虛擬機評測
  3. Unix和Linux桌面的背后:理解Xwindow的工作原理
責任編輯:yangsai 來源: imtx.me
相關推薦

2013-07-27 21:28:44

2013-06-27 11:21:17

2010-11-03 13:57:18

Windows Ser

2018-09-27 18:47:45

AIOpsDevOps

2020-09-27 17:27:58

邊緣計算云計算技術

2024-02-26 14:46:53

移動計算人工智能5G

2020-06-02 08:05:28

智能電表蜂窩物聯(lián)網(wǎng)NB-IoT

2018-09-11 08:00:00

DevOpsAIOps機器學習

2025-01-03 09:24:10

模型架構論文

2020-09-16 10:28:54

邊緣計算云計算數(shù)據(jù)中心

2016-01-26 11:58:12

2013-09-09 16:28:36

2011-01-27 09:52:43

StuxnetZeus軟件攻擊

2010-09-01 17:05:04

無線網(wǎng)絡

2015-01-22 16:16:01

思科IT模式

2016-11-24 08:29:37

Fedora LinuLinux下載

2018-09-25 07:00:50

2012-10-29 12:23:44

BYODIT

2022-07-06 11:38:40

人工智能AI

2013-07-27 21:41:14

APT攻擊下一代威脅
點贊
收藏

51CTO技術棧公眾號

欧美在线免费看| 欧美性大战久久久久久久蜜臀| 成人激情视频网| 欧美日韩中文字幕在线观看| 日韩精品久久久久久久软件91| 一区二区三区中文字幕| 国产青春久久久国产毛片| 一级成人黄色片| 日韩精品欧美激情一区二区| 欧美一级一区二区| 男人用嘴添女人下身免费视频| 欧洲成人av| 激情综合网av| 97久久精品视频| 三级电影在线看| 六九午夜精品视频| 亚洲一区二区三区国产| 色噜噜狠狠一区二区三区| 国产又粗又猛又爽又黄的视频一 | 欧美日韩天天操| 亚洲网站在线免费观看| 亚洲国产高清一区二区三区| 伊人青青综合网站| 中文字幕在线观看91| 666av成人影院在线观看| 亚洲女同一区二区| 欧美日韩精品免费观看视一区二区| 一本色道久久综合无码人妻| 亚洲国产免费| 精品国产一区二区三区在线观看| 亚洲色偷偷色噜噜狠狠99网| 人人精品久久| 日韩欧美国产成人| 国产精品免费看久久久无码| 神马久久精品| 高潮精品一区videoshd| 国产精品视频xxx| 国产无遮挡又黄又爽又色| 成人激情免费视频| 日韩大片免费观看视频播放| 三级av免费看| 国产精成人品2018| 欧美日韩国产影院| 亚洲色婷婷久久精品av蜜桃| 三级做a全过程在线观看| 国产激情精品久久久第一区二区| 国产精品久久97| 久久一区二区三区视频| 国产精品theporn| 欧美成人午夜激情在线| 国产精品综合激情| 精品久久综合| 亚洲欧美国产视频| 一区二区三区免费在线观看视频| 婷婷激情成人| 欧美日韩夫妻久久| 亚洲少妇久久久| 网友自拍亚洲| 色综合久久88色综合天天6 | 亚洲最大的免费| 久久国产乱子伦精品| 国产亚洲激情| 91国产一区在线| 五月婷婷激情网| 日韩午夜av在线| 97精品伊人久久久大香线蕉 | 久久夜色精品国产| 国产一区二区三区视频播放| 成人国产精品一级毛片视频| 在线观看国产精品91| 亚洲黄色小说视频| 奇米狠狠一区二区三区| 亚洲丝袜av一区| 国产精品第七页| 日本中文字幕在线一区| 日韩黄色高清视频| 右手影院亚洲欧美| 激情婷婷综合| 色先锋资源久久综合5566| 久久久久亚洲av无码a片| 黑丝美女一区二区| 色婷婷综合久久久久| 天天操夜夜操av| 牛夜精品久久久久久久99黑人| 欧美精品在线观看91| 久久久精品91| 国产欧美丝祙| 久久久久亚洲精品国产| 国产精品久久久久久久妇| 久久国产免费| 国产在线拍偷自揄拍精品| 99热这里精品| av欧美精品.com| 区一区二区三区中文字幕| 阿v免费在线观看| 一区在线观看免费| 国产xxxx振车| 日韩在线影院| 欧美一区二区高清| a级一a一级在线观看| 国产麻豆精品久久| 另类美女黄大片| 偷偷操不一样的久久| 丝袜a∨在线一区二区三区不卡| 国产精品美女网站| www夜片内射视频日韩精品成人| 99久久国产综合精品女不卡| 日韩欧美99| 18视频在线观看| 欧美日韩中文字幕在线视频| www.精品在线| 成人午夜网址| 中文字幕在线亚洲| 日操夜操天天操| 另类欧美日韩国产在线| 高清视频在线观看一区| 理论视频在线| 亚洲一区二区在线免费观看视频 | 91精品国产色综合久久久蜜香臀| 黄色免费看视频| 天天av综合| 88国产精品欧美一区二区三区| 超碰在线97观看| 岛国一区二区三区| 亚洲午夜在线观看| 电影网一区二区| 欧美mv和日韩mv国产网站| 我想看黄色大片| 亚洲一区亚洲| 成人精品网站在线观看| 精品电影在线| 五月天丁香久久| 午夜视频在线免费看| 成人vr资源| 国产成人精品网站| 天堂网在线资源| 亚洲一线二线三线视频| 911福利视频| 狠狠操综合网| 日韩男女性生活视频| 国产成人无码www免费视频播放| 国产精品国产a级| 91网址在线播放| 尤物tv在线精品| 久久久亚洲国产天美传媒修理工| 国产精品一区二区黑人巨大| 国产嫩草影院久久久久| 日韩黄色片视频| 日本在线视频一区二区三区| 久久亚洲欧美日韩精品专区| 亚洲天堂男人网| 久久综合五月天婷婷伊人| 欧美视频在线观看视频| 永久免费精品视频| 欧美疯狂性受xxxxx另类| 中文字幕一二三四| 国产欧美精品国产国产专区 | 亚洲深夜av| 黄色一区三区| 18video性欧美19sex高清| 精品盗摄一区二区三区| 国产精品第56页| 91在线一区二区三区| 妺妺窝人体色777777| 日韩三级久久| 性色av一区二区三区在线观看 | 欧美一级日韩一级| 色老板免费视频| 国产馆精品极品| 免费在线观看亚洲视频| 国产永久精品大片wwwapp| 国产精品爽爽爽| 91精品久久久久久粉嫩| 亚洲精品美女久久久| 日韩av免费播放| 亚洲欧美偷拍卡通变态| 国产精品九九视频| 日韩中文字幕区一区有砖一区| 亚洲欧美国产不卡| 亚洲三级av| 国产精国产精品| 91精选在线| 亚洲图片制服诱惑| 亚洲不卡免费视频| 色婷婷av一区二区三区gif| 日本 欧美 国产| 9l国产精品久久久久麻豆| 亚洲一区在线不卡| 亚洲天堂男人| 亚洲精品国产系列| 久久狠狠久久| 91精品在线国产| xxx欧美xxx| 欧美精品免费在线观看| 男人天堂网在线| 欧美成人女星排名| 成人免费一级片| 亚洲国产aⅴ天堂久久| 天堂av网手机版| 不卡在线观看av| 91精产国品一二三产区别沈先生| 亚洲美女色禁图| 97超碰人人爱| 精品国产一区二区三区小蝌蚪| 超碰97在线资源| 日本久久二区| 国产精品成人v| av福利在线导航| 最近2019好看的中文字幕免费 | 国产精品亚洲一区二区在线观看| 欧美亚洲在线观看| 女子免费在线观看视频www| 伊是香蕉大人久久| 全部免费毛片在线播放网站| 日韩免费一区二区三区在线播放| 国模私拍一区二区| 欧美视频第一页| 日本一区二区三区四区五区| 亚洲男人的天堂在线aⅴ视频| 亚洲黄色免费视频| 91在线视频在线| 在线观看国产免费视频 | 欧美特级黄色录像| 99精品久久99久久久久| 被黑人猛躁10次高潮视频| 蜜桃91丨九色丨蝌蚪91桃色| av动漫在线观看| 在线视频免费在线观看一区二区| 日本a级片在线播放| 图片区亚洲欧美小说区| 亚洲精品一区二区三| 欧美精品一区二区三区中文字幕| 久久精品欧美| 精品丝袜久久| 国产一区二区三区无遮挡| 日韩高清在线观看一区二区| 成人免费网视频| 99久久这里有精品| 成人综合国产精品| 国产成人久久精品一区二区三区| 成人福利在线视频| 亚洲欧美在线人成swag| 国产综合香蕉五月婷在线| 成人在线不卡| 国产专区欧美专区| 中文字幕日韩亚洲| 亚洲va欧美va国产综合久久| 激情综合婷婷| 国产美女99p| 欧美激情15p| 欧美日本韩国在线| 欧美手机视频| 一区二区视频在线播放| 国产精品99一区二区三| 国产资源第一页| 尹人成人综合网| 国内外成人激情视频| 老牛国产精品一区的观看方式| 久久精品一区二| 美女视频免费一区| 黄色a级三级三级三级| 国产白丝精品91爽爽久久| 国产精品久久久久久亚洲色| 91啦中文在线观看| 99精品欧美一区二区| 中文字幕一区二区三区蜜月 | 国产精品theporn| 国产精品333| 日韩精品福利网| 欧美一级视频在线| 不卡av在线免费观看| 四虎国产精品成人免费入口| 亚洲欧美一区二区久久| 99热在线观看免费精品| 欧美制服丝袜第一页| jizz中国少妇| 日韩国产欧美精品一区二区三区| av电影在线观看网址| 欧美日韩国产成人在线观看| 亚洲精品日产| 91精品国产综合久久久久久蜜臀| 亚洲一二av| 欧洲亚洲一区二区三区四区五区| 久久一本综合| 男女激情无遮挡| 国内精品伊人久久久久av影院| 国产一级免费片| 国产精品午夜久久| 日本在线视频免费观看| 欧美无人高清视频在线观看| 亚洲精品字幕在线| 色婷婷综合成人| 亚洲同志男男gay1069网站| 91免费的视频在线播放| 免费久久精品| 大荫蒂性生交片| 日本亚洲欧美天堂免费| 亚洲无人区码一码二码三码| 国产精品视频一二三| 亚洲一区二区91| 欧美福利视频导航| 国产在线小视频| 亚洲91精品在线观看| 国产高清视频一区二区| 日本10禁啪啪无遮挡免费一区二区 | 午夜av成人| 精品一区二区视频| 欧美+亚洲+精品+三区| 少妇一级淫免费放| 久久久亚洲高清| 国产乡下妇女做爰视频| 3atv一区二区三区| 在线视频二区| 国产精品第二页| 天海翼精品一区二区三区| 欧美人与动牲交xxxxbbbb| 久久成人综合网| 日本美女xxx| 91福利国产精品| 丝袜视频国产在线播放| 97视频免费观看| www.亚洲一二| 蜜桃视频一区二区在线观看| 久久99精品一区二区三区| 韩国三级hd中文字幕| 欧美日韩国产精品一区二区不卡中文 | 国产91在线播放九色| 色综合久久66| 视频一区二区三区在线看免费看| 午夜精品久久久久久久99黑人| 综合中文字幕| 国产xxxx振车| 成人成人成人在线视频| 久久这里只有精品国产| 欧美电影免费提供在线观看| 1区2区在线观看| 91精品久久香蕉国产线看观看| 一区二区中文| 老司机av网站| 亚洲一区二区三区免费视频| 亚洲精品成av人片天堂无码 | 亚洲人成在线观| 成人在线爆射| 亚洲精品国产精品国自产| 久久精品国产久精国产| 五月天婷婷丁香网| 欧美久久一二区| caoporm免费视频在线| 92国产精品视频| 狠狠久久婷婷| asian性开放少妇pics| 色综合久久久久久久| yourporn在线观看视频| 国产精品视频精品| 五月开心六月丁香综合色啪 | 91精品国产色综合久久不8| 久久精品电影一区二区| 精品国产亚洲日本| 成人免费看片'免费看| 99天天综合性| 日韩欧美国产另类| 精品国产一区久久久| 亚洲精品一区二区三区中文字幕| 欧美视频免费看欧美视频| 91视频国产资源| 中文字幕在线观看1| 久久av.com| 秋霞综合在线视频| 一区二区三区韩国| 一区二区三区四区激情| 亚洲 美腿 欧美 偷拍| 国产精品久久9| 国产精品久久| 成人免费无遮挡无码黄漫视频| 在线不卡一区二区| av免费在线视| 亚洲在线视频一区二区| 处破女av一区二区| 日本三级一区二区三区| 美日韩在线视频| 中文字幕中文字幕精品| 中文字幕亚洲影院| 精品久久久久人成| 免费在线看a| 国外成人免费视频| 精品一区二区三区免费观看| 国产无遮挡aaa片爽爽| 色老头一区二区三区在线观看| 一区视频网站| 91小视频网站| 精品久久久久久国产| 欧美精品日韩少妇| 欧美不卡在线一区二区三区| 紧缚奴在线一区二区三区| 99热只有这里有精品| 九九九久久国产免费| 欧美色婷婷久久99精品红桃| 无码成人精品区在线观看| 欧美日韩日本视频| 周于希免费高清在线观看|