《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于ARM LINUX的嵌入式GUI的研究和移植
基于ARM LINUX的嵌入式GUI的研究和移植
摘要: 隨著嵌入式系統的發展,用戶對嵌入式系統的要求越來越高,因此用于實現與用戶交流功能的嵌入式GUI成為嵌入式研究中的一個重點。該文首先介紹了什么是嵌入式系統和嵌入式系統中的GUI,并闡述了開發基于嵌入式Linux平臺的GUI系統的必要性。然后詳細的介紹了三種常見的嵌入式GUI系統(Microwindows、MiniGUI和QT)的設計結構和使用上的優缺點等,并列表進行了比較。最后,描述了每個系統基于ARMLinux平臺的移植,包括編譯環境的建立、編
關鍵詞: 軟件 ARM GUI 嵌入式
Abstract:
Key words :

引言

什么是嵌入式系統

嵌入式系統一般指以嵌入式微處理器為核心,有別于PC系統,有計算機的部分功能但又不稱之為計算機的設備或器材。它主要是以應用為目的,系統軟硬件于一體,通常要求具有代碼小、響應速度快、可靠性高、低功耗、集成度高等特點。嵌入式系統遍布于各個行業以及人們的日常生活當中,比如掌上PDA、移動計算設備、電視機頂盒、手機、汽車、數字相機、家庭自動化系統、安全系統、自動售貨機、工業自動化儀表與醫療儀器等。

什么是嵌入式系統中的GUI

隨著后PC時代的到來,嵌入式系統的性能有了大幅度的提高,應用范圍也越來越廣,當初的一些簡單的人機交互接口已經無法滿足人們的要求。而與此同時,在臺式PC機上圖形交互界面早已普及并成熟,于是在嵌入式系統中也逐漸出現了圖形用戶界面(GraphicUserInterface,GUI),特別是在一些消費類產品中。嵌入式系統中的GUI就是在嵌入式系統中為特定的硬件設備或環境而設計的圖形用戶界面系統。由于受到當前嵌入式系統本身特點的影響,并受其發展限制,所以嵌入式系統中的GUI應該有如下特點:

占用的存儲空間以及運行時占用資源少;運行速度以及響應速度快;可靠性高;便于移植和定制。

Linux有開放的源碼、高效穩定的內核、良好的開發環境以及支持多種硬件平臺等特點,而且由于Linux的可配置性和可模塊化,一個Linux內核經過配置和裁減可以只占用幾百K左右的存儲空間,使其在嵌入式系統中也得到廣泛應用。然而,在嵌入式系統中有嚴格的資源限制,臺式機Linux平臺下成熟的GUI無法直接移植到嵌入式設備上。因此,嵌入式系統中基于Linux的GUI愈發成為開發基于Linux的嵌入式系統所必須面對的問題。目前,隨著嵌入式行業分工的細化,出現了專門的公司致力開發Linux下的GUI并給其它公司提供授權,從而縮短了嵌入式系統的開發周期。本文就旨在于對這樣的幾種嵌入式GUI進行研究,列出表1進行比較,并介紹這幾種GUI在基于ARMLinux上的移植。

幾種比較成熟的嵌入式GUI的研究

Microwindows

Microwindows是由美國CenturySoftware公司開發的開放源碼的嵌入式GUI項目。它不需要其他圖形系統的支持,可以充分利用Linux提供的FrAMEbuffer機制來進行圖形顯示。同時在底層提供了對多種芯片的支持,并基本上用C語言實現,因此移植性很強。國內也有人參與了這個項目的開發,并編寫了GB2312等字符集的支持。

Microwindows是基于分層式設計的,它允許不同的層可以被重新設計以滿足系統實現的需要,目前總共分為三層。最底層是屏幕、鼠標或觸摸屏和鍵盤的驅動程序,用于實現系統的顯示功能以及滿足用戶特有的輸入需求。中間層實現了一個可移植的圖形引擎,以提供對畫線、填充、剪切和著色的支持。在最上層,則提供了多種的API給應用程序設計者。Microwindows支持兩種API:ECMAAPIW(類Win32API)和Nano-XAPIs。這些API對Win32和XWindow系統有很好的兼容性,使程序可以很容易地從其它系統上移植過來。其中比較完備的是Nano-XAPI。Nano-X設計成是一個客戶端/服務器的環境,在此模式下應用程序與一個客戶端的庫相連,而這個庫則通過一個UNIXsocket與Nano-X服務器相連。每個應用程序都通過UNIXsocket來傳遞各種參數,并由服務端來完成客戶端的各種請求。當為了滿足運行速度以及調試的需求時,還可以通過共享的內存空間來完成傳播數據。

由于Microwindows為了與XWindow的兼容,它采用了傳統的基于UNIXsocket的客戶端/服務器結構。此是,客戶端的畫圖、窗口建立等操作都是通過套接字與服務器通信。在這種情況下,系統就變得非常依賴于UNIXsocket,而UNIXsocket的傳遞都需要通過內核,這樣在一些對實時性要求比較高的系統里就不太有利。而且Microwindows基本上用C語言實現的,雖然增強了可移植性,但也同樣導致了系統的運行效率不高。同時Microwindows的開發工具FLNX也還不夠成熟,有待進一步提高。

MiniGUI

MiniGUI是我國國內自主開發、比較成熟的一個圖形用戶界面系統,面向基于Linux的實時嵌入式系統,使用現有成熟的圖形引擎(SV2GALib/LibGGI),采用類似WinCE的線程機制(目前MiniGUILite版本改用微客戶端/服務器模式來提供對多進程的支持),集成了多字體和多字符集,支持硬件加速能力,充分使用顯示內存。

從整體來看,MiniGUI也是屬于分層結構設計(見圖1)。在最底層,GAL和IAL提供了Linux控制臺和底層圖形接口的支持以及輸入設備比如鼠標、鍵盤等的驅動,PThread則是提供了內核級線程支持的函數庫;中間層MiniGUIKernel則包括了窗口系統的各個模塊,MiniGUI本身是運行在多線程模式下,它的各個模塊都是以單獨的線程運行,同時它也利用線程來實現多窗口;最上層,則是提供給各種應用程序使用的API函數。MiniGUI中利用線程之間的同步操作,實現了客戶線程和服務線程之間的微客戶端/服務器結構,因為它的客戶和服務器是同一進程的兩個不同線程。它的核心實現主要體現在消息隊列數據結構的使用上。

多線程有其一定的好處,但弱點則在于不同的線程共享了同一個地址空間,因此,客戶線程可能會破壞系統服務器線程的數據,導致系統健壯性不夠健全。雖然目前的MiniGUILite版本拋棄LinuxThread庫而改用微客戶端/服務器模式提供對多進程的支持,但是仍然存在著對多進程支持弱、圖形功能不完善、窗口剪切不完備等問題。

18.jpg

QT/Embedded和Qtopia

QT/Embedded是著名的QT庫開發商TrollTech開發的基于framebuffer、面向嵌入式系統的QT版本。它的特點主要有界面美觀、色彩配比好,使用與QT/Windows和QT/X11完全一致的API接口,許多基于QT的程序可以非常方便地移植到嵌入式系統;同時它具有豐富的模塊,用戶可以根據需要選擇QT/Embedded的特性集合。Qtopia是TrollTech專門為嵌入式Linux設備所定制終端用戶平臺,它包括了Qtopia庫和Qtopia的服務器及客戶端應用程序。

QT/Embedded和Qtopia的結構如圖2所示。QT/Embed2ded實現了對下層輸入設備的驅動和底層圖形接口以及各基類和API。Qtopia也是以客戶/服務器的方式,通過消息機制來管理各種應用程序。QT的資源相當豐富,基于QTAPI開發的應用程序相當多,像KDE這種應用范圍極廣的GUI也是使用QTAPI開發出來的;而且OPIE組織也開發了并改進了許多專門基于QT/Embedded上的Qtopia應用程序及函數庫。

不過QT/Embedded對于系統的資源要求非常高,需要在較大的存儲空間和運行空間上才可以運行;而且它是基于C++來實現的,而這種C++接口對于嵌入式系統中的某些應用來說就顯得比較臃腫;另外如若需要修改QT/Embedded并在商業產品中發布,則需要分別購買開發授權及運行時授權,所需費用太昂貴。

基于ARMLinux平臺的移植

編譯環境的建立

GUI的編譯通常都是在PC機上執行的,也就是說,編譯器本身能夠在PC機上執行,同時編譯源代碼生成的二進制文件必須能在目標機上執行,這類編譯器通常稱為交叉編譯器。對于ARM平臺,我們安裝了cross-arm-binutils-*.i386.rpm、cross-arm-gcc-*.i386.rpm、cross-arm-glibc-*.i386.rpm這三個包。這些包都可以從網上免費獲取,“*”通常代表版本號。arm-binutils這個包一般包含了一些針對ARM平臺的二進制工具,比如arm-STrip、arm-ar等命令;arm-glibc這個包包含的是標準C的函數庫的ARM的版本以及對應的頭文件;arm-gcc中包含的則是生成ARM平臺代碼的x86上的交叉編譯器。執行rpm命令將這些包安裝到PC機上,若不在系統默認搜索目錄下,比如安裝在/opt/cross目錄下,則必須將/opt/cross/bin目錄加到系統的PATH環境變量中,這樣在每次編譯時系統才能找得到編譯器。另外需要注意的是,編譯時所用的函數庫版本要與目標版上運行時所用的函數庫版本一致。經過上述步驟,就已經建立了交叉編譯環境,接下來的就是選擇或修改GUI的編譯選項,從而生成所需要的GUI系統。

Microwindows的移植

Microwindows的定制和編譯主要是通過修改它源程序根目錄下的cONfig這個文件中的選項來實現,而在configs這個目錄下已經有一些針對不同平臺的config文件,若目標平臺與之定義的相符,可直接將其拷貝到根目錄下覆蓋掉原有的config文件,然后輸入命令make來開始編譯。另外還可以執行根目錄下的xconfigure文件,它提供了一個可視化的窗口來方便用戶進行編譯選項配置。下面介紹一下其中主要的一些選項:

目標平臺選項。ARCH表示目標機的平臺,比如ARCH=LINUX-ARM,BIGENDIAN表示目標平臺是否為大數端;

圖像支持選項。HAVE-BMP-SUPPORT=Y、HAVEJPEG-SUPPORT=Y兩項表示對BMP和JPEG格式圖像的支持(還有其它格式選項)。設置JPEG圖像選項時必須給出外部jpeg解壓縮庫的位置,例如LIBJPEG=/usr/lib/libjpeg.a;

字體支持選項。HAVE-FREETYPE-SUPPORT=Y、HAVE-T1LIB-SUPPORT=Y表示支持TrueType和AdobeType1字體,這些庫也必須預先編譯并在配置文件中指定其位置,Microwindows的網站上提供了許多字庫函數的下載。另外,Microwindows還提供了中文BIG5、GB2312以及日文和韓文的支持;

輸出顯示選項。FRAMEBUFFER=Y表示使用Linux上的framebuffer來實現顯示,當然Microwindows也支持X11顯示;

輸入設備選項。Microwindows提供了一系列的鼠標(包括觸摸屏)和鍵盤的支持,可以根據不同的系統選擇適當的選項。

配置完成后,執行make命令開始編譯。編譯完成后,將生成的庫以及可執行文件打包下載到目標板上。如果庫文件沒有放在目標系統的默認搜索庫的路徑中,那么還需將此目錄加到LD-LIBRARY-PATH環境變量中,然后即可以運行nano-X服務器及各應用程序。

MiniGUI的移植

下載MiniGUI的庫文件源代碼包libminigui-3.tar.gz和資源文件包minigui-res-3.tar.gz以及演示程序包mde-3.tar.gz后,將它們分別解壓到各自的目錄下。首先介紹庫文件的編譯,它的編譯配置主要通過執行源程序根目錄下configure這個文件,并給它傳遞相關的參數來實現。比如:CC=arm-linux-gcc./configure———host=i386-linux———target=arm-linux。其中,CC參數表示所使用的編譯器名,host表示編譯環境所在的主機類型,target表示編譯生成后目標系統的主機類型,當前默認編譯生成的是MiniGUIThread版本,如果要生成MiniGUILite版本需再加上參數———enable-lite,更多參數可以通過執行。/configure-help來查詢。在執行configure之前,根據硬件特性可以修改根目錄下的etc目錄下的Minigui-3d.cfg和Minigui-flat.cfg兩個文件中的選項。比如,如果目標系統的framebuffer大小是320X240,每像素占12bits,則將上述兩個文件中[fbcon]組中的defaultmode的值就應設置為320X240-12bpp。配置完成以后執行make命令開始編譯,編譯結束后執行makeinstall命令,在/usr/local/lib下面會生成交叉編譯出來的動態庫和靜態庫文件。其次,資源文件的安裝比較簡單,解壓以后在其根目錄下有一個名叫config.linux的文件,修改其中的TOPDIR一項,這樣執行makeinstall安裝命令以后,所有資源文件會被安裝到TOPDIR所定義的目錄下的usr/local/lib/minigui下。最后演示程序包的編譯與庫文件編譯類似,也是執行其根目錄下的configure文件并傳遞相關參數,然后執行make命令來編譯。若編譯庫文件時選擇———enable-lite參數,由于MiniGUI-Lite采用的是微客戶端/服務器架構,要運行應用程序必須先啟動服務器程序mginit,然后才能運行其它的應用程序;若編譯庫文件時沒有添———enable-lite參數,則mginit目錄根本不會編譯進去,演示程序可以直接執行。

17.jpg

QT的移植

QT的編譯步驟比較復雜。Qtopia的根目錄下有README.html文件介紹了PC機上編譯的步驟及參數。因此,本文主要描述在編譯成以ARM為目標平臺時有所區別的幾個步驟及參數。下載Qt/Embedded、Qt/X11和Qtopia三個包并分別解壓。這三者的編譯配置都是通過執行相應根目錄下的configure文件并傳遞相關參數來實現,另外在Qtopia目錄下src/qt/qconfig-qpe.h文件中要定義一些相關的宏,這樣在編譯時編譯器會根據所定義的宏選擇需要的代碼來進行編譯。比如,目標系統所使用的觸摸屏實現方式與IPAQ類似,若要使QT將所支持的代碼編譯進來,則需在qt2config-qpe.h中定義宏QT-QWS-IPAQ。首先,我們在執行configure對QT/Embedded進行配置時,傳遞了三個參數-xplatformlinux-arm-g++、-qconfigqpe和-no-qvfb。其中第一個參數表示,編譯后二進制文件執行時所在的目標平臺類型;第二個參數告訴編譯器配置頭文件是在src/tools/目錄下叫做qconfig-qpe.h,通常這個文件就是Qtopia目錄下src/qt/qconfig-qpe.h的一個拷貝;第三個參數表示在編譯時不需要編譯qvfb工具,當目標系統不支持Framebuffer時,在執行啟動Qtopia之前先通過執行qvfb來產生一個虛擬的Framebuffer,這時再啟動Qtopia相應的內容就會顯示在qvfb上。在對Qtopia進行配置時,只傳遞了一個參數:-platformarm-linux-g++,表示目標平臺是ARM平臺。當然在上述配置過程中還可以使用其它一些參數,這些參數可以通過傳遞-help參數給configure來查詢。在配置并編譯完之后,將Qtopia目錄下的運行時相關目錄全部打包并下載到目標系統上,設置了相應的環境變量(比如QPEDIR、QTDIR和LD-LIBRARY-PATH等)后,就可以執行。當然目標系統上的特殊硬件的支持需要通過修改QT/Embedded下的對應源程序來完成。

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          亚洲精品中文字| 激情综合网址| 国模叶桐国产精品一区| 亚洲福利视频一区二区| 免费不卡在线观看| 欧美精品v日韩精品v韩国精品v| 国产色爱av资源综合区| 欧美xart系列在线观看| 久久亚洲二区| 国产精品永久免费| 午夜天堂精品久久久久| 亚洲高清网站| 久久综合一区二区三区| 伊人激情综合| 欧美精品国产精品| 欧美成人首页| 国产亚洲午夜高清国产拍精品| 在线不卡视频| 国产老女人精品毛片久久| 欧美激情导航| 亚洲一区观看| 亚洲成色www8888| 性欧美办公室18xxxxhd| 一色屋精品视频在线观看网站| 国产专区综合网| 欧美三级资源在线| 国产精品永久免费在线| 欧美一区二区久久久| 99国内精品| 欧美激情国产日韩| 国产一区二区三区视频在线观看| 亚洲黄色影片| 欧美另类99xxxxx| 亚洲精品一区二区三区樱花| 欧美日韩美女| 亚洲国产天堂久久综合| 亚洲欧洲综合另类| 99精品福利视频| 欧美日韩一区二区精品| 一本色道久久综合亚洲精品小说| 午夜免费在线观看精品视频| 欧美三级电影大全| 羞羞答答国产精品www一本| 欧美一区二区精品在线| 亚洲欧美日本视频在线观看| 一区二区欧美激情| 久久精品国产成人| 亚洲国产婷婷综合在线精品| 久久免费国产| 久久精品色图| 在线精品高清中文字幕| 国产日产高清欧美一区二区三区| 亚洲福利国产精品| 久久久激情视频| 国产精品国产三级国产普通话99| 久久影视精品| 在线观看视频免费一区二区三区| 国产日韩1区| 欧美国产一区二区三区激情无套| 欧美视频在线观看| 欧美一区二区观看视频| 亚洲欧洲美洲综合色网| 国产精品成人在线观看| 午夜精彩视频在线观看不卡| 久久不射2019中文字幕| 欧美fxxxxxx另类| 欧美午夜久久| 亚洲精品乱码久久久久久日本蜜臀| 亚洲乱码国产乱码精品精天堂| 国产精品色婷婷| 日韩视频免费观看| 制服丝袜激情欧洲亚洲| 亚洲欧美日韩国产综合精品二区| 亚洲二区在线视频| 国产亚洲欧美另类一区二区三区| 亚洲午夜伦理| 欧美视频1区| 亚洲欧洲日产国产网站| 亚洲国产福利在线| 国产亚洲欧美中文| 狠狠久久亚洲欧美专区| 亚洲在线视频免费观看| 夜夜爽av福利精品导航| 一区二区三区四区五区精品视频| 久久国产精品99国产| 亚洲美女少妇无套啪啪呻吟| 欧美日韩国产在线播放网站| 亚洲激情成人在线| 欧美性感一类影片在线播放| 亚洲一区二区精品在线观看| 午夜老司机精品| 亚洲精品日韩精品| av成人福利| 老司机一区二区| 99国产精品国产精品毛片| 欧美在线视频观看| 国产精品美女www爽爽爽| 99精品视频免费观看| 亚洲日本乱码在线观看| 亚洲美女在线一区| 亚洲精品在线免费观看视频| 国产欧美一区二区三区在线老狼| 欧美视频在线一区二区三区| 怡红院精品视频| 91久久香蕉国产日韩欧美9色| 亚洲国产日韩欧美在线图片| 国产精品呻吟| 在线免费一区三区| 亚洲美女av电影| 欧美激情第8页| 免费欧美日韩| 在线视频国内自拍亚洲视频| 国产精品入口66mio| 日韩亚洲综合在线| 亚洲另类视频| 亚洲自拍偷拍一区| 欧美亚洲午夜视频在线观看| 国产乱人伦精品一区二区| 国产美女精品一区二区三区| 国产精品影片在线观看| 韩国一区二区在线观看| 久久丁香综合五月国产三级网站| 国产精品久久久一区二区三区| 亚洲字幕一区二区| 性久久久久久久久| 亚洲网站在线观看| 欧美在线看片a免费观看| 久久久久久久久久久成人| 国产一区二区在线观看免费| 国内激情久久| 亚洲男人天堂2024| 欧美美女操人视频| 欧美一区二区大片| 在线看片欧美| 国产综合欧美在线看| 久久国产主播精品| 一区二区日本视频| 欧美日一区二区三区在线观看国产免| 国产精品揄拍一区二区| 久久人人97超碰人人澡爱香蕉| 影音国产精品| 国产精品magnet| 久久精品色图| 最新中文字幕一区二区三区| 亚洲一区二区三区中文字幕在线| 久热这里只精品99re8久| 亚洲精品一区二区三| 欧美mv日韩mv国产网站| 国产美女搞久久| 亚洲国产精品一区二区第一页| 久久精品91久久久久久再现| 国产精品一区亚洲| 国产精品日韩欧美一区二区| 亚洲天堂av高清| 9l视频自拍蝌蚪9l视频成人| 国产精品美女久久| 久久综合狠狠| 狠狠久久亚洲欧美| 欧美日韩亚洲一区二区三区在线观看| 国产精品免费网站在线观看| 国产精品麻豆成人av电影艾秋| 欧美怡红院视频| 亚洲午夜电影网| 在线激情影院一区| 国产欧美日本一区二区三区| 亚洲一区二区视频| 在线亚洲精品福利网址导航| 亚洲一二三四久久| 一区二区激情小说| 欧美成人午夜影院| 精久久久久久| 国产精品一区二区视频| 国产精品免费视频观看| 久久久久99| 日韩视频免费观看| 欧美激情精品久久久六区热门| 久久夜色精品国产| 欧美激情一区二区三区高清视频| 精品999日本| 亚洲国产成人av好男人在线观看| 国产一区再线| 欧美日韩国产高清视频| 亚洲精品女人| 国产欧美日韩另类一区| 一区二区亚洲| 亚洲图片欧洲图片日韩av| 亚洲人精品午夜在线观看| 亚洲欧美日韩电影| 欧美日韩亚洲91| 精品不卡一区二区三区| 欧美精品xxxxbbbb| 制服丝袜亚洲播放| 久久久久久网站| 欧美日韩精品在线| 羞羞答答国产精品www一本| 欧美二区不卡| 午夜精品久久久久久久| 国内精品久久久久影院优| 国产精品日产欧美久久久久| 午夜在线视频一区二区区别| 免费成人高清| 欧美视频一区在线观看| 日韩亚洲在线观看| 亚洲日韩第九十九页| 99精品视频免费全部在线| 久久综合给合久久狠狠狠97色69| 国产精品久久久久91| 国产精品久久久久久久久久尿| 在线视频免费在线观看一区二区| 蜜桃av一区| 韩日午夜在线资源一区二区| 欧美www视频| 久久精品国产亚洲高清剧情介绍| 午夜精品久久久久影视| 一区二区三区我不卡| 亚洲国产99| 亚洲一级电影| 久久精品人人做人人爽电影蜜月| 农村妇女精品| 欧美午夜国产| 国产又爽又黄的激情精品视频| 久久精品一区二区三区四区| 久久九九热re6这里有精品| 国产精品一区二区久久精品| 在线观看日韩专区| 国产精品青草综合久久久久99| 欧美一区二区三区免费观看| 国产日韩在线视频| 蜜桃精品一区二区三区| 韩日精品在线| 欧美一级久久| 久久在精品线影院精品国产| 老司机精品视频一区二区三区| 欧美性开放视频| 在线免费观看日韩欧美| 国产精品a久久久久| 欧美精品日韩一本| 欧美日韩久久| 亚洲免费中文字幕| 在线观看一区欧美| 香蕉尹人综合在线观看| 国产精品成人av性教育| 亚洲美女黄网| 亚洲欧洲日韩女同| 欧美aa在线视频| 激情久久久久久久久久久久久久久久| 国产精品尤物福利片在线观看| 国产主播一区二区三区四区| 亚洲清纯自拍| 日韩午夜av电影| 久久激五月天综合精品| 国产精品久久久爽爽爽麻豆色哟哟| 国产精品视频一区二区三区| 99这里只有精品| 久久影视三级福利片| 久久成人精品视频| 欧美精品色综合| 亚洲精品一区二区三区蜜桃久| 日韩天堂在线观看| 亚洲性感美女99在线| 性一交一乱一区二区洋洋av| 久久久国产一区二区三区| 欧美国产日韩二区| 欧美一区国产在线| 亚洲色在线视频| 欧美激情一区二区久久久| 一道本一区二区| 一区二区三区**美女毛片| 午夜视频在线观看一区二区| 亚洲乱码视频| 这里只有精品视频| 亚洲高清在线观看一区| 欧美日韩一区二区高清| 亚洲伊人色欲综合网| 国内精品**久久毛片app| 亚洲一区二区精品视频| 欧美黄网免费在线观看| 亚洲精品影视| 欧美日韩视频一区二区三区| 国产精品99免视看9| 亚洲肉体裸体xxxx137| 国产亚洲人成a一在线v站| 日韩网站在线看片你懂的| 欧美黄色成人网| 亚洲第一中文字幕在线观看| 韩国久久久久| 欧美一区二区视频97| 在线国产欧美| 日韩亚洲欧美综合| 美乳少妇欧美精品| 国产欧美在线视频| 欧美日韩妖精视频| 国产日韩欧美自拍| 欧美激情视频给我| 午夜视频在线观看一区| 久久精品人人做人人爽电影蜜月| 男人的天堂亚洲| 亚洲国产精品ⅴa在线观看| 国产精品外国| 欧美三区在线视频| 欧美日韩一区视频| 性视频1819p久久| 欧美日韩在线观看一区二区三区| 尤物在线精品| 亚洲午夜高清视频| 久久国产加勒比精品无码| 国产精品久久久久久久久婷婷| 激情丁香综合| 国产精品试看| 永久免费毛片在线播放不卡| 国产精品无人区| 一区二区三区日韩| 欧美日韩亚洲一区在线观看| 国产精品久久毛片a| 一区二区三区日韩精品视频| 国产精品视频一区二区高潮| 国产精品福利在线观看网址| 国产精品乱码妇女bbbb| 久久婷婷成人综合色| 欧美一区二区三区免费看| 中文亚洲欧美| 欧美激情第3页| 亚洲日本在线观看| 国产精品成人一区| 狠狠色丁香婷综合久久| 久久人人爽爽爽人久久久| 亚洲区欧美区| 亚洲精品一区二区三区不|