久久精品在这里_成人99免费视频_国产激情视频一区二区在线观看_国产伦精品一区二区三区免费 _亚洲午夜免费福利视频_色狠狠色狠狠综合_av在线综合网_91毛片在线观看_欧美视频一区二区在线观看_极品美女销魂一区二区三区免费_国产亚洲欧美激情_在线免费观看不卡av_日韩不卡一区二区三区_91精品国产麻豆国产自产在线_亚洲国产精品一区二区久久恐怖片_a4yy欧美一区二区三区


曙海教育集團(tuán)論壇Linux專區(qū)Linux技術(shù)討論區(qū) → 嵌入式實(shí)時Linux的技術(shù)


  共有9396人關(guān)注過本帖樹形打印

主題:嵌入式實(shí)時Linux的技術(shù)

美女呀,離線,留言給我吧!
wangxinxin
  1樓 個性首頁 | 博客 | 信息 | 搜索 | 郵箱 | 主頁 | UC


加好友 發(fā)短信
等級:青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊:2010-11-12 11:08:23
嵌入式實(shí)時Linux的技術(shù)  發(fā)帖心情 Post By:2010-11-15 14:10:46

PC硬件使用的增加是近年來高端嵌入式系統(tǒng)的一個最重要的發(fā)展。由于這個趨勢,嵌入式系統(tǒng)的硬件成本大大地下降了,然而應(yīng)用于嵌入式PC平臺的軟件系統(tǒng)卻沒有太多的選擇。
目前嵌入式操作系統(tǒng)主要有Palm OS,WindowsCE,EPOC,LinuxCE,QNX.ECOS,LYNX等,但這些系統(tǒng)一般都價格昂貴、不具有良好的可移植性。由于linux具有適應(yīng)于多種CPU和多種硬件平臺、性能穩(wěn)定、裁剪性能好,開發(fā)和使用都很容易等特點(diǎn),越來越多的人傾向于將Linux嵌入到移動計(jì)算平臺、信息家電、媒體手機(jī)及其它產(chǎn)品中去。這同時也對Linux的實(shí)時性提出了更高的要求。

我們參加開發(fā)的上海數(shù)字技術(shù)中心的電子警察系統(tǒng)就是這樣一個基于PC平臺的嵌入式系統(tǒng)。它的主要功能是安裝在十字路口上監(jiān)視闖紅燈的汽車,錄制這些鏡頭,并適時通過網(wǎng)絡(luò)傳回總監(jiān)控中心。該系統(tǒng)原來采用Vxworks作為運(yùn)作平臺,然而由于Vxworks的昂貴,且只能安裝一臺機(jī)器,因此將Linux改制成嵌入式的、具有一定實(shí)時性的系統(tǒng)平臺。
1 硬件需求

考慮到實(shí)際的系統(tǒng)功能和系統(tǒng)開發(fā)的難度,我們決定選擇X86體系作為平臺,底板采PCM-5864/L板,CPU選擇Intel的P55C系列,同時它也支持PC104接口。I/O方面,PCM-5864/L支持EIDE、FDD、Keyboard、Mouse、RS-232、USB等接口,同時也集成了10Mbps/l00Mbps網(wǎng)卡。另外PCM-5864/L還集成了顯卡,并提供36位TTL的LCD接口、LVDS接口和Video-in/TV-out接口。由于電子磁盤體積小、抗震性能也較好的特點(diǎn),我們選用M-Systems公司的DiskOnChip2000作為存儲設(shè)備,這樣比較適合該系統(tǒng)戶外作業(yè)的特性。Doc2000還提供了安裝的工具包、Linux下的驅(qū)動程序和對不同版本Linux內(nèi)核的Patch。安裝時只需對Linux內(nèi)核和Lilo進(jìn)行相應(yīng)修改即可。這樣的硬件選擇使系統(tǒng)開發(fā)的難度大大降低了。
2 嵌入Linux主要解決的幾個問題

由于采用X86體系作為平臺,大大降低了嵌入化Linux的難度,主要要考慮的問題可分為以下幾個方面:
2.1 非虛擬內(nèi)存

Linux采用虛擬內(nèi)存技術(shù),當(dāng)數(shù)據(jù)溢出內(nèi)存時,可以將其交換到磁盤交換空間巾去,這對程序員來說是不可見的。然而,普通的嵌入式系統(tǒng)不需要這種強(qiáng)大的功能。實(shí)際上,可能不希望它在實(shí)時的關(guān)鍵系統(tǒng)里,因?yàn)樗鼤䦷頍o法控制的時問因素。因此,考慮將虛擬內(nèi)存的功能去掉。然而,清除Linux的虛擬內(nèi)存代碼非常費(fèi)事,我們采用一種迂回的方法,即將交換空間的大小設(shè)置為零。這樣,如果你寫的程序比實(shí)際的內(nèi)存大,系統(tǒng)就會當(dāng)作你的運(yùn)行用盡了交換空間來處理;這個程序?qū)⒉粫\(yùn)行,或者malloc將會失靈。這只是一種臨時的解決方案,系統(tǒng)中存在許多冗余未清除的代碼,如果進(jìn)一步改進(jìn)可以縮小系統(tǒng)體積。
2.2 處理文件系統(tǒng)

許多嵌入式系統(tǒng)沒有磁盤或者文件系統(tǒng),Linux不需要它們也能運(yùn)行,這樣可以在系統(tǒng)啟動時就將操作系統(tǒng)和預(yù)先編好的應(yīng)用程序全都加載到內(nèi)存中去。然而.考慮到以后的擴(kuò)展,我們分析了Linux當(dāng)前的文件系統(tǒng),將與系統(tǒng)和程序運(yùn)行相關(guān)的文件析取出來,移植到Doc上面.這樣就能為應(yīng)用程序的開發(fā)人員提供更方便的接口。
2.3 設(shè)置啟動(Lilo和BIOS)

當(dāng)PC系統(tǒng)啟動時,由BIOS執(zhí)行了一些低水平的CPU初始化和其它硬件的配置,然后辨認(rèn)哪個磁盤里有操作系統(tǒng),把操作系統(tǒng)復(fù)制到RAM并且轉(zhuǎn)向它。在PC上運(yùn)行的Linux依靠PC的BIOS來提供這些配置和OS加戟功能。由于選擇了X86系列作為平臺,同樣可以通過設(shè)置BIOS來設(shè)定由Doc啟動。我們將內(nèi)核安裝在Doc上。同時修改目錄/etc下的lilo.config文件,使Lilo記錄內(nèi)核代碼在存儲設(shè)備上的位置,然后將Lilo安裝在Doc上。這樣當(dāng)系統(tǒng)啟動時.BIOS指定Doc為啟動設(shè)備,這時Lilo被執(zhí)行。它指出Linux內(nèi)核的位置,加載內(nèi)核。
2.4 設(shè)備驅(qū)動程序的編寫

由于采用通用PC平臺,有許多驅(qū)動程序都不需要自己再編寫了。系統(tǒng)中,唯一需要編寫驅(qū)動程序的設(shè)備是上海數(shù)字中心的數(shù)據(jù)采集卡.該卡采用的是Bt848芯片。Bt848是一塊很常用的芯片.許多驅(qū)動程序都非常相近,因此編寫它的驅(qū)動程序有很好的例子可以參考,相應(yīng)的,編寫應(yīng)用程序只需調(diào)用驅(qū)動程序提供的接口即可,如同操作文件一樣。
3 Linux的實(shí)時性分析

以上簡要介紹了實(shí)現(xiàn)Linux的嵌入化過程,在嵌入化Linux的同時,還考慮提高它的實(shí)時性。于是著手分析Linux的實(shí)時性能和存在的不足。

概括來講,影響操作系統(tǒng)實(shí)時性能的主要有3個方面:
(1)外部中斷管理

我們知道,外部中斷發(fā)生時,操作系統(tǒng)調(diào)用中斷處理程序.進(jìn)入核心態(tài)。為了保證系統(tǒng)執(zhí)行的正確性,要求內(nèi)核狀態(tài)不重入,也即保證這部分關(guān)鍵代碼執(zhí)行結(jié)束之前不被打斷。因此,這時進(jìn)入關(guān)中模式,這是外部中斷管理中影響Linux性能的一個關(guān)鍵的地方。在這段時間內(nèi),操作系統(tǒng)負(fù)責(zé)將中斷發(fā)送到相應(yīng)的設(shè)備驅(qū)動程序去處理,系統(tǒng)不能進(jìn)行其它任何工作,為了減少這個過程損耗的時間,Linux內(nèi)核利用底半處理過程(bottom-half-handler)幫助實(shí)現(xiàn)中斷的快速處理。在Linux設(shè)備驅(qū)動程序中,往往將最關(guān)鍵最迅速的部分處理完成之后,將剩余部分任務(wù)放置到隊(duì)列中。當(dāng)中斷響應(yīng)完成后.再執(zhí)行剩余部分的任務(wù)。在Linux中,主要設(shè)置了以下幾個數(shù)據(jù)結(jié)構(gòu)來標(biāo)志未完成的任務(wù)。
enum{
TIMER_BH=0,CONSOLE_BH,TQUEUE_BH,DIGI_BH,SERIAL_BH,RISCOM8_BH,SPECIALIX_BH,
ESP_BH,NET_BH,SCSI_BH,IMMEDIATE_BH,KEYBOARD_BH,CYCLADES_BH,CM206_BH,
JS_BH,MACSERIAL_BHISICOM_BH
};
上面每一項(xiàng)標(biāo)識未完成任務(wù)的隊(duì)列類型,不同隊(duì)列的任務(wù)輕重緩急不同。
extern unsigned long bh_active;
extern unsigned long bh_mask;
extern void(*bh_base[32])(void);
bh_base代表的指針數(shù)組中可包含32個不同的底半處理過程。bh_mask和札bh_active的數(shù)據(jù)位分別代表對應(yīng)的底半處理過程是否安裝和激活。如果bh_mask的第N位為1.則說明bh_base數(shù)組的第N個元素包含某個底半處理過程的地址;如果bh_active的第N位為1.則說明必須由調(diào)度程序在適當(dāng)?shù)臅r候調(diào)用第N個底半處理過程。這些數(shù)據(jù)結(jié)構(gòu)的設(shè)置一般是在外部設(shè)備初始化和中斷處理函數(shù)運(yùn)行時進(jìn)行的。如:在serialc中進(jìn)行serial設(shè)備的初始化,它調(diào)用語句init_bh(SERIAL_BH,do_serial_bh);來設(shè)置bh_base[]數(shù)組中相應(yīng)于SERIAL_BH的那一項(xiàng)。又如:在serial設(shè)備的處理程序中通過語句queue_task(&info->tqueue,&tq_serial);將不是很緊急的任務(wù)放入tq_serial隊(duì)列中,等中斷處理函數(shù)結(jié)束,由bh_base中注冊的底半處理程序處理隊(duì)列中的任務(wù)。

中斷管理的第二個關(guān)鍵部分即是系統(tǒng)是否允許中斷嵌套的能力,也就是說,當(dāng)響應(yīng)一個中斷時,是否允許其它更高優(yōu)先級的中斷打斷,等更高優(yōu)先級的中斷處理完畢,是否還能恢復(fù)原來中斷處理的現(xiàn)場。通過這項(xiàng)功能,系統(tǒng)設(shè)計(jì)者可以指示外部中斷的優(yōu)先級,從而確保高優(yōu)先級的任務(wù)能及時處理。Linux允許中斷嵌套,它是利用外部中斷管理器來設(shè)置中斷的優(yōu)先級的。在Linux的中斷處理程序的啟動過程中,它一般調(diào)用語句mask_and_ack_8259A(irq);來設(shè)置8259中的int_mask寄存器.使優(yōu)先級比此中斷低的中斷不能發(fā)生。在中斷處理程序離開時,調(diào)用enable_8259A_irq(irq)來改回8259中int_mask寄存器原來的值。因此,intr類中斷的優(yōu)先級由硬件8259來決定.

由此可見,Linux的中斷管理部分具有高效的特點(diǎn),已經(jīng)可以滿足許多軟實(shí)時任務(wù)的要求。
(2)進(jìn)程搶先調(diào)度

在許多控制系統(tǒng)中,實(shí)時控制軟件是非常簡單的,可以直接寫入中斷處理程序中與一個特定的中斷聯(lián)系起來。還有一些就不那么簡單了,必須開啟專門的用戶進(jìn)程為它服務(wù)。

這時當(dāng)這個高優(yōu)先級的進(jìn)程提交時,如有其它進(jìn)程正在運(yùn)行,它就必須打斷正在運(yùn)行的進(jìn)程。若正在運(yùn)行的進(jìn)程運(yùn)行在用戶態(tài),系統(tǒng)一般允許它被打斷且執(zhí)行其它優(yōu)先權(quán)高的進(jìn)程,若正在運(yùn)行的進(jìn)程運(yùn)行在系統(tǒng)態(tài),則此時是否允許被打斷決定了系統(tǒng)是搶先式的還是非搶先式的。

Linux就是一個非搶先式的操作系統(tǒng),在用戶執(zhí)行系統(tǒng)調(diào)用時,不允許其它進(jìn)程的調(diào)度,這樣就影響了系統(tǒng)的響應(yīng)度。一個真正的搶先式的操作系統(tǒng)允許正在系統(tǒng)狀態(tài)下的當(dāng)前進(jìn)程被打斷,然后進(jìn)程切換回來時還能繼續(xù)從剛才的執(zhí)行點(diǎn)繼續(xù)下去。但某些關(guān)鍵部分的代碼段。系統(tǒng)必須保證其原子性,并防止重入。通常有如下幾種方法:
在關(guān)鍵代碼斷前關(guān)閉中斷,等其執(zhí)行完畢之后再將中斷打開; 設(shè)計(jì)一個信號量.在關(guān)鍵代碼段之前加鎖,在其后解鎖;
在系統(tǒng)代碼中保證安全的地方加入切換進(jìn)程的代碼switch(),防止該進(jìn)程長久占用CPU,允許調(diào)度其它進(jìn)程; 在關(guān)鍵代碼段加入一個switchaccept標(biāo)志,開始該代碼段時。將此標(biāo)志置為否.離開時再置回原來的值.這樣在執(zhí)行該段代碼時,即使進(jìn)程調(diào)度器被激活,它也會先檢查此標(biāo)志。若為否,則返回,并不進(jìn)行進(jìn)程切換。

(3)進(jìn)程調(diào)度策略

第三個影響系統(tǒng)響應(yīng)速度的關(guān)鍵部分就是進(jìn)程調(diào)度的策略。對于一個實(shí)時性能強(qiáng)的操作系統(tǒng)來說,系統(tǒng)必須規(guī)定不同進(jìn)程的優(yōu)先級,并把優(yōu)先級作為唯一的進(jìn)程選擇的標(biāo)準(zhǔn)。Linux的后期版本參照Posixl.b標(biāo)準(zhǔn),在某些方面已經(jīng)具備了一些實(shí)時操作系統(tǒng)的特性。Linux有兩種類型的進(jìn)程:一般進(jìn)程和實(shí)時進(jìn)程,它可以通過sched_setscheduler系統(tǒng)調(diào)用設(shè)置實(shí)時進(jìn)程。實(shí)時進(jìn)程比所有一般進(jìn)程的優(yōu)先級高,Linux設(shè)置實(shí)對進(jìn)程的權(quán)重為它的counter值加1000;設(shè)置一般進(jìn)程的權(quán)重為counter。因此,實(shí)時進(jìn)程總會被認(rèn)為是最值得運(yùn)行的進(jìn)程。

然而,Linux核心的設(shè)計(jì)主要集中在應(yīng)用程序的吞吐量上。追求吞吐量的必然結(jié)果,就是Linux調(diào)度器運(yùn)用一種"公平共享"的策略保證所有的進(jìn)程得到平均的CPU資源。而且,Linux的進(jìn)程調(diào)度器只是簡單地將標(biāo)有實(shí)時標(biāo)志的進(jìn)程的權(quán)重加1000,至于實(shí)時進(jìn)程間的輕重緩急還沒有周密的完整的設(shè)計(jì)。因此,Linux的進(jìn)程調(diào)度器還遠(yuǎn)不能稱作是一個真正的實(shí)時進(jìn)程凋度器。
4 擬采用的策略

根據(jù)以上分析的特點(diǎn),我們決定主要從以下4個方面來修改Linux的核心代碼。

(1)在內(nèi)核中插入搶先點(diǎn) 由于Linux是一個非搶先式的操作系統(tǒng)。因此當(dāng)一個實(shí)時進(jìn)程提交時,很可能因?yàn)楫?dāng)前的進(jìn)程正處于核心態(tài)不能被打斷而不能得到及時的處理。因此有必要在Linux內(nèi)核中插入搶先點(diǎn),使實(shí)時進(jìn)程得到處理。根據(jù)上一節(jié)分析的特點(diǎn),太體有4種方法可供選擇。權(quán)衡這4種方法的利弊,我們決定采用第4種方法,即在關(guān)鍵代碼段加入一個switchaccept標(biāo)志,開始該代碼段時,將此標(biāo)志置為否.離開時再置回原來的值。這種方法比采甩semaphore的好處是,如果采用許多種semaphore的話.要考慮是否會產(chǎn)生死鎖的問題。比采用鎖中斷的好處是.將中斷鎖住將丟失中斷,而這樣不會。而以固定的周期加switch語句顯然有失靈活性。這樣.采用這種方法,需要我們分析Linux所有系統(tǒng)調(diào)用的代碼,畫出其結(jié)構(gòu)流程圖。分析出哪些部分是關(guān)鍵部分,也即不允許置入的部分。在關(guān)鍵代碼前后更改switchaccept標(biāo)志。這項(xiàng)工作比較艱巨。同時修改進(jìn)程調(diào)度器,使其判斷switchaccept標(biāo)志來決定是否執(zhí)行進(jìn)程切換。
(2)修改進(jìn)程調(diào)度器Linux的進(jìn)程調(diào)度器雖然已經(jīng)具有一定的實(shí)時性能,但還遠(yuǎn)遠(yuǎn)達(dá)不到真正實(shí)時調(diào)度器的標(biāo)準(zhǔn),因此需要修改其進(jìn)程調(diào)度器,必要的話可讓Linux運(yùn)行在兩種模式下,實(shí)時模式和分時模式。可設(shè)計(jì)一些相關(guān)的系統(tǒng)調(diào)用,并在實(shí)時進(jìn)程提交時,將系統(tǒng)轉(zhuǎn)化為實(shí)時模式,當(dāng)實(shí)時進(jìn)程結(jié)束時,再轉(zhuǎn)化為分時模式。
(3)Linux的中斷管理根據(jù)前面分析過的,Linux的中斷管理及時地將緊要的任務(wù)完成后,將其余不重要的緩慢的任務(wù)放置在任務(wù)隊(duì)列中,等到系統(tǒng)空閑(cpu idle())或系統(tǒng)調(diào)用等返回時再完成這些任務(wù),這樣就提高了系統(tǒng)的響應(yīng)速度,同時,Linux還支持中斷嵌套。因此,不再對其作太大改動。
(4)鎖定內(nèi)存 在本項(xiàng)目的規(guī)劃中本打算實(shí)現(xiàn)Linux鎖內(nèi)存的功能,使優(yōu)先權(quán)高的進(jìn)程在內(nèi)存中的數(shù)據(jù)不被換出,從而提高實(shí)時進(jìn)程的運(yùn)行速度。然而,在分析了Linux代碼后,發(fā)現(xiàn)后來版本的Linux已通過系統(tǒng)調(diào)用sys mlock實(shí)現(xiàn)了此項(xiàng)功能

支持(0中立(0反對(0單帖管理 | 引用 | 回復(fù) 回到頂部

返回版面帖子列表

嵌入式實(shí)時Linux的技術(shù)








簽名
久久精品在这里_成人99免费视频_国产激情视频一区二区在线观看_国产伦精品一区二区三区免费 _亚洲午夜免费福利视频_色狠狠色狠狠综合_av在线综合网_91毛片在线观看_欧美视频一区二区在线观看_极品美女销魂一区二区三区免费_国产亚洲欧美激情_在线免费观看不卡av_日韩不卡一区二区三区_91精品国产麻豆国产自产在线_亚洲国产精品一区二区久久恐怖片_a4yy欧美一区二区三区
国产成人无遮挡在线视频| 99精品视频一区二区| 日韩欧美国产wwwww| 久久本道综合色狠狠五月| 国产精品一区二区男女羞羞无遮挡 | 欧美一区二区三区日韩视频| 欧美亚洲爱爱另类综合| 国产aⅴ综合色| 亚洲va天堂va国产va久| 国产欧美1区2区3区| 欧美巨大另类极品videosbest| 欧美一区二区高清在线观看| 91亚洲精华国产精华精华液| 国内成人精品2018免费看| 亚洲国产综合人成综合网站| 中文字幕二三区不卡| 日韩一区二区免费在线电影| 中文字幕成人一区| 欧美三级网色| 国产一区二区高清不卡 | 成人aa视频在线观看| 久久精品国产色蜜蜜麻豆| 夜夜精品视频一区二区 | 91猫先生在线| 国产精品99久久久久久久vr| 日韩福利视频导航| 亚洲精品中文在线观看| 国产精品人成在线观看免费| 日韩精品一区二区三区中文不卡| 欧美三级视频在线播放| 亚洲国产一区二区三区在线| 精品视频一区二区| 国产传媒一区| 91免费版在线看| 不卡区在线中文字幕| 国产999精品久久久久久| 麻豆成人免费电影| 三级久久三级久久久| 亚洲福利国产精品| 一区二区三区美女| 亚洲啪啪综合av一区二区三区| 国产视频一区二区在线| 久久久久久麻豆| 精品999久久久| 日韩欧美久久一区| 337p亚洲精品色噜噜狠狠| 欧美三级午夜理伦三级中视频| 91国模大尺度私拍在线视频| 亚洲一区高清| 一区二区视频国产| 正在播放91九色| 在线视频不卡一区二区三区| 亚洲日本精品一区| 在线观看福利一区| 一本大道av一区二区在线播放 | 日本道精品一区二区三区| 性欧美.com| 日韩欧美精品一区二区| 先锋影音一区二区三区| 亚洲精品欧洲精品| 中国成人亚色综合网站| 综合色婷婷一区二区亚洲欧美国产| 亚洲一区尤物| 欧洲生活片亚洲生活在线观看| 欧美伊人久久大香线蕉综合69| 欧美亚洲国产一区二区三区| 欧美精品乱人伦久久久久久| 日韩一级二级三级精品视频| 精品99999| 中文字幕欧美区| 亚洲九九爱视频| 婷婷综合另类小说色区| 免费高清在线一区| 国产精品一区二区在线看| 成人一级黄色片| 91九色对白| 农村寡妇一区二区三区| 午夜老司机精品| 欧美亚洲一区三区| 欧美一区永久视频免费观看| 精品国产精品一区二区夜夜嗨| 国产欧美日韩综合精品一区二区| 亚洲天堂成人网| 亚洲成av人片在线| 黄色日韩网站视频| 99久久免费视频.com| 国严精品久久久久久亚洲影视 | 成人av午夜影院| 99在线观看视频| 免费久久一级欧美特大黄| 一区二区视频在线观看| 欧美人伦禁忌dvd放荡欲情| 精品日韩av一区二区| 国产精品免费久久久久| 亚洲一二三四在线| 精品亚洲国产成人av制服丝袜| 成人开心网精品视频| 国产精品推荐精品| 亚洲欧美日韩另类精品一区二区三区| 欧洲国内综合视频| 精品盗摄一区二区三区| 亚洲美女区一区| 麻豆精品新av中文字幕| av一区二区三区四区| 精品亚洲欧美日韩| 91高清视频免费看| 精品福利视频一区二区三区| 亚洲精品国产第一综合99久久 | 99视频在线| 亚洲欧洲精品一区二区三区波多野1战4 | 国产成人精品一区二区三区网站观看 | 欧美激情一区二区三区在线视频| 日本久久一区二区三区| 欧美精品一区二区三区四区| 亚洲精品v日韩精品| 国产自产高清不卡| 国产一区二区视频在线免费观看| 一本大道久久精品懂色aⅴ| 精品国产三级电影在线观看| 亚洲精品菠萝久久久久久久| 国产精品一线二线三线| 麻豆av一区二区三区久久| 精品视频免费在线| 国产欧美日本一区二区三区| 人人精品人人爱| 91麻豆文化传媒在线观看| 在线免费一区| 久久精品水蜜桃av综合天堂| 午夜精品久久久久久久久久久| 99综合电影在线视频| 一本一道久久a久久精品综合 | 成人涩涩免费视频| 欧美精品欧美精品| 91精品国产综合久久精品app| 亚洲色大成网站www久久九九| 国模娜娜一区二区三区| 精品国产区在线| 欧美一区二区三区在线观看 | 成人性生交大片免费看视频在线| 欧美一区二区福利| 日韩欧美激情一区| 亚洲成a人片在线不卡一二三区| 91在线看国产| 在线观看欧美日本| 亚洲欧洲日韩综合一区二区| 国产成人自拍高清视频在线免费播放| 欧美日韩亚洲在线| 2023国产精品视频| 美腿丝袜一区二区三区| 精品欧美国产一区二区三区不卡| 日韩一级二级三级| 日本欧美在线观看| 精品综合久久久| 精品国产一区二区三区久久影院| 日本美女一区二区| 久久精品国产一区二区三区不卡| 日韩精品中文字幕在线一区| 免费看日韩a级影片| 欧美精品国产精品久久久 | 波多野结衣的一区二区三区| 伊人狠狠色丁香综合尤物| 国产精品看片你懂得| 国产成人av一区二区| 色综合久久久久综合体| 亚洲人成影院在线观看| 成人av电影在线观看| 欧美日韩精品欧美日韩精品一 | 免费国产亚洲视频| 玖玖玖精品中文字幕| 久久免费电影网| 国产一区二区三区观看| 宅男一区二区三区| 亚洲精品国产视频| 国产伦理一区二区三区| 欧美成人激情免费网| 韩国欧美一区二区| 色哟哟国产精品| 亚洲午夜在线电影| 国产在线欧美日韩| 久久夜色精品国产欧美乱极品| 国产乱国产乱300精品| 在线亚洲欧美专区二区| 亚洲成av人片在www色猫咪| 欧美日韩亚洲免费| 亚洲欧美日韩国产另类专区| 国产精品swag| 久久精品一区二区三区四区| 福利一区福利二区| 欧美日韩高清一区二区不卡| 日本 国产 欧美色综合| 亚洲一区二区三区四区中文| 一区二区欧美国产| 欧美日韩在线精品| 最新中文字幕一区二区三区| 国产91免费视频| 久久美女艺术照精彩视频福利播放 | 色狠狠色狠狠综合| 视频精品一区二区| 在线精品亚洲一区二区| 日日夜夜精品视频免费 |