久久视频在线视频精品,天天天操,国产综合精品http://www.bjzhda.cnzh-cn曙海教育集團論壇http://www.bjzhda.cnRss Generator By Dvbbs.Netofficeoffice@126.comimages/logo.gif曙海教育集團論壇基于VxWorks環境的嵌入式系統復合通信模式http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=11&ID=1433&Page=1wangxinxin2010-11-17 14:41:44摘要:在嵌入式系統與VxWorks實時操作系統應用愈加廣泛的背景下,結合嵌入式系統對于各類實時通信方式的不同需要,提出基于控制應用的復合通信模式;以Radstone公司的PPCx系列單板機為例,給出實現方法,并對數據通信的產時性與安全性作了研究。片對于各類嵌入式操作系統的數據測驗具有很大的參考價值。

關鍵詞:VxWorks 嵌入式系統 實時性 數據通信

引言

隨著信息技術的不斷發展和更新,嵌入式操作系統以其速率高、穩定、可配置內核的優勢正得到越來越廣泛的應用,包括醫學、圖像處理、軍事、工業控制、電信等許多領域。嵌入式系統必須采用特殊有效的實時操作系統,VxWorks正是一個具有高性能的實時操作系統,成為嵌入式系統操作內核的最佳選擇之一。隨著嵌入式系統在網絡當中的應用不斷加強,具有多種數據通道的復合通信模式顯得列為必要。本文根據基于VxWorks的嵌入式系統對于數據通信的不同要求,提出一個嵌入式系統復合通信模型,研究幾種具有代表性的數據通信方式,并論述在VxWorks下的實現方法及其一些關鍵技術。

1 嵌入式系統復合通信模型的設計

嵌入式系統在控制領域應用十分廣泛,例如在工業控制當中常常利用嵌入式系統作為中央控制機,完成信息采集、分系統監管、系統決策等等重要功能。硬件往往離不開軟件的支持。VxWorks操作系統是目前功能最全的、獨立于處理器的嵌入式實時操作系統之一?紤]如何基于VxWorks實現嵌入式系統的復合通信方式是有意義的。由于此時嵌放式系統已經不再是孤立系統,而是處于某種拓撲網絡結構當中,因此,有必采取復合通信模式以適應系統擴展、集中控制和遠程信息傳輸的需要?刂茩C應當具備優良的系統總線、可靠的控制網絡、高速傳輸通道接口以及遠程數據管道。綜合以上考慮,圖1給出了一個控制機的復合通信模型。

控制機本身采用VME總線標準,可以嵌入多塊單板機,具有良好的系統擴展性。為了適應不同的通信要求,外圍有三種通信接口。其中光纖通信傳輸速率很高,適合作為大流量數據通道,例如信號處理機數據傳輸管道。串口通信設備簡單、成本較低,傳輸速率適中且安全性高,可以作為遠程數據通道。以太網則由于其極佳的增容性、穩定性,適合于局域網絡控制體系。

2 復合通信模式特點分析

為了對以上復合通信模型加以說明,下面對片幾種通信模式的特點進行分析。

(1)總線標準

目前常用的總線標準有多種,基中VME總線支持多處理器系統,最多可以容納21塊插件。地址總線32位,數據總線32位,數據傳輸速率可以達到80Mb/s。VME總線能處理7級中斷,具備高速的實時響應能力。VME總線采用主-從結構,主功能模塊傳輸數據之間必須先使用中央仲裁器,也稱為系統控制器,具有總線仲裁功能。VME數據傳輸總線是高速異步并行的,模塊間數據傳輸是通過連鎖的握手信號實現的。具有高可靠性,同時其模板結構具有良好的抗震性,適應較為惡劣的工作環境[1]。

(2)控制網絡

控制網絡一般采用局域網。由于TCP/IP協議是一個標準的企業網絡協議,是比較完善的、公認的最有效的互聯協議,因此目前流行的操作系統都支持TCP/IP協議,TCP/IP協議還是個穩定的、對稱的、支持交叉平臺的Client/Server方式的結構,并為應用程序提供了標準接口,對于集中控制的嵌入式系統采用基于TCP/IP的網絡通信無疑是方便而且有效的。

(3)高速數據接口

目前來看,光纖通道作為高速數據通信是最為有利的。它是一種利用光纖(苦口婆心銅纜)作為物理鏈路的高性能串行數據接口,支持SCSI、IP等上層數據傳輸協議,具有可靠性高、速度快和傳輸距離的特點,可用來連接大型機、服務器和存儲設備以實現高速大容量的信息傳輸。對于分離的嵌入式硬件系統而言,采用光纖通道作為高速I/O數據接口無疑是一種很好的選擇。

(4)遠程數據通道

由于控制機的遠程數據傳輸需要較高的安全性,同時一般只需單路傳輸,如果使用光纖電纜顯示成本高而且不需要那么高傳輸的帶寬,因此可以考慮使用串行口通信。串行口在嵌入式系統當中是一類重要的數據通信接口。由于RS-422標準串行口通信采用了雙線傳輸,大大增加了抗共模干擾的能力,最大數據傳輸速度可以達到10Mb/s,這對于遠程數據交換具有極大的優勢,因此可用于遠程信息交換。

3 復合通信方式的實現與關鍵技術

由于本文的討論與單板機生產商所提供的板級支持包有關,而不同類型的單板機所提供的板級支持包(BSP、ESP)也會略有不同,為了不失一般性同時具有一定先進性,本文采用英國Radstone公司生產的PPCx系列單板機作示例。PPCx系列單板機功能集成度高、擴展性強、性能穩定,可以添加多種外圍存儲設備、支持高分辨顯示,是一種理想的單板機系統。

3.1 基于VME總線的DMA通信方式

在VME總線上,每個單板機如果要訪問其它單板機的RAM,必須通信VME總線地址映射。因此,每塊板上有兩個地址譯碼器,一個用于VME總線地址→本地地址譯碼,而另一個用于本地地址→VME總線地址譯碼,這樣就會存在多個不同的存儲器地址映射。如果想要訪問某個單板機的RAM,需要知道該單板機的RAM本地址所映射成的VME總線地址,然后通過訪問VME總線地址映射到自身的本地地址而訪問到系統控制器,甚至可以將其看成自身的RAM地址。多處理器地址映射關系如圖2所示。

綜上所述,對于某一VME總線中的任務一塊板而言,只要獲得了它的本地地址到VME總線地址的映射關系,就可以從板外來訪問該板的RAM。VxWorks標準函數庫sysLib當中提供了函數sysLocaltoBusAddr(),可以直接獲得本地地址的VME總線地址。這樣,當前主機只需調用該函數獲得自身RAM地址到VME地址映射,其它的主機就可以根據該映射得到的VME總線地址訪問該主機。因此,當需要對于外板的某些控制寄存器進行位元操作的進修,這種方法就顯得尤其重要:因為往往沒有函數能夠僅僅對于外板RAM的某個字節進行操作,更無法定位到位操作。

為了進一步提高數據傳輸速率,可使用PPC4A上的VME控制芯片Tundra中集成的DMA控制器。它支持基于VME總線的DMA數據傳輸方式,而DMA是外存數據傳輸最有效的一種方式。具體步驟如下:

①安裝DMA驅動程序,調用函數dmaDrv();

②建立DMA設備,調用函數dmaDevCreate();

③打開DMA進行讀寫,調用函數open()、write()、read()。

DMA設備句柄就是一個類似于文件指針的數據類型,所以可以像一個標準數據操作來對待。開啟設備后即可調用文件讀寫標準函數進行讀寫操作。通過較為嚴格的測試,DMA數據傳輸速率可以達到40Mb/s以上,并且不發生數據傳輸錯誤。

為了保證主機對于其它主機DMA傳輸數據的實時響應,應當產生VME總線中斷信號通知該主機。當某個主機發送數據完畢后,須調用VxWorks提供的函數sysBusIntGen ()t向VME總線產生一個級別為intLevel、中斷號為intNum的中斷信號。

接收端主機事先建立一個與該級別中斷信號對應的客戶中斷服務程序,并將該客戶中斷服務程序鏈接到所要求級別的中斷號上,從而實現對其進行實時響應。當主機接收到屬于自己的中斷信號后,會立刻自動調用該中斷服務程序。這時可利用中斷服務程序釋放一個信號燈,通過該信號燈驅動相應的數據處理模塊,從而實現實時操作。如下面的全程:

/*客戶中斷服務程序*/

void intHdlr(SEM_ID semId)

void intHdlr(SEM_ID semId)

{

/*釋放信號燈*/

semGive(semId);

}

/*等待信號燈的處理模塊*/

void processsModle(void)

{

/*等待信號燈*/

semTake(semld);

/*處理模塊代碼*/

}

VME總線共有7個中斷級別,排除系統使用的中斷號,客戶自定義中斷號可從18設置到32。這樣能夠為足夠多的主機設置中斷服務程序,從而實現VxWorks操作系統下的多主機VME總線實時高速通信。

3.2 串行口通信

在VxWorks中,將I/O系統設計成為任何類型的設備提供一個簡單、統一、獨立于設備的接口,所以串行口通信軟件的設計和VME通信具有相似之處。在VxWorks中,任何對于串行口的操作仍然可以視為對一個文件的操作,而不必了解關于設備或程序驅動實現的細節。在串行口通信軟件的設計不中,利用RRCx的增強軟件包ESP可對驅動成功后的串行口設備進行操作。系統首先調用ESP軟件提供的esccDrv()安裝串行驅動程序,隨后調用esccDevCreate()將指定的串口設備添加到系統中,當串口初始化完成后,與DMA操作方式類似,在使用之前利用open()打開相應串口,依據串口打開時的讀寫標志,調用函數write()、read()對串口進行只讀操作、只寫操作或同時進行讀寫操作。

對于串口通信,仍然要關心數據接收的實時性。可采用中斷方式,利用VxWorks提供的select函數的事件觸發機制,將讀串口的任務阻塞使其一直等待數據,當有數據來到的時候該任務會立刻自動響應,提高系統的實時性。

3.3 基于TCP/IP協議的網絡通信

網絡通信一般可通過套接口(socket)實現。VxWorks提供了標準的BSD socket調用,具有兩種類型:Stream socket(全雙工流類型)、Datagram sockets(數據攝類型)。前者支持TCP協議,后者支持UDP協議。任何一個任務都可以打開一或多個socket,其它任務的socket可與之連接?蛻舳顺绦蚴紫日{用socket()個函數產生用于與各分系統連接的套接口,并為每個套接口返回一個ID號,然后初始化一個套接口結構體,為其賦上該ID號以及服務端的IP地址和端口號,并將具作為函數connect()的參數,調用connect()函數主動去連接客戶端。服務端則需調用bind()函數將自身IP和端口號綁定,以保證客戶端正確識別。為了確保服務器能夠實時接收客戶端的數據,當服務端與客戶端建立連接之后,必須嵌入循環,利用read()語句不斷等待客戶數據。同時客戶端每次發送數據之后也應等待服務端回復,建立握手機制。一個完整的socket網絡應該可以用圖3來描述。值得指出的是,read調用具有一個PEEK選項,即向接收緩沖區探測是否有數據而并不真正取出數據,根據它的返回值可以判斷出網絡的狀態。這個功能適用于網絡查錯。

3.4 光纖通道

由于光纖通道(fibre channel)接口并非VxWorks自身具備的組件,因此,VxWorks內核上實現光纖通信也需要加載相關的驅動程序;同時,主機也需安裝光纖通信適配器,然后通過光纖電纜連接。下面仍以PPCx系列單板機為例來說明。

這里采用QLA2200作為光纖通道適栩器。QLA2200/66是Qlogic公司生產的、目前應用最為廣泛的光纖通道適配器。它主要包括四個功能模塊:高速RISC處理器,包括千兆位收發模塊、通道控制、幀緩存等的FC接口,有三個通道PCI總線DMA控制器以及ISP2200A的外存儲器。RRCx的ESP為該適配器QLA2200提供了驅動程序,支持基于交換機、仲裁環以及點對點等三種拓撲結構的SCSI、IP和低開銷訪問(LLA)協議,其固件協議層結構如圖4所示。

當VxWorks啟動之后,需要調用QLA2200的初始化函數ql22Init(),該函數的功能是驅動PPCx主板上QLA2200的PCI板卡,包括SCSI、IP固件協議初始化。此時,可在光纖通道上建立基于SCSI或IP協議的數據通信模式;而LLA實際上一種不具備協議管理的點對點通信模式,可節約大量系統開銷,故稱之為低開銷方式。它可以建立一種類似于服務器/客戶機的通信機制,即服務端可以實時響應客戶端的數據請求,但它同樣缺乏握手安全機制。因此,如果客戶端連續發送兩次大批量數據,將會由于服務器來不及接收導致該兩批數據首尾發生沖突,故需加以改進。LLA的服務器/客戶機通信機制是通過調用函數ql22laHookAttach()在服務端設備一個掛鉤函數來實現的。每當客戶端向服務端發送數據,該掛鉤函數將會立刻自動響應,因此,可以在掛鉤函數當設置VxWorks消息隊列,將接收幀緩存區中的數據取出。如下面的程序:

BOOL ql22LlaClientInputHook()

{…

/*將緩存區數據發送到服務端本地消息隊列當中去*/

msgQsend(ServerQueue,ClientData,Length,NO_WAIT,0);

}

采用消息隊列接收數據則是由于它具有消息自動追加功能,可以保證數據在高速拷貝時不被覆蓋。當傳輸完畢后,服務端就可以將消息隊列當中的數據取出來進一步處理?蛻舳藙t應當在每次發送數據完畢之后等待服務端的回答,首到得到確認之后才可以進行下一步發送。因此,客戶端必須設備回復等待,這可以利用信號燈來實現。LLA具有很高的傳輸速率。根據測試,在實施了握手通信機制后,傳輸速率可達50Mb/s以上,而且實現,系統開銷很小,適應于點對點的主機高速通信。

4 結論

本嵌入式系統復合通信模式具有多種通信接口,可適應不同的數據通信需要。同時,由于VxWorks高效的實時性以及強大的兼容性,使得復合通信的實現變得更加容易并且具有良好的實時性和安全性。通過實際運行,系統內部各個模塊運行穩定,軟件的模塊實時調度表示良好,經長時間的運行未發現通信阻塞。該復合通信模式可適用于工業控制、醫療等多方面,具有廣泛的適應性。

 

 來源:[http://www.jdzj.com]機電之家·機電行業電子商務平臺!

]]>
嵌入式數據庫支持風河的VxWorkshttp://www.022-oo.cn/bbs/dispbbs.asp?BoardID=11&ID=1432&Page=1wangxinxin2010-11-17 14:28:01<!--[if !supportEmptyParas]--> <!--[endif]-->

Mimer Information Technology announced the availability of its Mimer SQL Embedded database management system (DBMS) for Wind River’s VxWorks real-time operating system. Mimer SQL Embedded for VxWorks combines a full function enterprise class DBMS with a hard real-time data management extension with predictable and deterministic response times. This makes it possible to develop advanced hard real-time applications for process industry, automotive and consumer devices with access to the full SQL feature set.

Mimer Information Technology is a new member of Wind River’s partner program, and is now ready to launch the Mimer SQL Embedded product for Wind River’s VxWorks real-time operating system. Mimer SQL Embedded is a small footprint relational DBMS for embedded devices and appliances. Despite its small footprint, Mimer SQL Embedded is multi-user with full standard SQL support including features like stored procedures and triggers. Mimer SQL Embedded’s well-proven, efficient and self-tuning DBMS kernel gives a zero maintenance run-time environment, reduces the time-to-market for embedded solutions and enables software component reuse.

Mimer SQL Embedded for VxWorks is extended with Mimer SQL Real-Time that combines predictable hard real-time and non-real-time database access. Mimer SQL Real-Time allows data management in embedded real-time applications to be taken to a higher level while still maintaining real-time predictability and fine-grained control.

Mimer SQL Embedded highlights:

  • Full SQL support
  • Stored procedures and triggers
  • Full concurrency control (non-locking)
  • Small footprint (down to 30 KB RAM for full server)
  • Zero maintenance (no ‘vacuum’ needed)
  • Hard real-time support with deterministic response times (Mimer SQL Real-Time)


“We see Wind River’s VxWorks as an important platform for Mimer with many new business opportunities for us, since this is a platform widely used by the automotive, process-control and robotic industry with a growing need for enterprise class DBMS functionality with hard real-time data access”, says Stefan Eck, Marketing Director, Mimer Information Technology. “We’re also looking forward to establish a close relationship with Wind River and its partners”, concludes Stefan Eck.

Mimer SQL Embedded and Mimer SQL Real-Time are available for VxWorks 5 and 6.

“We welcome Mimer as a Wind River partner and are very pleased with that they now make their Mimer SQL database technology available for VxWorks”, says Warren Kurisu, senior director of product management, Wind River. “Mimer’s small, real-time attributes nicely complement those of VxWorks, and will meet the needs of many of our customers.

]]>
VxWorks_BSP移植_http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=11&ID=1431&Page=1wangxinxin2010-11-17 14:25:10VxWorks_BSP移植_1
 icepeak 發表于 2006-5-29 8:33:00
好多天沒更新blog了,中間忙著整另外一個blog,所以無暇顧及.現在,把前幾天學習筆記送上來!

在講述BSP的移植之前,先討論一下Vxworks的啟動過程:

ARM系統中,系統上電后會自動加載并運行位于0地址的指令,通常在這個地方會放置一條跳轉指令,使它跳轉到_romInit()(初始化的入口)

romInit()進行處理器模式的設置,關閉中斷,初始化內存以及一些必要的硬件配置.

romInit()執行完上述工作以后,跳轉到romStart(),它負責將ROM映像copy到RAM中,如果ROM映像中不含Vxworks內核,那么啟動代碼要負責將

Vxworks內核加載到RAM中去.接下來要開始運行Vxworks內核的入口程序sysInit(),它主要實現一些與romInit()類似的功能,然后還是調用

Vxworks內核的第一個例程usrInit(),usrInit()會根據BSP的設置,最終完成整個內核的前期初始化工作.在usrInit最后,由kernelInit()激

活多任務環境,并創建一個任務來安裝設備驅動程序.同時啟動設備,初始化Vxworks系統庫,調用應用程序.
 

VxWorks_BSP移植_2
 icepeak 發表于 2006-5-29 8:49:00
弄清楚VxWorks啟動的順序后,我們來討論BSP的移植,VxWorks的BSP在先前的日志中已經有說明,大家可以查閱了解它和bootloader的區別和

聯系.

不同的Target的BSP都不同,同種CPU的不同板子也會不同,所以移植修改是不可避免的,我們可以參考$(WIND_BASE)\target\config下的BSP

文件,找一個比較接近的來修改!關于這個目錄的組織結構,網上有很多介紹,這里不贅述.

首先要重點修改的就是Makefilie文件和config.h文件,這兩個文件跟目標板的硬件配置有很大的關系,主要是CPU類型,內存的大小和目標板

的外圍設備的配置情況.關于這兩個文件的修改下次會詳細注釋!     

]]>
Vxworks嵌入式操作系統下網絡設備驅動程序設計http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=11&ID=1430&Page=1wangxinxin2010-11-17 14:21:48引 言
  VxWorks操作系統是美國WindRiver公司于1983年設計開發的一種嵌入式實時操作系統(RTOS),是嵌入式開發環境的關鍵組成部分。良好的持續發展能力、高性能的內核以及友好的用戶開發環境,在嵌入式實時操作系統領域占據一席之地。它以其良好的可靠性和卓越的實時性被廣泛地應用在通信、軍事、航空、航天等高精尖技術及實時性要求極高的領域中,如衛星通訊、軍事演習、彈道制導、飛機導航等。
  

1 嵌入式系統
  嵌入式系統是以嵌入式計算機為技術核心,面向用戶、面向產品、面向應用,軟硬件可裁減的,適用于對功能、可靠性、成本、體積、功耗等綜合性嚴格要求的專用計算機系統。和通用計算機不同,嵌入式系統是針對具體應用的專用系統,目的就是要把一切變得更簡單、更方便、更普遍、更適用;它的硬件和軟件都必須高效率地設計,量體裁衣、去除冗余,力爭在同樣的硅片面積上實現更高的性能。

  嵌入式系統主要由嵌入式處理器、外圍硬件設備、嵌入式操作系統以及特定的應用程序等四部分組成,是集軟硬件于一體的可獨立工作的“器件”;用于實現對其它設備的控制、監視或管理等功能。

  嵌入式系統應具有的特點是:要求高可靠性;在惡劣的環境或突然斷電的情況下,要求系統仍然能夠正常工作;許多嵌入式應用要求實時處理能力,這就要求嵌入式操作系統(EOS)具有實時處理能力;嵌入式系統中的軟件代碼要求高質量、高可靠性,一般都固化在只讀存儲器中或閃存中,也就是說軟件要求固態化存儲,而不是存儲在磁盤等載體中。

2 設備驅動程序

Vxworks5.4中驅動程序主要分為三種:字符、塊以及網絡驅動程序。本文所介紹的網卡驅動程序則屬于網絡設備驅動程序。

2.1 網絡設備驅動程序設計

網絡的各功能部件圖1所示,網絡設備驅動程序實際上是處理硬件和上層協議之間的接口程序。網絡傳輸協議層分發數據在應用程序接口和網絡接口之間。網絡化網絡協議(如IP協議)發送數據在網絡主機之間。連接/接口層使能主機隸屬于硬件到相同物理媒質的通信。

在Vxworks5.4中,網卡驅動程序又分為END(Enhanced Network Driver)和BSD兩種。它們分別處于如圖2所示結構中。

CHAR-indent-count: 2.0; mso-CHAR-indent-size: 10.5pt">

CHAR-indent-count: 2.0; mso-CHAR-indent-size: 10.5pt">2.1.1 BSD驅動程序設計

CHAR-indent-count: 2.0; mso-CHAR-indent-size: 10.5pt">在Vxworks5.4中,網絡驅動程序都是基于BSD UNIX版本4.3基礎上的,這些驅動程序都定義在一個全局例程中,那就是attach子程序,xxattach( )子程序中包含5個函數指針,它們都被映射到ifnet結構中,這5個函數可見表1,它們在IP協議層任何地方被調用。

CHAR-indent-count: 2.0; mso-CHAR-indent-size: 10.5pt">表1 網絡接口處理

CHAR-indent-count: 2.0; mso-CHAR-indent-size: 10.5pt">

驅動程序指定函數

函數指針

功能

xxInit( )

if_init

初始化接口

xxOutput( )

if_output

對要傳輸的輸出分組進行排隊

xxIoctl( )

if_ioctl

處理I/O控制命令

xxReset( )

if_reset

復位接口設備

xxWatchdog( )

if_watchdog (optional)

周期性接口例程

CHAR-indent-count: 2.0; mso-CHAR-indent-size: 10.5pt">驅動程序入口xxattach( )調用ether_attach( )來把上述5個函數映射到ifnet結構中,ether_attach( )調用如下:

CHAR-indent-count: 2.0; mso-CHAR-indent-size: 10.5pt">ether_attach(
    (IFNET *) & pDrvCtrl->idr,
    unit,
    "xx",
    (FUNCPTR) NULL,
    (FUNCPTR) xxIoctl,
    (FUNCPTR) ether_output( ), /* generic ether_output */
    (FUNCPTR) xxReset
);
pDrvCtrl->idr.ac_if.if_start = (FUNCPTR)xxTxStartup;
上述參數中,需要一個接口數據記錄(INTERFACE Data Record (idr)),unit號和設備名,下面四個參數就是相關驅動程序的函數指針。第一個函數指針指的是init( )例程,這個例程可要可不要,第二個函數指針指的是ioctl( )接口,它允許上層來控制設備狀態;第三個函數指針指的是把數據包送到物理層;最后一個函數指針指的是如果TCP/IP堆棧決定需要復位的話,它就復位這個設備。

CHAR-indent-count: 2.0; mso-CHAR-indent-size: 10.5pt">接著下面那一句代碼表示添加數據傳輸例程到IDR,ether_output( )例程被調用后,傳輸開始例程就被TCP/IP協議堆棧調用。

CHAR-indent-count: 2.0; mso-CHAR-indent-size: 10.5pt">在這個入口驅動程序中還包括設備的初始化、發送和接收描述符的初始化等。

CHAR-indent-count: 2.0; mso-CHAR-indent-size: 10.5pt">2.1.2 END驅動程序設計

CHAR-indent-count: 2.0; mso-CHAR-indent-size: 10.5pt">END驅動程序是基于MUX模式,網絡驅動程序被劃分為協議組件和硬件組件。MUX數據鏈路層和網絡層之間的接口,它管理網絡協議接口和低層硬件接口之間的交互;將硬件從網絡協議的細節中隔離出來;刪除使用輸入鉤例程來過濾接收從協議來的數據包,和刪除了使用輸出鉤例程來過濾協議包的發送;并且鏈路層上的驅動程序需要訪問網絡層(IP或其他協議)時,也會調用相關的MUX例程。值得注意的是,網絡層協議和數據鏈路層驅動程序不能直接通訊,它們必須通過MUX。如圖3所示: 

CHAR-indent-count: 2.0; mso-CHAR-indent-size: 10.5pt">

CHAR-indent-count: 2.0; mso-CHAR-indent-size: 10.5pt">

CHAR-indent-count: 2.0; mso-CHAR-indent-size: 10.5pt">

CHAR-indent-count: 2.0; mso-CHAR-indent-size: 10.5pt"> 

2.3將驅動程序加載到Vxworks系統中

要對所設計的驅動程序進行測試,首先就必須把驅動程序加載到Vxworks IMAGE中,并且給設備分配一個IP,這樣才能有利于網間測試。

首先,修改configNet.h文件,添加如下代碼:

#ifdef INCLUDE_DM_9102_END

#define DM_9102_BUFF_LOAN_0      1

#define DM_9102_LOAD_FUNC        sysDm9102EndLoad

#define DM_9102_LOAD_STR_0       ""

IMPORT END_OBJ * DM_9102_LOAD_FUNC (CHAR *, void *);

和END_TBL_ENTRY endDevTbl [] 中添加

#ifdef INCLUDE_DM_9102_END

    {0, DM_9102_LOAD_FUNC, DM_9102_LOAD_STR_0, TRUE, NULL, FALSE},

#endif /* INCLUDE_DM_9102_END */

其次,編輯config.h文件,添加如下代碼:

#define INCLUDE_DM_9102_END      /* DAVICOM 9102 FAST ETHERNET CONTROLLER */

最后,編輯sysLib.c文件,添加如下代碼:

/* include dm9102 End driver SUPPORT routines */

#ifdef INCLUDE_DM_9102_END

IMPORT STATUS sysDm9102PciInit (void);

#endif /* INCLUDE_DM_9102_END */


/* include dm9102End driver SUPPORT routines */

#ifdef INCLUDE_DM_9102_END

#include "sysDm9102End.c"

#endif /* INCLUDE_DM_9102_END */

#ifdef INCLUDE_DM_9102_END

   sysDm9102PciInit ();

#endif /* INCLUDE_DM_9102_END */

通過上述過程相應的添加程序,然后重新編譯Vxworks,這樣就將所設計的網卡驅動程序添加到Vxworks內核中了。

2.4 PCI設備檢測

如果所設計的網卡是基于PCI總線的,那么在程序開始就需要對PCI設備進行檢測,在Vxworks5.4中有專門的PCI函數來檢測設備的總線號、設備號和功能號。首先利用pciFindDevice( )函數對給定VendorID和DeviceID的設備進行檢測,檢測完后同時給出了設備的總線號、設備號和功能號;接下來就是獲得該設備的中斷號、基地址(包括IO和內存)。Vxworks中pciConfigLib.h文件中定義PCI總線的常量。如中斷號:PCI_CFG_BRG_INT_LINE,IO基地址:PCI_CFG_BASE_ADDRESS_0,內存基地址:PCI_CFG_BASE_ADDRESS_1等等。所以利用函數pciConfigInByte和pciConfigInLong就可以很容易地獲得設備的中斷號和基地址。

2.5 調試方法

為了方便調試網卡驅動程序,推薦利用串口對程序進行下載并將Vxworks image拷貝到軟盤中以從軟盤來加載它。調試的時候首先應該給網卡分配一個IP(利用usrNetIfConfig函數),然后利用ping來對網卡進行測試。

3  結語

  利用上述方法所設計的網卡后,不久可以利用它來進行程序下載,而且能滿足網卡所有的功能,包括對TCP/IP和UDP/IP(組播、廣播和單播)進行了測試。


]]>
PowerPC+VxWorks嵌入計算機與軟件技術開發http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=11&ID=1429&Page=1wangxinxin2010-11-17 14:20:27? MPC8245嵌入計算機板

? MPC8541E嵌入計算機板

? MPC8560嵌入計算機板

? PowerPC開發板系列
- PowerPC405EP開發板
- PowerPC8245開發板
- PowerPC8247開發板
- PowerPC8280開發板
- PowerPC8349開發板

? 定制的PowerPC嵌入計算機板卡 如下:
- PowerPC405EP嵌入計算機板
- PowerPC405GPr嵌入計算機板
- PowerPC440GX嵌入計算機板
- MPC8260嵌入計算機板
- MPC8349嵌入計算機板
- MPC8536嵌入計算機板
- MPC8641D嵌入計算機板
- MPC7448嵌入式計算機板
- 1394接口協議棧for VxWorks
- USB2.0接口協議棧for VxWorks
- PATA接口硬盤存儲協議棧for VxWorks
- SATA接口硬盤存儲協議棧for VxWorks
- 高性能網絡協議棧for VxWorks
- 聲卡設備驅動for VxWorks
- PowerPC在線配置FPGA方案for VxWorks
- 集成數據I/O與FPGA的PowerPC嵌入式系統for VxWorks

? 應用于汽車電子的PowerPC嵌入式系統技術開發
- 汽車電子OSEK/VDX嵌入式系統產品
- MPC5500 MPC5534 MPC5561等MPC55xx系列嵌入式電控板

]]>
VxWorks學習筆記——實戰之在VMWare上安裝VxWorks操作系統http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=11&ID=1428&Page=1wangxinxin2010-11-17 14:18:55準備工作
我們假設您有一臺普通配置的PC機,并安裝了Windows2000操作系統。其次您需要安裝Tornado 2.2 for pcPentium開發環境。缺省安裝的Tornado 2.2 for pcPentium可能不包括pcPentium的BSP組件,但該組件可以從風河公司(Windriver)的網站免費下載。
我們將在下文以WIND_BASE引用Tornado的安裝路徑。
其次是要安裝VMWare軟件,這里我們使用4.0的版本。如果您還沒有該軟件,也可以從VMWare的網站下載試用版。
最后,由于Tornado自帶的PC-NET網卡驅動有問題,所以需要下載AMD的PC-NET網卡的VxWorks系統驅動,可以從AMD網站免費下載。
一張1.44M的軟盤,用于制作系統引導盤。
準備并安裝好以上軟件后,就可以開始下一步的工作了。
 
開始安裝
編譯網卡驅動程序
VMWare為運行于其上的操作系統提供虛擬網卡支持,該網卡類型即為AMD的PC-NET。實際上,在Tornado開發包中已經包含了該類型網卡的驅動程序,但經過測試,對于VMWare無法正常工作,所以您需要從AMD的網站下載最新的驅動程序。
下載得到的是一個可執行的安裝程序,運行該程序將得到一個壓縮包和一個幫助文件,按照該幫助的要求,將壓縮包直接釋放到Tornado目錄下。如果提示是否允許覆蓋文件,則選擇允許。
此后按如下步驟完成驅動程序的編譯和替換:
  • 打開一個控制臺窗口,運行批處理程序:$(WIND_BASE)\host\x86-win32\bin\ torVars.bat;
  • 重新定位到$(WIND_BASE)\target\src\drv\end目錄,運行:
make CPU=PENTIUM tool=gnu ln97xend.o
其間會產生一些警告,但這不會影響我們的工作。
  • 重新定位到$(WIND_BASE)\target\lib\pentium\PENTIUM\common目錄,并將上一步生成的文件ln97xend.o復制到此目錄下。備份此目錄下的文件libdrv.a;
  • 運行命令arpentium -d libdrv.a ln97xEnd.o,刪除libdrv.a中原有的ln97xEnd模塊,然后再運行命令:
arpentium -ra iOlicomEnd.o libdrv.a ln97xEnd.o
將我們剛剛創建的新模塊添加進去。
到此有關網卡驅動的設置就完成了。注意不要關閉這個窗口,后面還要使用。
 
修改配置文件
在這一節中,我們要修改編譯VxWorks的配置頭文件Config.h中定義的一些參數,使編譯出來的系統引導程序和VxWorks的映象符合我們的要求;同時還要修改sysLn97xEnd.c這個文件,以使系統的網絡功能正常運行。
  • 定位目錄到$(WIND_BASE)\target\config\pcPentium并打開該目錄下Config.h文件;
  • 我們首先要修改VxWorks的啟動參數。先查找到定義DEFAULT_BOOT_LINE宏的地方,修改預處理條件CPU == PENTIUM分支下的定義如下:
#define DEFAULT_BOOT_LINE \
"lnPci(0,0)your_host_name:d:\\vxWorks h=192.168.80.169 e=192.168.80.254 u=target pw=vxworks tn=target"
其中:
  • lnPci(0,0)指定了使用第0個網卡和第0個處理器,lnPci這個標識會因為使用的驅動程序不同而有所不同,但這里用lnPci就可以了;
  • your_host_name指定您的主機的名字,使用Windows系統的主機名就可以;
  • d:\\vxWorks指定了VxWorks映象下載的完整路徑;
  • h=192.168.80.169是主機的IP地址,就是您當前正在使用的系統的IP地址;
  • e=192.168.80.254是目標機的IP地址,也就是未來VxWorks操作系統的IP地址,您只要任意指定一個不沖突的IP地址即可,這里我們假設您的目標機IP地址和主機IP地址在同一個網段內;
  • u=target指定了FTP服務器的用戶名,這個FTP就是用來下載VxWorks映象的,后面還會提到;
  • pw=vxwroks是用戶名對應的口令;
  • tn=target指定目標機的名字,任意指定即可;
您可以參考Tornado自帶的手冊以獲取更多信息;
  • 下面我們要指定使用什么樣的網卡驅動程序。首先查找“Network driver options”這段文字,之后您可以看到在該注釋后面定義了一系列的有關網卡驅動的宏定義。注意保證INCLUDE_END和INCLUDE_LN_97X_END這兩個宏處于定義狀態(define),其他的宏都處于未定義狀態(undef);
  • 缺省情況下,VxWorks系統是不接受外部輸入設備(如鍵盤)的輸入,也不向外部輸出設備(如顯示器)輸出數據。為了便于調試,我們必須改變它的這種缺省狀態。我們查找定位宏INCLUDE_PC_CONSOLE,然后保證其處于定義狀態(define)即可;
  • 到此為止,對config.h文件的修改就完成了,保存修改,然后再打開同一目錄下的sysLn97xEnd.c文件;
  • 這一步修改的目的是要使網卡正常工作。我們先定位到“memory-mapped IO base”這段文字,然后將其前面的參數由pciRsrc[endUnit].bar[1]修改為NONE,這樣就可以了。最后別忘了保存。
到此為止,全部的修改工作都完成了,下一步就可以開始編譯連接了。
 
編譯程序
這一節我們要編譯生成bootrom引導程序和VxWorks運行映象。
  • 打開您的Tornado開發工具,在Build菜單下選擇Build Boot ROM,彈出如下對話框:
 

BSP列表中選擇pcPentium,而在Image to build列表中分別選擇bootrom和gnu。完成選擇后,點擊OK按鈕就開始引導程序的編譯了。編譯產生的文件bootrom將保存在$(WIND_BASE)\target\config\pcPentium目錄下。
  • 編譯生成bootrom后,還要創建一個VxWorks映象(image),也就是VxWorks操作系統本身的代碼。
    • 創建一個“bootable VxWorks image”的工程;
    • 選擇您需要的VxWorks組件。這一步是可選的,如果您只想使用缺省的配置,那根本就不需要這一步;但如果您想使用額外的組件,例如,您可能想通過telnet連接VxWorks系統,這時就需要在Workspace窗口的VxWorks選項卡中選擇telnet sever對應的組件,如下圖:

在這個例子中我們選擇了兩個重要的組件:Telnet server 和 Target shell 。前者使我們可以通過Telnet協議登錄到VxWorks操作系統中;后者則可以讓我們通過命令行控制VxWorks系統。
    • 完成選擇后,即可開始編譯程序;
 
  • 到此我們已經生成了VxWorks的系統引導程序和運行時的代碼映象。這里還要提醒讀者,在您每次修改完系統的配置信息(如:config.h)后,都要重新創建一個工程來編譯VxWorks映象,以免出現代碼不一致的問題。
  • 將生成的名為“vxworks”的文件復制到D盤根目錄下。這個路徑是由上面我們所設置的DEFAULT_BOOT_LINE宏中的路徑參數決定的,必須保持二者一致。
制作引導磁盤
現在開始制作VxWorks系統引導磁盤,用于引導裝載VxWorks運行映象。
我們回到“編譯網卡驅動程序”一節中所打開的控制臺窗口,定位目錄到$(WIND_BASE)\target\config\pcPentium,插入您已經格式化好的軟盤,然后運行:
mkboot a: bootrom
該命令將在軟盤上建立VxWorks系統引導分區,并將引導程序復制到軟盤上。
這里再額外向您介紹一個虛擬軟盤的工具:RamDiskNT,它可以在內存中建立一個虛擬的軟盤,對于提高VxWorks的啟動速度有很大幫助。
 
配置FTP服務器
這里的FTP服務器用于在系統成功引導后,下載VxWorks的運行時映象。我們這里使用Tornado開發環境自帶的FTP服務器。
  • 打開Tornado FTP Server,選擇“Security”菜單下的“Users/Rights”子菜單,彈出如下對話框:

User Name為“target”時,修改“Home Directory”為D盤根目錄(此路徑由上面的DEFAULT_BOOT_LINE參數決定),同時修改口令為“vxworks”,最后點擊“Done”按鈕完成修改;
  • 為了便于調試,我們還要打開FTP Server的日志功能。選擇“Logging”菜單下的“Logging Options”子菜單,彈出如下對話框,其中除了“Winsock Calls”外,讓其他選項全都處于開啟狀態。
  • 保持FTP Server窗口處于打開狀態(這樣FTP服務器就處于運行狀態)。
 
創建VxWorks系統
  • 打開您的VMWare Workstation,在File->New菜單下選擇創建一個新的虛擬機(Virtual Machine),按照其向導幫助,完成虛擬機的配置。在選擇操作系統類型時,選擇“Other”,其余選項均使用缺省值就可以了。
  • 完成以上配置后,點擊右側窗口中的“Start this virtual machine”,系統即開始引導運行,如下圖所示:

 

在引導過程中,您會遇到一個7秒鐘的等待,以決定是使用缺省的引導參數,還是手動輸入引導參數。這里我們選擇前者,所以不需要做任何工作。
成功引導后,系統會自動從FTP Server下載映象,并開始運行,得到如下畫面:
 
 
到此,我們已經成功的在VMWare上安裝了VxWorks操作系統。
需要注意的是,上面的畫面會因為選擇組件的不同而略微有所不同(例如,如果您沒有選擇target shell,就不會出現命令行提示符),但一般不會影響后續操作。
配置聯機調試環境
裝好系統后,您肯定還希望將自己編寫的應用程序下載到目標機進行調試,下面我們就完成這一部分的配置工作。
打開您的Tornado開發環境,選擇“Tools->Target Server->Configure”菜單,彈出如下對話框:
“Description”中任意填寫一個名字,這里是“net00”;在“Available Back”中選擇“wdbrpc”,并在下面的IP地址框中填寫目標機的IP地址,這里是“192.168.80.254”(由DEFAULT_BOOT_LINE參數決定);將“Target Server Properties”下拉框更改至“Core File and Symbols”,并在“File Path”一項中選擇您的映象的完整路徑,這里是“D:\vxWorks”(由DEFAULT_BOOT_LINE參數決定)。
完成以上兩項配置,點擊“Launch”按鈕,就可以啟動Target Server了。
再回到Tornado開發環境,在工具條上的Target Server下拉框列表中選擇“192.168.80.254@your_host_name”。這時您會發現工具條中一些原先處于“禁用”狀態的工具按鈕,現在都已經處于“激活”狀態了。
現在您就可以開始聯機調試您的VxWorks應用程序了]]>
基于VxWorks的配電子站http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=11&ID=1427&Page=1wangxinxin2010-11-17 14:11:27

  IEC60870-5-104規定控制站(即配電主站)作為客戶機,而被控站(即配電子站)作為服務器。

  基于網絡的IEC60870-5-104規約通信報文格式:I格式-可計數的信息傳輸功能;S格式-可計數的確認功能;U格式-啟動,停止,測試功能。

  通信流程圖如圖2所示。

圖片點擊可在新窗口打開查看

  圖2 IEC60870-5-104規約通信流程圖

  3.4 BSP開發

  BSP是針對具體的硬件平臺,用戶所編寫的啟動代碼和部分設備驅動程序的集合。BSP所實現的功能包括初始化和驅動部分設備。BSP需要支持處理器復位、初始化、驅動串口和必要的時鐘處理等。

  3.5 功能實現

  從配電終端讀取數據:配電終端裝置通過CAN2.0B規約將YC、YX量等數據傳送至配電子站,并將數據填入已開辟的緩沖區。使用緩沖區操作使得系統對底層驅動程序的調用機會大大減少,將大量的數據實時的保存下來,以便于查詢和轉發。

  轉發緩沖區數據:配電子站需要將從配電終端裝置獲取的數據有選擇地轉發到配電主站上去,或者接受配電主站有選擇的查詢。遙測改變,配電子站具有上送功能。

  發送數據到配電主站:配電子站通過以太網將從配電終端讀取的數據傳送到配電主站,遵循基于網絡的IEC60870-5-104遠動傳輸規約。

  4 系統測試和實驗

  4.1 系統測試平臺

  系統硬件測試平臺主要用于測試配電子站與配電終端之間的CAN通信以及配電子站與配電主站之間的以太網通信。測試中配電終端裝置采用國電南瑞的DAT-1000系列產品,主要與DAT-1L和DAT-1LA裝置進行通信。而主站則采用在PC機上通過與模擬主站進行通信來測試以太網通信。

  4.2 測試與實驗結果

  經過嚴格的測試和苛刻的實驗,基于嵌入式硬件平臺的配電子站能夠按照要求完成與配電主站和配電終端之間的通信。采用CAN總線通信方式與多個FTU進行通信,通信抗干擾力強,通信速度快,不丟失遙測量及SOE等。采用以太網通過基于網絡的IEC60870-5-104遠動傳輸規約與配電主站進行通信,系統可靠性高,通信速度快,完全符合配電自動化系統通信要求。

]]>
基于Vxworks嵌入式下網絡設備驅動設計http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=11&ID=1426&Page=1wangxinxin2010-11-17 14:09:32  嵌入式系統是以嵌入式計算機為技術核心,面向用戶、面向產品、面向應用,軟硬件可裁減的,適用于對功能、可靠性、成本、體積、功耗等綜合性嚴格要求的專用計算機系統。和通用計算機不同,嵌入式系統是針對具體應用的專用系統,目的就是要把一切變得更簡單、更方便、更普遍、更適用;它的硬件和軟件都必須高效率地設計,量體裁衣、去除冗余,力爭在同樣的硅片面積上實現更高的性能。

  嵌入式系統主要由嵌入式處理器、外圍硬件設備、嵌入式操作系統以及特定的應用程序等四部分組成,是集軟硬件于一體的可獨立工作的“器件”;用于實現對其它設備的控制、監視或管理等功能。

  嵌入式系統應具有的特點是:要求高可靠性;在惡劣的環境或突然斷電的情況下,要求系統仍然能夠正常工作;許多嵌入式應用要求實時處理能力,這就要求嵌入式操作系統(EOS)具有實時處理能力;嵌入式系統中的軟件代碼要求高質量、高可靠性,一般都固化在只讀存儲器中或閃存中,也就是說軟件要求固態化存儲,而不是存儲在磁盤等載體中。

  2.設備驅動程序

  Vxworks5.4中驅動程序主要分為三種:字符、塊以及網絡驅動程序。本文所介紹的網卡驅動程序則屬于網絡設備驅動程序。

  ·網絡設備驅動程序設計

  網絡的各功能部件圖1所示,網絡設備驅動程序實際上是處理硬件和上層協議之間的接口程序。網絡傳輸協議層分發數據在應用程序接口和網絡接口之間。網絡化網絡協議(如IP協議)發送數據在網絡主機之間。連接/接口層使能主機隸屬于硬件到相同物理媒質的通信。

  在Vxworks5.4中,網卡驅動程序又分為END(Enhanced Network Driver)和BSD兩種。

  ·BSD驅動程序設計

  在Vxworks5.4中,網絡驅動程序都是基于BSD UNIX版本4.3基礎上的,這些驅動程序都定義在一個全局例程中,那就是attach子程序,xxattach( )子程序中包含5個函數指針,它們都被映射到ifnet結構中,它們在IP協議層任何地方被調用。

需要一個接口數據記錄(Interface Data Record (idr)),unit號和設備名,下面四個參數就是相關驅動程序的函數指針。第一個函數指針指的是init( )例程,這個例程可要可不要,第二個函數指針指的是ioctl( )接口,它允許上層來控制設備狀態;第三個函數指針指的是把數據包送到物理層;最后一個函數指針指的是如果TCP/IP堆棧決定需要復位的話,它就復位這個設備。

  接著下面那一句代碼表示添加數據傳輸例程到IDR,ether_output( )例程被調用后,傳輸開始例程就被TCP/IP協議堆棧調用。

  在這個入口驅動程序中還包括設備的初始化、發送和接收描述符的初始化等。

  ·END驅動程序設計

  END驅動程序是基于MUX模式,網絡驅動程序被劃分為協議組件和硬件組件。MUX數據鏈路層和網絡層之間的接口,它管理網絡協議接口和低層硬件接口之間的交互;將硬件從網絡協議的細節中隔離出來;刪除使用輸入鉤例程來過濾接收從協議來的數據包,和刪除了使用輸出鉤例程來過濾協議包的發送;并且鏈路層上的驅動程序需要訪問網絡層(IP或其他協議)時,也會調用相關的MUX例程。值得注意的是,網絡層協議和數據鏈路層驅動程序不能直接通訊,它們必須通過 MUX。如圖3所示:

]]>
VxWorks環境下雙冗余以太網卡技術在底層驅動中的實現http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=11&ID=1425&Page=1wangxinxin2010-11-17 14:06:49 隨著以太網的穩定性、抗干擾性和帶寬問題的逐步改善,以太網正在大規模進入工業控制領域。用于工業過程控制、通信、航天器和導航系統中的網絡對可靠性及其響應故障的快速性要求極高。當前,冗余設計作為一種提高設備可靠性的有效方法,已經得到了廣泛的應用。對于網絡系統中的單個節點,常常需要對網卡進行雙冗余備份,即每個節點都采用2塊網卡(或2個網口),中間用集線器或交換機互連,當正常通信的網卡或線路出現故障時,該節點能自動地切換到備份網卡進行通信。圖1為冗余網絡的一種典型聯接形式。 

        具有雙冗余網卡的節點雖然有2塊網卡,2條通道,但對于高層應用系統來說,仍呈現單網卡的特征。具體來講,2塊網卡共有1個物理地址,1個IP地址。根據TCP/IP參考模型,TCP/IP協議族可以分為應用層、傳輸層、網絡層和鏈路層4層,冗余網卡技術可以在其中各個層面中實現。 



        VxWorks、MUX與網卡驅動程序 

        嵌入式實時操作系統VxWorks的網絡協議棧與網絡設備驅動的接口有2種:一種是標準的BSD4.4Driver,它將Driver和協議緊密關聯在一起,不利于多協議的支持;另一種標準是VxWorks特有的,它將Driver和協議棧隔離開,使二者通過一個稱為MUX的薄層相連,使得網絡服務免受特定的網絡接口驅動程序的影響,達到Driver獨立于具體協議的目的,從而實現多協議的支持,三者間的關系如圖2所示。 



            目前版本的MUX支持2種網絡驅動程序接口模式:增強型網絡驅動程序接口( END)和網絡協議工具包(NPT)驅動程序接口,F以END型網卡驅動為例介紹如何在VxWorks5.4下的NE2000兼容網卡驅動程序中實現雙網卡冗余設計。正常情況下,協議驅動程序通過MUX層提供的NIC的句柄來提交請求,這個句柄是調用EndLoaD()獲得的;然后MUX層調用網卡驅動程序中的接口函數,實現高層協議驅動程序的請求。 

        在應用層實現雙冗余網卡技術的分析 

        在系統中對網卡進行雙冗余備份,即1塊網卡在正常工作時使用,另1塊網卡作為備份。備份用的網卡處于激活狀態。在正常通信的網卡出現故障或系統需要時,備份用的網卡能實時地、自動地切換到繼續工作。顯然,這就要求2塊網卡只能使用同1個物理地址和同1個IP地址。從應用程序的角度看,只會看見1塊網卡在工作,不關心是哪塊網卡在工作及如何切換。 

        理論上講,冗余網卡技術可以在OSI各層中實現,而且越在底層實現,檢測和切換的速度越快,效果應該越好。其他利用應用層實現雙冗余網卡的主要方法是在程序中發起任務,以查詢的方式不斷對當前工作網卡的工作狀態進行判斷,當判斷出當前使用的網卡處于非正常狀態的時候,將刪除當前網卡的路由,在主機列表中刪除當前主機名,并解除網卡與協議的綁定;然后進行備份網卡的配置:為備份網卡綁定協議,設置子網掩碼和IP地址。用此種方法實際測試,測試中使裝有雙網卡的主機不斷向外發送廣播報文,同時用網絡分析軟件接收。測得2個網口的切換時間平均為120ms,在切換期間有很多廣播報文丟失?梢娫趹脤訉崿F雙網卡冗余備份技術,網卡切換速度慢,不利于網絡的可靠性和實時性。 

        在驅動程序中的實現 

        在VxWorks系統中,相同類型的網卡使用同一個驅動程序,網卡之間由驅動程序提供的句柄來區別。MUX調用NIC驅動程序的接口函數時,都會把網卡的句柄傳入函數中。這就為在驅動程序中實現雙網卡冗余備份提供了基礎。因此要實現網卡的雙冗余備份,最理想的辦法是在NIC驅動程序中實現。 

        數據結構 
        網卡驅動程序中最關鍵的數據結構是有關網卡特性的數據結構。每種網卡都有它自己的特性,包括它的單元號、中斷向量、I/O基址、物理地址等。 

        系統啟動時,在網卡驅動的裝載函數中ne2000EndLoad( )中,會為設備初始化1個數據結構,并分配一個指針指向這個結構。這時定義2個全局指針: 

        NE2000END-DEVICE * pDrvCtrl-0; 
        NE2000END-DEVICE * pDrvCtrl-1; 

        在網卡初始化時把這2個指針分別指向2塊網卡的數據結構,通過這2個指針的定義,在MUX調用NIC驅動程序的接口函數時,可以根據網卡的好壞或系統的需要來選擇pDrvCtrl-0或pDrvCtrl-1,以調整工作網卡。 

        發送和接收處理 
        在上層驅動程序通過MUX調用NIC驅動程序的發送函數時,會傳入網卡的句柄,指定要使用的網卡。通常情況下,驅動程序會根據該句柄向相應網卡發出指令,把報文發出去。在雙網卡冗余備份驅動程序中,根據需要來指定發送數據要使用的網卡,而不一定使用MUX指定的網卡。如先讀2塊網卡的Link信號寄存器,判斷網絡連線的通斷,再決定使用哪一塊網卡來發送數據。 

        在接收報文的時候,通常是在中斷中進行處理。因為以太網在物理層上的特點,2塊網卡都能收到報文,不同的是只有與高層協議綁定的網卡收到的數據才能向上傳遞。在雙網卡冗余備份驅動程序中,不是由MUX指定的網卡句柄來向上傳送數據,而是根據當前網卡的工作狀態向上層傳送數據,即使數據是從另一塊網卡上接收來的或另一塊網卡沒有和高層協議綁定。 

        單物理地址的處理 
        通常每塊網卡有1個全世界范圍內唯一的物理地址,它保存在網卡的PROM中。網卡初始化時,要從PROM中讀出物理地址,把它存放在適當的寄存器和數據結構中。 

        要使2塊網卡能相互備份,它們必須有相同的物理地址和IP地址。在雙網卡冗余備份驅動程序中,可以用其中1塊網卡的物理地址。方法有2種:在驅動程序初始化時只讀1塊網卡的PROM中的物理地址;或者在網卡驅動程序中的ne2000EnetAddrGet()函數中作修改,完全可以給網卡設定任意的物理地址(只要避免了同一網絡中的沖突)。 

        單IP地址處理 
        至于2塊網卡采用相同的IP地址,可以這樣實現:在安裝2塊網卡時,只讓1塊網卡有IP地址,另1塊網卡沒有IP地址。因為給網卡綁定IP地址是在IP協議所在的網絡層實現的,所以在網絡層以下切換網卡對上層來說是完全透明的。應用程序自始自終只看見1塊網卡在工作。圖3是從應用程序的角度看雙網卡備份的示意圖。 

        效果分析 
        通過對比實驗,在應用層實現雙網卡冗余備份的平均網卡切換時間是120ms,在驅動層實現雙網卡冗余備份的平均網卡切換時間是5ms,相對于在應用層或其他高層中實現,效率較高,大大縮短雙網卡的切換時間,從而降低切換時網絡通信丟包的機率。 

 ]]>
基于VxWorks嵌入式操作系統的SNMP應http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=11&ID=1424&Page=1wangxinxin2010-11-17 10:46:26 摘  要:本文介紹了基于VxWorks操作系統下設備管理的基本流程,同時給出了設計代理的詳細過程。

關鍵字:實時操作系統 簡單網絡管理協議 代理

1. 引言

  簡單網絡管理協議(SNMP)已經成為目前網絡管理方面事實上的標準。同命名一樣,它的操作非常簡單易行,所以引起了越來越多的商家的注意,在計算機、通信和自動化等各個領域都發揮了很大的作用。同時,VxWorks嵌入式操作系統又由于其出色的實時性和穩定性受到業界的廣泛的好評,所以如何實現在VxWorks系統上通過SNMP協議對設備進行管理是我們面臨的一個很重要的課題。

2. SNMP及系統簡介

  VxWorks操作系統是美國WindRiver公司設計開發的一種嵌入式實時操作系統,具有以下特點:

  1.高效的代碼和良好的可裁剪性采用微內核結構,內核可裁減至幾十B 字節,對于資源相對緊張的嵌入式系統具有非常好的適應性。

  2.豐富的接口資源和大量的第三方產品為VxWorks的廣泛應用奠定了堅實的基礎

  3.良好的移植性,可以移植到不同的處理器平臺,包括PPC、ARM和X86等不同的處理器。

  4.良好的開發環境,非常好的開發環境Tornado并在不斷升級

  WindNet SNMP代理將工業標準網絡管理引入實時嵌入系統中,實現了對嵌入式設備管理的接口。應用上只需配置其初始化過程和應用系統提供的部分接口就可以方便實現對嵌入式設備的管理,同時支持多種SNMP版本的支持,現在已經可以支持SNMPv3最高版本。SNMP的工作過程可以如圖1所示: 


圖 1 SNMP 基本框架

3. 處理流程

  3.1 初始化過程

  Vxworks是通過調用usrSnmpInit( )函數來啟動SNMP服務的,所以對于VxWorks微內核,一定要包含usrSnmpInit( )函數。它然后創建任務名為tSnmpd的任務,這個任務的函數入口點為snmpIoMain( )。在庫snmpIoLib.c中提供了該函數的部分源代碼,用戶可以加入自己的代碼,比如讀某些配置文件和私有的配置信息等。snmpIoMain( )然后調用snmpdInitFinish( )函數來完成整個代理的初始化過程。然后snmpInitFinish( )通過snmpIoTrapSend( )函數發送coldStart的trap,表示整個初始化過程完畢。這里需要注意的是所有其他的初始化和配置工作一定要在snmpInitFinish( )調用之前,然后系統回到snmpIoMain( )函數體,開始和管理站之間的收發包過程。

  3.2 數據包處理

  數據包的處理過程是通過snmpIoBody( )的這個守護進程開始的,它的主要工作是監視 UDP 161端口,如果管理站有請求發送過來,它把請求發給snmpdPktProcess( )來處理,通過snmpIoCommunityValidate( )檢查共同體的名稱是否正確。然后調用用戶自己的程序完成請求,對于SET操作,還要調用snmpIoWrite( )來完成整個操作。這里要注意的是用戶要提供自己的代碼完成請求,比如說對某一個變量的讀取,一定要給出對應的具體位置,這部分可以通過修改snmpdLib.c中的函數來完成。

  對于trap的處理有單獨的一套流程,首先如果一件意外事件發生,比如冷啟動,調用snmpdTrapSend( )函數來處理。對于trap,可以通過用戶自定義的方式來實現系統需要的trap。一般來講,它通過snmpIoWrite( )函數把信息傳遞給管理站。

  3.3 退出代理

  如果用戶想中止代理,可以調用函數snmpdExit( )來完成,同時會釋放各種資源。

  以上部分流程圖如圖2所示:


圖 2 基本流程

4. 擴展MIB模塊

  對默認的SNMP配置,代理已經包含了包括MIB-II和其他的基本MIB庫,但對于有些環境不需要部分庫,同時需要加入基于本設備和本廠家的私有MIB,所以很有必要對MIB進行擴展和裁減,也利于對嵌入式設備的標準化管理。以下介紹整個過程。

  1. 定義管理信息

  這步主要用來定義SNMP需要管理的信息,其中部分信息已經通過標準MIB實現,實際只要加入就可以了。

  2. 創建MIB定義

  根據ASN.1標準語法創建MIB。

  一般有以下形式:

  DEFINITIONS ::= BEGIN

  —— Title: EXAMPLE

  IMPORTS

  MODULE-IDENTITY,

  OBJECT-TYPE

  FROM SNMPv2-SMI

  ……

  windDemo MODULE-IDENTITY

  LAST-UPDATED "2004-9-26"

  ORGANIZATION

  CONTACT-INFO

  Phone:……

  Email:……

  DESCRIPTION

  "This is a example"

  ::= { demos 1 }

  windObjects OBJECT IDENTIFIER ::= { windDemo 1 }

  sysState OBJECT-TYPE

  SYNTAX INTEGER

  MAX-ACCESS read-write

  STATUS current

  DESCRIPTION

  "EXAMPLE"

  ::= { sysconfig 1 }

  END

  3. 檢查正確性,轉換成.h和.c文件

  可以應用mibcomp –check工具來檢驗MIB文件的正確性,利于mibcomp –o生成相應的.h和.c文件。

  4. 編譯MIB文件

  將MIB文件加入到已經存MIB模塊中。通常有靜態和動態兩種方式。

  靜態類似于通常的編譯文件的全過程。這里主要介紹動態方式,因為這種方式可以實現在原始模塊照常工作的情況下加入或卸載新模塊。首先通過mibcomp –l命令將新的MIB文件編譯成模塊。然后用命令ld在shell下實現MIB的動態加載。

5. 總結

  VxWorks將SNMP應用到整個系統,實現了對嵌入式設備的標準化管理,利于對同不同的管理站進行接口。SNMP不僅實現了對嵌入式設備的管理還提供了監視整個系統正常運行的基本功能,同時還可以通過對CPU的檢查實現發現軟件方面的漏洞。總之,將SNMP應用到微內核,會在嵌入式這個自動化領域發揮出越來越大的作用。

]]>
VxWorks系統BSP配置文件及生成下載http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=11&ID=1423&Page=1wangxinxin2010-11-17 10:45:28#define CONSOLE_BAUD_RATE 57600


#undef INCLUDE_ENV_VARS /* unix compatable environment variables */
#undef INCLUDE_TIMEX /* timexLib for exec timing */
#undef INCLUDE_HW_FP
#undef INCLUDE_TFTP_CLIENT /* used by autoboot from ftp server*/

#define INCLUDE_SW_FP
#define INCLUDE_ELF
#define INCLUDE_NET_SHOW
#define INCLUDE_PING
#undef INCLUDE_DEMO /* only for vxWorks bsp test */
#define ETHERNET_ADR_SET /* only for bootrom used */
#define INCLUDE_USER_APPL /* Startup the user''s application in dos makefile project */
#undef PCIDEBUG

#ifdef INCLUDE_USER_APPL
#define USER_APPL_INIT _appEntry()
#endif

#endif /* INCconfigh */
#if defined(PRJ_BUILD)
#include "prjParams.h"
#endif



Makefile文件配置

# Makefile - make rules for board
#
#*/

CPU = PPC40x
TOOL = gnu

TGT_DIR=$(WIND_BASE)/target
include $(TGT_DIR)/h/make/defs.bsp
include $(TGT_DIR)/h/make/make.$(CPU)$(TOOL)
include $(TGT_DIR)/h/make/defs.$(WIND_HOST_TYPE)

## Only redefine make definitions below this point, or your definitions will
## be overwritten by the makefile stubs above.


TARGET_DIR = xxx
VENDOR = IBM
BOARD = xxx

RELEASE = vxWorks vxWorks.st bootrom_uncmp.hex

USR_ENTRY = usrInit


# ROM_TEXT_ADRS, ROM_SIZE, RAM_HIGH_ADRS, 和RAM_LOW_ADRS 在config.h,Makefile和Makefile.*文件中 # 都要定義,且必須要保持一致,


ROM_TEXT_ADRS = fff80100                 # ROM 起始地址
ROM_SIZE = 0007f000                      # ROM 空間大小

RAM_LOW_ADRS = 00010000                  # RAM 低地址 vxWorks */
RAM_HIGH_ADRS = 00C00000                 # RAM 高地址存儲 bootrom */

HEX_FLAGS = -a 100

#ADDED_CFLAGS = -gdwarf -O0 # for debug

MACH_EXTRA = appentry.o                # 注意:這里加載用戶的程序模塊,程序調用在usrRoot()

BOOTCONFIG = bootconfig.c               # bsp bootconfig.c for bootrom


## Only redefine make definitions above this point, or the expansion of
## makefile target dependencies may be incorrect.

include $(TGT_DIR)/h/make/rules.bsp
include $(TGT_DIR)/h/make/rules.$(WIND_HOST_TYPE)

  Tornado for x86下BSP的生成,下載和Target Server的配置實例,Pentium主機,3Com網卡,軟盤引導,ftp下載VxWorks映像。

     1.在C:\Tornado\target\config\pcPentium目錄下修改BSP文件config.h。

#elif (CPU_VARIANT == PENTIUM)
#define DEFAULT_BOOT_LINE 
"elt(0,0)HOST:c:\\Tornado\\target\\config\\pcPentium\\vxWorks 
h=90.0.0.3 e=90.0.0.50 u=target pw=target tn=target"

#define INCLUDE_ELT //3Com網卡
#define INCLUDE_END //END驅動

2.打開Tornado選擇新建一個bootable vxworks image,選擇建 A BSP,選擇
  pcPentium,建完后編譯就可以在相應的目錄下生成vxworks的映像文件。

3.制作bootrom;選擇Build Boot Rom,選擇pcPentium,再選擇bootrom_uncmp,
  生成 bootrom_uncmp?截 bootrom_uncmp到host\x86-win32\bin下,插入空白
  盤到軟區,在dos界面進入目錄host\x86-win32\bin下,用命令"mkboot a: 
  bootrom_uncmp "生成引導盤 

4. 在Start > Programs > Tornado2 > FTP Server,點開Security下的
  user/rights菜單,新建用戶User Name:target,Password:target,Home 
  Directory為VxWorks映像所在目錄如 C:\Tornado\target\config\pcPentium\。
  注意這些配置要和config.h中的一致。

5.將bootrom的啟動盤插入目標機的軟驅,啟動目標機,系統從軟驅啟動,隨后登
  陸FTP,從主機下載vxworks文件,目標機提示7秒內按任意鍵選擇Boot方式(手工
  ,自動),手工方式可對FTP用戶,口令,IP等參數進行修改。
  通常是等待7秒后系統autoboot。
  

屏幕顯示:

Attached TCP/IP interface to elt0.
Attaching network interface lo0... done. //TCP/IP網絡連接成功

Loading... 602128 //通過ftp下載VxWorks映像
Starting at 0x01080000 //下載成功,從RAM_LOW_ADRS 0x01080000
開始執行VxWorks系統

Attached TCP/IP interface to elt unit 0
Attaching interface lo0...done //TCP/IP網絡連接成功
(注意這里網絡初始化成功和上邊的不同,上邊是Bootrom映像網絡初始化來下載VxWorks,這里VxWorks系統初始化網絡。)

VxWorks

Copyright 1984-1998 Wind River Systems, Inc.

CPU: xxxx --- Intel x82 
VxWorks: 5.4
BSP version: 1.2/4
Creation date: Jan xx 2001
WDB: Ready.

至此目標機系統啟動完成。


6.配置Target Server下載應用程序.

打開Tornado,在Tools菜單下選擇Target Sever再選擇configure進行配置(Tools 
> Target Server > Configure > New)給出Target Server名字描述如net00.在
(Target Server Properties > Back End)選擇WdbRpc. Target Name/IP Address 
框內輸入Target的IP: 90.0.0.50. 
Core File and Symbols選項(Target Server Properties > Core File and 
Symbols): C:\Tornado\target\config\pcPentium\vxWorks等等。
配置的內容根據系統的具體情況定。點擊Launch啟動Target Sever,隨后在主界
面下選擇已啟動的Target Sever就可以下載 *.o或*.out程序。

]]>
VXWORKS內核分析http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=11&ID=1422&Page=1wangxinxin2010-11-17 10:44:121. 實時操作系統的結構
     在計算的早期開發的操作系統的最原始的結構形式是一個統一的實體(monolithic)
。在這樣的系統中,提供的不同功能的模塊,如處理器管理、內存管理、輸入輸出等,
通常是獨立的。然而他們在執行過程中并不考慮其他正在使用中的模塊,各個模塊都以
相同的時間粒度運行。
     由于現代實時環境需要許多不同的功能,以及在這樣的環境中存在的并發活動所引
起的異步性和非確定性,操作系統變得更加復雜。所以早期操作系統的統一結構的組織
已經被更加精確的內部結構所淘汰。
層次結構的起點----內核
     操作系統的最好的內部結構模型是一個層次性的結構,最低層是內核。這些層次可
以看成為一個倒置的金字塔,每一層都建立在較低層的功能之上。 內核僅包含一個操作
系統執行的最重要的低層功能。正象一個統一結構的操作系統,內核提供了在高層軟件
與下層硬件之間的抽象層。然而,內核僅提供了構造操作系統其他部分所需的最小操作
集。
對一個實時內核的要求
     一個實時操作系統內核需滿足許多特定的實時環境所提出的基本要求,這些包括:
多任務:由于真實世界的事件的異步性,能夠運行許多并發進程或任務是很重要的。多
任務提供了一個較好的對真實世界的匹配,因為它允許對應于許多外部事件的多線程執
行。系統內核分配CPU給這些任務來獲得并發性。
     搶占調度:真實世界的事件具有繼承的優先級,在分配CPU的時候要注意到這些優先
級。基于優先級的搶占調度,任務都被指定了優先級, 在能夠執行的任務(沒有被掛起
或正在等待資源)中,優先級最高的任務被分配CPU資源。換句話說,當一個高優先級的
任務變為可執行態,它會立即搶占當前正在運行的較低優先級的任務。
     快速靈活的任務間的通信與同步:在一個實時系統中,可能有許多任務作為一個應
用的一部分執行。系統必須提供這些任務間的快速且功能強大的通信機制。內核也要提
供為了有效地共享不可搶占的資源或臨界區所需的同步機制。
     方便的任務與中斷之間的通信:盡管真實世界的事件通常作為中斷方式到來,但為
了提供有效的排隊、優先化和減少中斷延時,我們通常希望在任務級處理相應的工作。
所以需要雜任務級和中斷級之間存在通信。
     性能邊界:一個實時內核必須提供最壞情況的性能優化,而非針對吞吐量的性能優
化。我們更期望一個系統能夠始終以50微妙執行一個函數,而不期望系統平均以10微妙
執行該函數,但偶爾會以75微妙執行它。
     特殊考慮:由于對實時內核的要求的增加,必須考慮對內核支持不斷增加的復雜功
能的要求。這包括多進程處理,Ada和對更新的、功能更強的處理器結構如RISC的支持。

擁有其它名字的內核
     許多商用化的內核支持的功能遠強于上面所列的要求。在這方面,他們不是真正的
內核,而更象一個小的統一結構的操作系統。因為他們包含簡單的內存分配、時鐘管理
、甚至一些輸入輸出系統調用的功能。
     這種分類不僅僅是在語義上的爭論,在這篇文章的后面章節將說明限制內核功能和
油畫這些功能的重要性。
2. VxWorks內核:Wind
     VxWorks操作系統是一種功能最全的現在可以獲得的獨立于處理器的實時系統。然而
,VxWorks是帶有一個相當小的真正微內核的層次結構。內核僅提供多任務環境、進程間
通信和同步功能。這些功能模塊足夠支持VxWorks在較高層次所提供的豐富的性能的要求
。 通常內核操作對于用戶是不可見的。應用程序為了實現需要內核參與的任務管理和同
步使用一些系統調用,但這些調用的處理對于調用任務是不可見的。應用程序僅鏈接恰
當的VxWorks例程(通常使用VxWorks的動態鏈接功能),就象調用子程序一樣發出系統
調用。這種接口不象有些系統需要一個笨拙的跳轉表接口,用戶需要通過一個整數來指
定一個內核功能調用。
多任務
     內核的基本功能是提供一個多任務環境。多任務使得許多程序在表面上表現為并發
執行,而事實上內核是根據基本的調度算法使他們分段執行。每個明顯獨立的程序被成
為一個任務。每個任務擁有自己的上下文,其中包含在內核調度使該任務執行的時候它
所看到的CPU環境和系統資源。
任務狀態
     內核維護系統中的每個任務的當前狀態。狀態遷移發生在應用程序調用內核功能服
務的時候。下面定義了wind內核狀態:
     就緒態----一個任務當前除了CPU不等待任何資源
     阻塞態----一個任務由于某些資源不可獲得而被阻塞
     延遲態----一個任務睡眠一段時間
     掛起態----主要用于調試的一個輔助狀態,掛起禁止任務的執行
     任務被創建以后進入掛起態,需要通過特定的操作使被創建的任務進入就緒態,這
一操作執行速度很快,使應用程序能夠提前創建任務,并以一種快捷的方式激活該任務

調度控制
     多任務需要一個調度算法分配CPU給就緒的任務。在VxWorks中默認的調度算法是基
于優先級的搶占調度,但應用程序也可以選擇使用時間片輪轉調度。
     基于優先級搶占調度:基于優先級的搶占調度,每個任務被指定一個優先級,內核
分配CPU給處于就緒態的優先級最高的任務。調度采用搶占的方式,是因為當一個優先級
高于當前任務的任務變為就緒態時,內核將立即保存當前任務的上文,并切換到高優先
級任務的上文。VxWorks有從0到255共256個優先級。在創建的時候任務被指定一個優先
級,在任務運行的過程中可以動態地修改優先級以便跟蹤真實世界的事件優先級。外部
中斷被指定優先于任何任務的優先級,這樣能夠在任何時候搶占一個任務。
     時間片輪轉:基于優先級搶占調度可以擴充時間片輪轉調度。時間片輪轉調度允許
在相同優先級的處于就緒態的任務公平地共享CPU。沒有時間片輪轉調度,當有多個任務
在同一優先級共享處理器時,一個任務可能獨占CPU,不會被阻塞直到被一個更高優先級
的任務搶占,而不給同一優先級的其他任務運行的機會。如果時間片輪轉被使能,執行
任務的時間計數器在每個時鐘滴答遞增。當指定的時間片耗盡,計數器會被清零,該任
務被放在同一優先級任務隊列的隊尾。加入特定優先級組的新任務被放在該組任務的隊
尾,并將運行計數器初始化為零。
基本的任務函數
         用于狀態控制的基本任務函數包括一個任務的創建、刪除、掛起和喚醒。一個
任務也可以使自己睡眠一個特定的時間間隔不去運行。
許多其他任務例程提供由任務上下文獲得的狀態信息。這些例程包括訪問一個任務當前
處理器寄存器控制。
任務刪除問題
     wind內核提供防止任務被意外刪除的機制。通常,一個執行在臨界區或訪問臨界資
源的任務要被特別保護。我們設想下面的情況:一個任務獲得一些數據結構的互斥訪問
權,當它正在臨界區內執行時被另一個任務刪除。由于任務無法完成對臨界區的操作,
該數據結構可能還處于被破壞或不一致的狀態。而且,假想任務沒有機會釋放該資源,
那麼現在其他任何任務現在就不能獲得該資源,資源被凍結了。
          任何要刪除或終止一個設定了刪除保護的任務的任務將被阻塞。當被保護的任
務完成臨界區操作以后,它將取消刪除保護以使自己可以被刪除,從而解阻塞刪除任務

     正如上面所展示的,任務刪除保護通常伴有互斥操作。
     這樣,為了方便性和效率,互斥信號量包含了刪除保護選項。(參見"互斥信號量"

任務間通信
     為了提供完整的多任務系統的功能,wind內核提供了一套豐富的任務間通信與同步
的機制。這些通信功能使一個應用中各個獨立的任務協調他們的活動。
共享地址空間
     wind內核的任務間通信機制的基礎是所有任務所在的共享地址空間。通過共享地址
空間,任務能夠使用共享數據結構的指針自由地通信。管道不需要映射一塊內存區到兩
個互相通信任務的尋址空間。
          不幸的是,共享地址空間具有上述優點的同時,帶來了未被保護內存的重入訪
問的危險。UNIX操作系統通過隔離進程提供這樣的保護,但同時帶來了對于實時操作系
統來說巨大的性能損失。
互斥操作
     當一個共享地址空間簡化了數據交換,通過互斥訪問避免資源競爭就變為必要的了
。用來獲得一個資源的互斥訪問的許多機制僅在這些互斥所作用的范圍上存在差別。實
現互斥的方法包括禁止中斷、禁止任務搶占和通過信號量進行資源鎖定。
     中斷禁止:最強的互斥方法是屏蔽中斷。這樣的鎖定保證了對CPU的互斥訪問。這種
方法當然能夠解決互斥的問題,但它對于實時是不恰當的,因為它在鎖定期間阻止系統
響應外部事件。長的中斷延時對于要求有確定的響應時間的應用來說是不可接受的。
     搶占禁止:禁止搶占提供了強制性較弱的互斥方式。 當前任務運行的過程中不允許
其他任務搶占,而中斷服務程序可以執行。這也可能引起較差的實時響應,就象被禁止
中斷一樣,被阻塞的任務會有相當長時間的搶占延時,就緒態的高優先級的任務可能會
在能夠執行前被強制等待一段不可接受的時間。為避免這種情況,在可能的情況下盡量
使用信號量實現互斥。
     互斥信號量:信號量是用于鎖定共享資源訪問的基本方式。不象禁止中斷或搶占,
信號量限制了互斥操作僅作用于相關的資源。一個信號量被創建來保護資源。VxWorks的
信號量遵循Dijkstra的P()和V()操作模式。
     當一個任務請求信號量,P(), 根據在發出調用時信號量的置位或清零的狀態, 會
發生兩種情況。如果信號量處于置位態, 信號量會被清零,并且任務立即繼續執行。如
果信號量處于清零態,任務會被阻塞來等待信號量。
     當一個任務釋放信號量,V(),會發生幾種情況。如果信號量已經處于置位態,釋放
信號量不會產生任何影響。如果信號量處于清零態且沒有任務等待該信號量,信號量只
是被簡單地置位。如果信號量處于清零態且有一個或多個任務等待該信號量,最高優先
級的任務被解阻塞,信號量仍為清零態。
     通過將一些資源與信號量關聯,能夠實現互斥操作。當一個任務要操作資源,它必
須首先獲得信號量。只要任務擁有信號量,所有其他的任務由于請求該信號量而被阻塞
。當一個任務使用完該資源,它釋放信號量,允許等待該信號量的另一個任務訪問該資
源。
     Wind內核提供了二值信號量來解決互斥操作所引起的問題。 這些問題包括資源擁有
者的刪除保護,由資源競爭引起的優先級逆轉。
     刪除保護----互斥引起的一個問題會涉及到任務刪除。在由信號量保護的臨界區中
,需要防止執行任務被意外地刪除。刪除一個在臨界區執行的任務是災難性的。資源會
被破壞,保護資源的信號量會變為不可獲得,從而該資源不可被訪問。通常刪除保護是
與互斥操作共同提供的。由于這個原因,互斥信號量通常提供選項來隱含地提供前面提
到的任務刪除保護的機制。
     優先級逆轉/優先級繼承----優先級逆轉發生在一個高優先級的任務被強制等待一段
不確定的時間以便一個較低優先級的任務完成執行?紤]下面的假設:
     T1,T2和T3分別是高、中、低優先級的任務。T3通過擁有信號量而獲得相關的資源
。當T1搶占T3,為競爭使用該資源而請求相同的信號量的時候,它被阻塞。如果我們假
設T1僅被阻塞到T3使用完該資源為止,情況并不是很糟。畢竟資源是不可被搶占的。然
而,低優先級的任務并不能避免被中優先級的任務搶占,一個搶占的任務如T2將阻止T3
完成對資源的操作。這種情況可能會持續阻塞T1等待一段不可確定的時間。這種情況成
為優先級逆轉,因為盡管系統是基于優先級的調度,但卻使一個高優先級的任務等待一
個低優先級的任務完成執行。
     互斥信號量有一個選項允許實現優先級繼承的算法。優先級繼承通過在T1被阻塞期
間提升T3的優先級到T1解決了優先級逆轉引起的問題。這防止了T3,間接地防止T1,被
T2搶占。通俗地說,優先級繼承協議使一個擁有資源的任務以等待該資源的任務中優先
級最高的任務的優先級執行。當執行完成,任務釋放該資源并返回到它正常的或標準的
優先級。因此,繼承優先級的任務避免了被任何中間優先級的任務搶占。
     同步
     信號量另一種通常的用法是用于任務間的同步機制。在這種情況下,信號量代表一
個任務所等待的條件或事件。最初,信號量是在清零態。一個任務或中斷通過置位該信
號量來指示一個事件的發生。等待該信號量的任務將被阻塞直到事件發生、該信號量被
置位。一旦被解阻塞,任務就執行恰當的事件處理程序。信號量在任務同步中的應用對
于將中斷服務程序從冗長的事件處理中解放出來以縮短中斷響應時間是很有用的。
消息隊列
     消息隊列提供了在任務與中斷服務程序或其他任務間交換變長消息的一種較低層的
機制。這種機制在功能上類似于管道,但有較少的開銷。
管道、套接字、遠程過程調用和更多
     許多高層的VxWorks機制提供任務間通信的更高層的抽象,包括管道、TCP/IP套接字
、遠程過程調用和更多。為了保持裁減內核為僅包含足夠支持高層功能的一個最小函數
集的設計目標,這些特性都是基于上面描述的內核同步方式的。
3. 內核設計的優點
     wind內核的一個重要的設計特性是最小的搶占延時。其他的主要設計的優點包括史
無前例的可配置性,對不可預見的應用需求的可擴展性,在各種微處理器應用開發中的
移植性。
最小的搶占延時
     正如前面所討論的,禁止搶占是獲得代碼臨界資源互斥操作的通常手段。這種技巧
的不期望的負面影響是高的搶占延時,這可以通過盡量使用信號量實現互斥和保持臨界
區盡量緊湊被減小。但即使廣泛地使用信號量也不能解決所有的可能導致搶占延時的根
源。內核本身就是一個導致搶占延時的根源。為了理解其原因,我們必須更好地理解內
核所需的互斥操作。
內核級和任務級
     在任何多任務系統中,大量的應用是發生在一個或多個任務的上下文。然而,有些
CPU時間片不在任何任務的上下文。這些時間片發生在內核改變內部隊列或決定任務調度
。在這些時間片中,CPU在內核級執行,而非任務級。
     為了內核安全地操作它的內部的數據結構,必須有互斥操作。內核級沒有相關的任
務上下文,內核不能使用信號量保護內部鏈表。內核使用工作延期作為實現互斥的方式
。當有內核參與時,中斷服務程序調用的函數不是被直接激活,而是被放在內核的工作
隊列中。內核完成這些請求的執行而清空內核工作隊列。
     當內核正在執行已經被請求服務時系統將不響應到達內核的函數調用。可以簡單地
認為內核狀態類似于禁止搶占。如前面所討論的,搶占延時在實時系統中是不期望有的
,因為它增加了對于會引起應用任務重新調度的事件的響應時間.
     管操作系統在內核級(此時禁止搶占)完全避免消耗時間是不可能的,但減少這些
時間是很重要的。這是減少由內核執行的函數的數量的主要原因, 也是不采用統一結構
的系統設計方式的原因。例如,有一種流行的實時操作系統的每個函數都是在內核級執
行。這意味著當一個低優先級的任務在執行分配內存、獲得任務信息的函數時所有高優
先級的任務被禁止搶占。
一個最小的內核
     已經說明了一個最小內核的優點和構造高層操作系統功能的必要功能,我們使用這
些操作原語來執行一個傳統的內核級功能,而在VxWorks中作為任務級功能執行,內存管
理。 在這個例子中,考慮用戶可調用的子例程malloc, 用于分配所請求大小的內存區
并返回一個指向該內存區的指針。假定空閑內存區是通過搜索一個空閑內存塊的隊列找
到的,一個信號量必須被用來保護這個非搶占多用戶資源。分配內存的操作如下:
     獲得互斥信號量
搜索空閑內存塊鏈表
     釋放互斥信號量
     值得注意的是搜索一個足夠大的空閑內存塊的可能的冗長的時間是發生在調用任務
的上下文中。這是可以被高優先級的任務搶占的(除了信號量調用的這段執行時間)。

     在一個標準的統一結構的實時內核中,內存分配例程操作如下:
     進入內核
  

]]>
基于VxWorks實現OpenGL三維顯示尋找高手參與突破關鍵技術http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=11&ID=1421&Page=1wangxinxin2010-11-17 10:42:20基于VxWorks實現OpenGL三維顯示尋找高手參與突破關鍵技術

基于VxWorks實現OpenGL三維顯示vrchina 虛擬現實(Virtual Reality)  三維圖形 CG  GIS 游戲仿真( \' P% j9 ?) v, B. R" S0 N

中國最活躍的虛擬現實技術交流社區: g! L* q( V8 z6 h

        當前,實時嵌入式系統的發展非常迅猛,在工業控制、軍事、航空航天、手持設備等各個方面都得到了廣泛的應用.其中,為實時嵌入式系統提供友好的圖形用戶界面(GUI)成為了重要的發展方向.本論文根據實時嵌入式系統的特殊要求,針對VxWorks操作系統現有GUI部件——WindML在所支持的顯示硬件設備和圖形繪制方面的不足,對它做了功能上的擴充,并將它更名為E-UGL,意為擴展的通用圖形庫.顯示設備驅動程序是GUI的基礎.課題首先設計了針對AGP顯示設備——Intel82815顯示引擎的核心數據結構,實現了對幀緩存(Frame Buffer)機制和圖形地址重映射表(GART)機制的支持,解決了在VxWorks下AGP顯示設備的初始化問題;第二,驅動實現了對多種顯示模式的支持,最高可以達到1280×1024顯示分辨率、16位顏色、75Hz刷新頻率,解決了嵌入式系統中顯示模式單一、落后的問題;第三,用ELFA算法實現了直線段繪制函數,用中點法實現了橢圓繪制函數,使系統的圖形繪制性能有了一定程度的提高.用正負法實現了圓繪制函數,提高了繪制的精度.第四,將mesa3d的三維函數庫移植到VxWorks中,使驅動可以支持OpenGL應用;第五,在驅動中實現了雙緩存機制,提高了系統的三維圖形繪制速度;第六,在驅動中實現了可編程鍵盤,即可以對四線電阻式觸摸屏設備提供支持,使得驅動能夠適應無鼠標和鍵盤條件下的嵌入式系統.驅動不僅支持高分辨率的顯示模式和圖形繪制,而且支持無鼠標和鍵盤的應用環境.另外,代碼是自主設計和實現的,避免了封閉模塊的黑盒效應.因此,在工業控制、軍事等領域的嵌入式系統中將得到廣泛的應用. & U$ W# ~$ x7 `: x% X1 x

        雖然硬件上解決此問題已經在國外實現,但基于軟件解決基于VxWorks實現OpenGL三維顯示,仍然需要高手加盟研究關鍵技術突破點.vrchina 虛擬現實(Virtual Reality)  三維圖形 CG  GIS 游戲仿真5 W( w5 I, c* d5 w, N1 m

北航VXWORK實驗的高博士組已經宣布失敗,停止研究.北理工仿真室李老師仍然在邀請高手參與此塊,并將成果共享參與人員.謝謝.

9 Y  v# K% m: \9 v% t       如果有興趣者,XMVINI@163.COM,謝謝.bbs.vrchina.net: \5 }! n1 y) W, \! b6 d

       VINI虛擬現實,vrchina,bbs,社區,虛擬現實,vr,multigen,creator,vega,vp,virtools,ogre,osg,eon,opengl( u' A* @$ b: }6 J; m7 I

全文目錄

$ I2 N; G* {+ J5 O2 Sbbs.vrchina.net文摘

. [* x+ A' U/ k9 k0 l% y虛擬現實,vrchina,bbs,社區,虛擬現實,vr,multigen,creator,vega,vp,virtools,ogre,osg,eon,opengl英文文摘

! ]( D2 w* D) W  u  kvrchina 虛擬現實(Virtual Reality)  三維圖形 CG  GIS 游戲仿真論文說明

# x/ C  R8 }4 |! a6 D3 C8 \* I虛擬現實中國社區本人聲明

7 m& n! ^$ l: e- jvrchina 虛擬現實(Virtual Reality)  三維圖形 CG  GIS 游戲仿真第一章引言虛擬現實中國社區8 r0 Z, R" }  Q1 g( _3 F8 t* I1 _

1.1論文的背景和研究的意義

' K9 ]! _* Z% N- B5 Z- @中國最活躍的虛擬現實技術交流社區1.2嵌入式實時操作系統概況

0 Y6 O1 Q  N6 y) s. T6 u8 `$ J虛擬現實,vrchina,bbs,社區,虛擬現實,vr,multigen,creator,vega,vp,virtools,ogre,osg,eon,opengl1.3典型的嵌入式實時操作系統及其圖形用戶界面

, e, R/ Y% p' Q. A' J# q; z3 d( Sbbs.vrchina.net1.4現有系統分析虛擬現實,vrchina,bbs,社區,虛擬現實,vr,multigen,creator,vega,vp,virtools,ogre,osg,eon,opengl, f& ^* `0 S; L" ^

1.4論文的研究內容

0 h1 i* T7 Q( Z( x8 S6 jbbs.vrchina.net1.5論文的組織安排

8 c% ^$ W+ |4 i, s9 |bbs.vrchina.net第二章計算機圖形學、GUI和顯示驅動虛擬現實中國社區0 c5 p* I+ d+ }6 b! {

2.1計算機圖形學的發展及其應用vrchina 虛擬現實(Virtual Reality)  三維圖形 CG  GIS 游戲仿真: J/ U* @7 [# {( z9 {- B6 ~

2.1.1計算機圖形學硬件的發展虛擬現實中國社區/ t0 F2 G" Y0 B! f( b4 o

2.1.2計算機圖形學軟件及算法的發展

8 h; P; s# K/ m0 h; T" B& P中國最活躍的虛擬現實技術交流社區2.1.3計算機圖形學的應用虛擬現實,vrchina,bbs,社區,虛擬現實,vr,multigen,creator,vega,vp,virtools,ogre,osg,eon,opengl9 @, J! ^3 p/ |6 i, E7 d" w& W

2.2圖形用戶界面GUI簡述中國最活躍的虛擬現實技術交流社區$ {$ |1 I' K: |: Y9 V9 w

2.2.1用戶界面的發展虛擬現實,vrchina,bbs,社區,虛擬現實,vr,multigen,creator,vega,vp,virtools,ogre,osg,eon,opengl& {! g2 f0 V! a7 `

2.2.2 GUI系統的結構模型虛擬現實中國社區/ e3 ]# m- I. `/ e6 H

2.3嵌入式實時系統對GUI的特殊要求

& Q) l3 ~$ j. b  Q( T  [' N% \bbs.vrchina.net2.4嵌入式實時系統VxWorks的GUI系統--WindML虛擬現實中國社區8 ?  ^1 W( f( `

2.4.1 WindML的體系結構

6 F; f+ d( N$ R3 kbbs.vrchina.net2.4.2 WindML提供的顯示驅動程序

. _; y: t/ p" R5 B9 [( F& `: u/ w虛擬現實,vrchina,bbs,社區,虛擬現實,vr,multigen,creator,vega,vp,virtools,ogre,osg,eon,opengl2.5小結

& y( ?2 V- {9 p! s4 p. L: bvrchina 虛擬現實(Virtual Reality)  三維圖形 CG  GIS 游戲仿真第三章顯示驅動的體系結構虛擬現實中國社區4 N. [) E% v. _, J, {

3.1功能和性能要求虛擬現實,vrchina,bbs,社區,虛擬現實,vr,multigen,creator,vega,vp,virtools,ogre,osg,eon,opengl% r2 D' o5 Z" L$ K# z8 s$ Y8 n' B

3.1.1功能要求

- [9 V0 M% r+ ?8 a: q+ l虛擬現實中國社區3.1.2性能要求

+ J: _; y3 H& L; A# U: F5 e6 Svrchina 虛擬現實(Virtual Reality)  三維圖形 CG  GIS 游戲仿真3.2解決方案bbs.vrchina.net3 M3 W  H, ]5 |" h' l

3.3驅動體系結構vrchina 虛擬現實(Virtual Reality)  三維圖形 CG  GIS 游戲仿真" S$ U$ Q! B1 L% o4 N7 L

3.3.1從驅動性能的角度劃分bbs.vrchina.net% W4 ]% V4 u4 Z6 \6 H3 G- ]

3.3.2從可移植性的角度劃分bbs.vrchina.net9 Y: g+ N' _; S. \" I# z* I: }  K; A

3.3.3折中的體系結構劃分

' B3 C1 K5 p3 Y9 Mbbs.vrchina.net3.4系統功能分解vrchina 虛擬現實(Virtual Reality)  三維圖形 CG  GIS 游戲仿真5 s" ]$ }5 S0 W8 m; t* {

3.4.1驅動程序入口函數vrchina 虛擬現實(Virtual Reality)  三維圖形 CG  GIS 游戲仿真, S6 Q# e+ ~+ ~' B/ \. R+ v( L# R

3.4.2核心數據結構

' h) N# a* ]1 J- q; vvrchina 虛擬現實(Virtual Reality)  三維圖形 CG  GIS 游戲仿真3.4.3功能模塊之間的連接關系

! z& m6 b% O7 ?& Q- ^  f" A虛擬現實中國社區3.4.4顯示驅動的接口函數

/ k, h0 p! c- y4 x$ B& z3.5小結vrchina 虛擬現實(Virtual Reality)  三維圖形 CG  GIS 游戲仿真' _; B2 \7 X: ^

第四章顯示驅動的系統實現虛擬現實,vrchina,bbs,社區,虛擬現實,vr,multigen,creator,vega,vp,virtools,ogre,osg,eon,opengl8 j6 ~2 a$ S5 Y' X: @% U( B( c; T

4.1.PCI模塊的實現

6 j- j# t% F3 j! r虛擬現實,vrchina,bbs,社區,虛擬現實,vr,multigen,creator,vega,vp,virtools,ogre,osg,eon,opengl4.2 GTT功能模塊的實現中國最活躍的虛擬現實技術交流社區$ A7 K5 N. [  e( ?/ ]

4.3硬件相關功能模塊的實現虛擬現實,vrchina,bbs,社區,虛擬現實,vr,multigen,creator,vega,vp,virtools,ogre,osg,eon,opengl1 \1 c" h+ z8 O& e& v- ?% h

4.4二維繪圖功能模塊的實現

% \7 U' ]$ f8 R/ w' {7 Y中國最活躍的虛擬現實技術交流社區4.5 OpenGL功能模塊的實現  P# v" c" X! X3 T5 p- B

4.6可編程鍵盤功能模塊的實現

, [( y3 C/ U! w" Fvrchina 虛擬現實(Virtual Reality)  三維圖形 CG  GIS 游戲仿真4.7小結3 y9 F) q1 c  A4 B2 Q9 u6 H

第五章系統的技術實現

( k% C2 c5 j+ M% y6 a& s虛擬現實,vrchina,bbs,社區,虛擬現實,vr,multigen,creator,vega,vp,virtools,ogre,osg,eon,opengl5.1直線繪制函數的改進vrchina 虛擬現實(Virtual Reality)  三維圖形 CG  GIS 游戲仿真5 |& |( S# Y+ F8 ]# ?/ _9 X# ~

5.1.1通用的Bresenham算法虛擬現實,vrchina,bbs,社區,虛擬現實,vr,multigen,creator,vega,vp,virtools,ogre,osg,eon,opengl  u6 X$ Q& _* L8 d- V

5.1.2對稱的Bresenham算法3 R: B$ a: i, y4 n

5.1.3 ELFA算法虛擬現實中國社區: S3 {- g9 ^( `* f* j5 n

5.2圓繪制函數的優化虛擬現實,vrchina,bbs,社區,虛擬現實,vr,multigen,creator,vega,vp,virtools,ogre,osg,eon,opengl/ t% n' E" v. N7 m! x9 c

5.3橢圓繪制函數的優化

- _% [: `. P* Hbbs.vrchina.net5.4雙緩存技術的實現6 n. s& }% \) R: d2 S; x) a# X6 Y7 x

5.5系統實現的特點3 x, \3 ~4 B+ j! u2 q

5.6小結中國最活躍的虛擬現實技術交流社區, o  ?5 T) b. o4 O; v  ~3 h

第六章系統的實現效果vrchina 虛擬現實(Virtual Reality)  三維圖形 CG  GIS 游戲仿真0 W/ W" N) j: m/ X) n( v

6.1性能測試虛擬現實中國社區) K# `8 p4 Z! V8 ?8 R6 ]

6.1.1直線繪制算法

8 u" p8 m, p" E" L, @6.1.2圓繪制算法bbs.vrchina.net/ ~) |5 }+ \3 D& x

6.1.3橢圓繪制算法bbs.vrchina.net+ C7 i5 ?; V# d- Q

6.2功能測試

% ?4 l9 P9 Z9 \. l! P中國最活躍的虛擬現實技術交流社區6.2.1 WindML窗口系統應用

: {' Q4 g: W+ S5 f% ?* \/ Avrchina 虛擬現實(Virtual Reality)  三維圖形 CG  GIS 游戲仿真6.2.2 OpenGL應用

" U. U3 `9 E0 Z5 E4 |4 q6.2.3觸摸屏應用

7 H. v/ O" _/ r* u( c: _6 z& P2 K6 X虛擬現實,vrchina,bbs,社區,虛擬現實,vr,multigen,creator,vega,vp,virtools,ogre,osg,eon,opengl6.3小結vrchina 虛擬現實(Virtual Reality)  三維圖形 CG  GIS 游戲仿真6 w: N# V- a+ r  ]

]]>
VxWorks環境下雙冗余以太網卡技術在底層驅動中的實現http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=11&ID=1420&Page=1wangxinxin2010-11-17 10:41:19引 言

  隨著以太網的穩定性、抗干擾性和帶寬問題的逐步改善,以太網正在大規模進入工業控制領域。用于工業過程控制、通信、航天器和導航系統中的網絡對可靠性及其響應故障的快速性要求極高。當前,冗余設計作為一種提高設備可靠性的有效方法,已經得到了廣泛的應用。對于網絡系統中的單個節點,常常需要對網卡進行雙冗余備份,即每個節點都采用2塊網卡(或2個網口),中間用集線器或交換機互連,當正常通信的網卡或線路出現故障時,該節點能自動地切換到備份網卡進行通信。圖1為冗余網絡的一種典型聯接形式。

具有雙冗余網卡的節點雖然有2塊網卡,2條通道,但對于高層應用系統來說,仍呈現單網卡的特征。具體來講,2塊網卡共有1個物理地址,1個IP地址。根據TCP/IP參考模型,TCP/IP協議族可以分為應用層、傳輸層、網絡層和鏈路層4層,冗余網卡技術可以在其中各個層面中實現。

圖片點擊可在新窗口打開查看

VxWorks、MUX與網卡驅動程序

嵌入式實時操作系統VxWorks的網絡協議棧與網絡設備驅動的接口有2種:一種是標準的BSD4.4Driver,它將Driver和協議緊密關聯在一起,不利于多協議的支持;另一種標準是VxWorks特有的,它將Driver和協議棧隔離開,使二者通過一個稱為MUX的薄層相連,使得網絡服務免受特定的網絡接口驅動程序的影響,達到Driver獨立于具體協議的目的,從而實現多協議的支持,三者間的關系如圖2所示。

圖片點擊可在新窗口打開查看

目前版本的MUX支持2種網絡驅動程序接口模式:增強型網絡驅動程序接口( END)和網絡協議工具包(NPT)驅動程序接口,F以END型網卡驅動為例介紹如何在VxWorks5.4下的NE2000兼容網卡驅動程序中實現雙網卡冗余設計。正常情況下,協議驅動程序通過MUX層提供的NIC的句柄來提交請求,這個句柄是調用EndLoaD()獲得的;然后MUX層調用網卡驅動程序中的接口函數,實現高層協議驅動程序的請求。

在應用層實現雙冗余網卡技術的分析

在系統中對網卡進行雙冗余備份,即1塊網卡在正常工作時使用,另1塊網卡作為備份。備份用的網卡處于激活狀態。在正常通信的網卡出現故障或系統需要時,備份用的網卡能實時地、自動地切換到繼續工作。顯然,這就要求2塊網卡只能使用同1個物理地址和同1個IP地址。從應用程序的角度看,只會看見1塊網卡在工作,不關心是哪塊網卡在工作及如何切換。

理論上講,冗余網卡技術可以在OSI各層中實現,而且越在底層實現,檢測和切換的速度越快,效果應該越好。其他利用應用層實現雙冗余網卡的主要方法是在程序中發起任務,以查詢的方式不斷對當前工作網卡的工作狀態進行判斷,當判斷出當前使用的網卡處于非正常狀態的時候,將刪除當前網卡的路由,在主機列表中刪除當前主機名,并解除網卡與協議的綁定;然后進行備份網卡的配置:為備份網卡綁定協議,設置子網掩碼和IP地址。用此種方法實際測試,測試中使裝有雙網卡的主機不斷向外發送廣播報文,同時用網絡分析軟件接收。測得2個網口的切換時間平均為120ms,在切換期間有很多廣播報文丟失。可見在應用層實現雙網卡冗余備份技術,網卡切換速度慢,不利于網絡的可靠性和實時性。

在驅動程序中的實現

在VxWorks系統中,相同類型的網卡使用同一個驅動程序,網卡之間由驅動程序提供的句柄來區別。MUX調用NIC驅動程序的接口函數時,都會把網卡的句柄傳入函數中。這就為在驅動程序中實現雙網卡冗余備份提供了基礎。因此要實現網卡的雙冗余備份,最理想的辦法是在NIC驅動程序中實現。

數據結構
網卡驅動程序中最關鍵的數據結構是有關網卡特性的數據結構。每種網卡都有它自己的特性,包括它的單元號、中斷向量、I/O基址、物理地址等。

系統啟動時,在網卡驅動的裝載函數中ne2000EndLoad( )中,會為設備初始化1個數據結構,并分配一個指針指向這個結構。這時定義2個全局指針:

NE2000END-DEVICE * pDrvCtrl-0;
NE2000END-DEVICE * pDrvCtrl-1;

在網卡初始化時把這2個指針分別指向2塊網卡的數據結構,通過這2個指針的定義,在MUX調用NIC驅動程序的接口函數時,可以根據網卡的好壞或系統的需要來選擇pDrvCtrl-0或pDrvCtrl-1,以調整工作網卡。

發送和接收處理
在上層驅動程序通過MUX調用NIC驅動程序的發送函數時,會傳入網卡的句柄,指定要使用的網卡。通常情況下,驅動程序會根據該句柄向相應網卡發出指令,把報文發出去。在雙網卡冗余備份驅動程序中,根據需要來指定發送數據要使用的網卡,而不一定使用MUX指定的網卡。如先讀2塊網卡的Link信號寄存器,判斷網絡連線的通斷,再決定使用哪一塊網卡來發送數據。

在接收報文的時候,通常是在中斷中進行處理。因為以太網在物理層上的特點,2塊網卡都能收到報文,不同的是只有與高層協議綁定的網卡收到的數據才能向上傳遞。在雙網卡冗余備份驅動程序中,不是由MUX指定的網卡句柄來向上傳送數據,而是根據當前網卡的工作狀態向上層傳送數據,即使數據是從另一塊網卡上接收來的或另一塊網卡沒有和高層協議綁定。

單物理地址的處理
通常每塊網卡有1個全世界范圍內唯一的物理地址,它保存在網卡的PROM中。網卡初始化時,要從PROM中讀出物理地址,把它存放在適當的寄存器和數據結構中。

要使2塊網卡能相互備份,它們必須有相同的物理地址和IP地址。在雙網卡冗余備份驅動程序中,可以用其中1塊網卡的物理地址。方法有2種:在驅動程序初始化時只讀1塊網卡的PROM中的物理地址;或者在網卡驅動程序中的ne2000EnetAddrGet()函數中作修改,完全可以給網卡設定任意的物理地址(只要避免了同一網絡中的沖突)。

單IP地址處理
至于2塊網卡采用相同的IP地址,可以這樣實現:在安裝2塊網卡時,只讓1塊網卡有IP地址,另1塊網卡沒有IP地址。因為給網卡綁定IP地址是在IP協議所在的網絡層實現的,所以在網絡層以下切換網卡對上層來說是完全透明的。應用程序自始自終只看見1塊網卡在工作。圖3是從應用程序的角度看雙網卡備份的示意圖。

效果分析
通過對比實驗,在應用層實現雙網卡冗余備份的平均網卡切換時間是120ms,在驅動層實現雙網卡冗余備份的平均網卡切換時間是5ms,相對于在應用層或其他高層中實現,效率較高,大大縮短雙網卡的切換時間,從而降低切換時網絡通信丟包的機率。

圖片點擊可在新窗口打開查看

結束語

分析了VxWorks系統的網絡結構模型,提出了在系統底層驅動中實現雙網卡冗余備份功能的設想,并進行了設計實現,同時對在驅動程序中實現與在應用層中實現2種方法進行了對比,證明了在驅動程序中不但能夠很好地實現雙網卡冗余備份功能,而且提高了以太網的實時性和可靠性,在工業以太網蓬勃發展的今天,具有一定的實用意義。

]]>
vxworks(接上)http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=11&ID=1419&Page=1wangxinxin2010-11-17 10:39:27Boot Code里調用:
a.USB class driver初始化入口點;
b.USB class driver調用usbdlnitialize();
Hot-Swap code調用:
c.Hot-Swap 鑒別USB主控制器的連接或斷開;
d.Usbdlnitialize();
e.UsbdPciConfigHeaderGet():讀USB主控制器配置頭;
f.UsbdHedAttaeh():連接HCD,將其作為特定的主控制器。
   

       因為熱插拔可以在任何時刻發生,所以USBD和其Client都必須被寫成可以動態識別USB設備被插入還是被拔出。當主控制器連接到系統時,USBD 自動地鑒別與其相連的設備,并通知相關的client;同樣,拔出設備時,也要通知相關設備。重要的是,USBD 的client,比如USB class driver,在client初始化時,從不設想特定的設備已經出現;而在其他時候,這些驅動隨時檢查設備是否已經連接到系統上。

       4.4 總線任務
   

       對每一個連接到USBD 的主控制器,例如插入或拔出設備,USBD都會產生一個總線任務,來監控總線事件。一般情況下,這些任務是休眠的(不消耗CPU),只有當USB hub報告它的一個端口有變化時,它們才被喚醒。每一個USBD總線任務有VxWorks任務名:UsbdBus。
   

       雖然HCD委托USBD來管理,但有可能HCD 親自監視主控制器事件。例如WindRiver提供了UHCI和OHCI的HCD來創造這樣的任務。對于WindRiver的UHCI模塊(usbHcdUheiLib),后臺任務只是被周期地喚醒,目的是為了檢查超時IRP(用一個中斷來通知OHCI根hub發生改變)。

       用以在USBD和USB之問進行通信的client模塊,除了調用usbdlnitialize()外,必須調用usbClientRegister()使其在USBD注冊。當一個client注冊到USBD時,USBD把每一個以后將要用到的client的數據結構定位,并跟蹤那個client的請求。
   

       對于每一個client,在client注冊過程中,USBD還創建了一個callback任務。在成功注冊client后,USBD返回一個句柄USBD_CLIENT_HANDLE。以下對USBD的調用,將會用到這個句柄。當所有句柄都不需要時,可以調用usbdClientUnregister()來釋放每一個client的數據結構和callback任務。注意:此時所有client要求的任務都會被取消。

       例如:注冊一個叫USBD_TEST的client,再注銷。
       注冊:usbdClientRegister("USBD_TEST',&usbdClientHandle);
       注銷:usbdClientUnregister(usbdClientHandle);

       4.5 client回調(callback)任務
   

       USB操作是嚴格遵守時序的。例如為使中斷傳輸和同步傳輸正確工作.需要依靠時鐘中斷。在一個有幾個不同client出現的主系統中.總是有可能出現一個client打斷其它client傳輸事件的發生。WindRiver USBD建議用client callback任務來解決這個問題。許多USB事件可以導致一個USB client的callback任務。例如, 每當USBD 完成USB IRP后,client的IRP callback函數被激活。同樣,當USBD識別出一個動態連接事件后,會激活一個或更多的動態attach callback操作。但不是馬上激活這些回調操作, 而是安排合適的相應的USBD client的回調任務來執行callback。
   

       一般的情況下,每一個client的callback任務處于“休眠”態(阻塞態)。每一個client的callback,繼承了usbdClientRegister()產生的VxWorks任務優先級。這確保了每一個callback按其client的任務優先級來執行,而且可以利用優先級來寫client,保證對時間要求嚴格的USB傳輸。由于每一個client有它自己的callback任務,因此在callback期間,它們有很大的靈活性決定可以做什么。例如,允許在不破壞USBD或其它USBD client性能的條件下,使callback執行代碼運行至阻塞態。
    Client callback task有VxWorks任務名:tUsbdCln。

       4.6 USBD內部Client
   

       當第一次初始化USBD時,由USBD產生并注冊一個內部client,以跟蹤USB請求。
   

       USBD 可以產生什么類型的USB請求呢? 所有USBD與USB設備的傳輸,均利用調用USBD client的形式來完成。例如, 當一個設備第一次連接到系統時.USBD用一個控制管道(control pipe) 自動地創建設備需要的所有的control pipe,即USBD client要用usbdPipeCreate()來創建一個與USB endpoint0通話的通道,然后所有USBD 內部、外部client通過這個管道來發送諸如usbdDescriptorGet()或usbdFeatureGet()等的函數,進行操作。
   

       所以,USBD 的一個機制就是USBD 循環利用它自己的entry point,而內部chent跟蹤這些請求。

       4.7 動態連接的注冊
   

       每當一個特定類型的設備插入或拔出時,USBD client都通知上一層。利用調用usbdDynamicAttachRegister()操作,client可以指定一個callback操作,以便可以獲取這樣的通知。
   

       USB設備類型用class,subclass,protocol來區別。標準的USB 類在usb.h 中定義為USB_CLASS_XXXX。Subclass和protocol根據class來定義, 因此這些常數根據特定的class在頭文件中定義。
   

       有時, 一個client當利用usbdDynamicAttachRegister()進行注冊時,只對特定的class,subclass,protocol感興趣。例如,USB鍵盤類驅動usbkeyboardLib, 注冊了Human Device Interface (HID) 類,subclass 是USB_SUBCLASS_HID_ BOOT,protocol是USB_PROTOCOL_HID_BOOT _KEYBOARD。通過callback機制的響應,每當一個設備完全符合這樣的標準, 從設備上插入或拔出時,SBD便通知給keyboard class driver。而在其它情況下,client關注的范圍更廣泛了。常量USBD_NOTIFY(定義在usbdLib.h)可以替代任意的class,subclass,protocol。例如,USB打印機USB驅動,usbPrinterLib, 其class等于USB_CLASS_PRINTER,subclass 等于USB_SUBCLASS_PRINTER (usbPrinter.h),protocol等于USBD_ NOTIFY_ ALL。典型的,當一個client只調用一次usbdDynamicAttachRegister()時,對一個client能擁有的并發通知請求數目沒有限制。

       4.8 Node ID
   

       USB設備一般用USBD_NODE_ID來區別。從其作用來看,USBD_ NODE_ ID 是USBD 用來跟蹤一個設備的句柄。它與USB設備真正的USB地址無關。這表明client并不真正關心想要了解設備是物理上與哪一個USB主控制器相連。應用為每個設備抽象定義的Node ID, 使client可以不用考慮物理設備的連接細節以及USB地址分配, 并允許USBD 在其內部對這些進行詳細的管理。
   

       當一個client通知有一個設備連接或斷開時,USBD經常通過USBD_NODE_ID來定位設備。同樣,當一個client想通過USBD與一個特定的設備通信時,它必須向USBD傳遞那個設備的USBD_NODE_ID。

       4.9 總線編號(bus enumeration)操作
   

       usbdLib模塊提供了usbdBusCountGet(),usbdRootNodeldGet(),usbdHubPortCountGet(),usbdNodldGet()操作。它們被一起稱作總線編號操作。它們使USBD Client對連接到每一個主控制器上的設備進行編號。
   

       這些操作對于診斷程序和測試工具很有用,例如usbTool(WindRiver提供的一個測試工具)。但是,利用它們編號之后,調用者無法知道USB的拓撲結構是否變化。因此, 建議USB class driver的開發者不要用這些操作。

       4.10 數據傳輸
   

       一旦client配置完成一個設備,就開始利用USBD提供的管道和傳輸功能與設備進行數據交換。傳輸種類(分為控制、塊、中斷和同步傳輸)用一個USB_IRP數據結構來描述。 USB_IRP 的具體描述請參見HCD_FUNC_IRP_SUBM1T。USB數據傳輸被定位于每一個設備的特定endpoint。在USBD client和特定的設備endpoint之間的通道被稱作管道(pipe)。每一個管道有以下若干特性:
USBD_NODE_ID;
設備的endpoim 數目;
數據傳輸方向;
帶寬需求;
延時需求。
   

        為了和設備交換數據,client必須先創建管道。作為結果,USBD得到了一個USBD_PIPE_HANDLE,它被用于隨后對這個管道的所有client操作。
   

       當client企圖創建一個管道時,USBD會檢查是否有足夠的可用帶寬。對于中斷和同步傳輸,帶寬限制是必需的。USBD不允許把90% 以上的可用帶寬分配給中斷和同步管道;而對于控制和塊傳輸,則沒有帶寬的限制。同時,保證至少10% 的帶寬用于控制傳輸,對塊傳輸則不保證會提供任何可用帶寬。
數據傳輸的具體過程:

       (1)創建pipe :usbdPipeCreate(usbdClient Handle,nodeld,endpoint,configvalue,interface,USB_XFRTYPE_BULK,USB_ DIR_OUT,maxPacketSize,0,0,&outPipeHandle);
       (2)定義callback:ourlrpCallback(pvoid P);
       (3)初始化IRP的數據結構;
       (4)發送IRP:usbdTransfer(usbdChentHandle,outPipeHandle,&irp)。

       5 、小結
   

       USB在VxWroks下的從下至上驅動棧分為HC、UCD、USBD和Client Module四層,每一層都相對獨立,并為上一層提供了屏蔽該層次具體特征的接口。作者所說的USB驅動,實際上主要在USBD這一層次上完成。具體分為Chent注冊,注銷,創建pipe ,配置,數據發送,以及各回調函數。當正確地依次調用時, 會根據回調函數的狀態和返回值,按正確的時序進行完整的數據傳輸。
   

       上述設計思想構成了VxWorks下USB設備應用的基礎。作者的研究詳細地分析了VxWorks的USB協議棧,證明了該方案的可行性,同時又給出了合理的實現方法。作為實踐成果,作者已在VPN網關證書讀取系統中,利用該思想編寫的驅動,順利讀出存儲在USB設備中的設備證書和管理員證書,且運行情況良好。作者認為,文中提到的模型完全可以勝任解決USB設備在VxWorks下的應用所面臨的技術難題

]]>
VxWorks實時操作系統的USB驅動程序原理與分析http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=11&ID=1418&Page=1wangxinxin2010-11-17 10:38:17   

        通用串行總線(USB)作為一種中高速的數據方式,已經很普遍地應用于外設與主機的通信中。VxWorks是當今十分流行的實時操作系統,在通信、國防、工業控制、醫療設備等嵌入式實時應用領域。很多VxWorks系統中都有USB設備,可是關于USB的驅動實現并沒有相關的資料可以參考,給實際工作帶來了難題。本文通過詳細地分析VxWorks下的USB驅動棧,具體提出了其實際應用的方法,為USB在應用VxWorks的嵌入式系統的開發掃清了技術障礙。

        2、VxWorks簡介
   

        VxWorks是WindRiver公司開發的具有工業領導地位的高性能實時操作系統(Real Tim Operation System,RTOS)內核,具有先進的網絡功能。VxWorks的開放式結構和對工業標準的支持,使得開發人員易于設計高效的嵌入式系統,并可以很小的工作量移植到其它不同的處理器上。

        作為一種先進的實時操作系統,它具有以下特點:

        可裁剪微內核結構。 
        高效的任務管理:
        ① 多任務,具有256個優先級。
        ② 具有優先級排隊和循環調度。
        ③ 快速的、確定性的上下文切換。 
        靈活的任務間通訊:
        ① 三種信號燈:二進制、計數、有優先級繼承特性的互斥信號燈。
        ② 消息隊列。
        ③ 套接字(Socket)。
        ④ 共享內存。
        ⑤ 信號(Signals) 
        微秒級的中斷處理。 
        支持POSIX 1003.1b實時擴展標準。 
        支持多種物理介質及標準的、完整的TCPIP網絡協議。 
        靈活的引導方式。支持從ROM、flash、本地盤(軟盤或硬盤)或網絡引導。 
        支持多處理器并行處理。 
        快速靈活的l/O系統。 
        支持MS-DOS和RT-11文件系統。 
        支持本地盤,flash,CD-ROM 的使用。 
        完全符合ANSI C標準。 
        多個系統調用。

        3、 USB驅動程序的結構概述

        圖1提供了一個USB主驅動棧結構的簡單概括。圖2顯示了USB主驅動棧的各模塊之間的功能聯系。

圖片點擊可在新窗口打開查看

 圖1 USB主驅動棧結構簡單模型

圖片點擊可在新窗口打開查看

                                      圖2 USB主驅動棧各模塊之間的功能聯系
   

       在棧的最底部是USB主控制器(USB HC, 即USB Host Controller), 這是主系統中控制每一個USB設備的硬件部分。
   

       目前,市場上主要有兩大類USB主控制器,一種是支持由ime1公司最先提出的通用主控制器接口(Universal Host Controller Interface,簡稱UHCI),另一種是支持由微軟、康柏和國家半導體公司聯合設計提出的開放主控制器接口(Open Host Controller Interface,簡稱OHCI)。硬件廠商一般根據這兩個規范設計他們的USB主控制器。
   

       對于每一類型的主控制器都有一個與硬件獨立的USB主控制器驅動(Host Controller Driver,簡稱HCD)。WindRiver提供了兩個驅動:usbHcdUhciLib (UHCI 主控制器庫)和usbHedOheiLib (OHCI主控制器庫)。USB主驅動(USB host driver,簡稱USBD)和HCD之間的接口允許一個或超過一個的底層主控制器。而且,WindRiver的USBD能夠同時連接多個USB HCD。這樣的設計特點可以使開發者建立復雜的USB系統。
   

       USBD是在HCD之上的與硬件獨立的模塊。USBD管理每一個與主機相連的USB設備, 向更高層次提供了可與USB設備通信的路徑。它還負責自動處理USB電力管理以及USB帶寬管理。而且,USBD還管理USB hub,Hub功能是一個驅動能否對USB正確操作的評價之一。因此WindRiver的USBD設計者要使USBD透明地處理hub的功能。這意味著,USBD 還能處理USB hub和設備的動態插拔。
    USB Client模塊在USB主驅動棧的頂端。USB類驅動(USB Class Driver)是Client模塊的典型例子。USB類驅動負責管理連接到USB上的不同類型的設備; 它們依靠USBD來提供與每個設備的通信路徑。USB client模塊的其他例子就是那些利用USBD與USB設備通信的應用程序。

       4、 USBD驅動詳解
   

       這一部分將要描述USBD(USB Host Driver)的典型應用。例如初始化,client注冊,動態連接注冊,設備配置,數據傳輸,同時還探討了USBD內部設計的關鍵特性。這部分是VxWorks下USB驅動的核心。

       4.1 初始化USBD:分為兩步

       (1)必須至少調用一次函數usbdInitialize()。在一個給定的系統中,usbdlnifialize()初始化內部USBD數據結構,并依次調用其它USB驅動棧模塊的入口。usbdinitialize()可以在啟動時調用一次,也可以對每一個設備各調用一次。USBD 自己記錄了調用usbdInitialize()(‘+’)和usbdShutDown()(‘-’)的次數。只有大于等于1時才是真正初始化了,而等于0是關閉了。

       (2)用USBD 的lisbdHedAttaeh()函數來把至少一個HCD連接到USBD上。這一過程既可以在VxWorks啟動時,也可以在運行時把HCD 連接到USBD 上去。后一種機制可以支持“熱插拔”,而不用象前一種那樣需要重新啟動。

       4.2 HCD的連接(attaching)與斷開(detaching)
   

       當HCD連接到USBD 時,調用者為usbdHedattaeh函數傳遞HCD執行入口(表HCD_EXEC_FUNC)和HCD連接參數(HCD attach parameter)。USBD用HCD FNC ATYACH 服務請求依次激活HCD的執行入口,傳遞同樣的HCD attach參數。
   

       需要強調雖然可以改變用HCD定義的參數,但是最好不應該有所改變。對于WindRiver提供的UHCI和OHCI的HCD,HCI attach參數是一個指向結構PCI_CFG_HEADER (定義在pciConstants.h) 的指針。

       該結構用UHCI和OHCI主控制器的PCI配置頭來初始化,而HCD用這個結構中的信息來定位,管理特定的主控制器。典型的,調用者用usbPeiClassFind ()和usbPciConfigHeaderGet()來得到想要的主控制器的PCI配置頭- 這兩個函數定義在usbPciLib 中(stubUsbarchPciLib.h中)。如果有UHCI或OHCI要連接到USBD,就要調用這些函數來獲得每一個主控制器的PCI_CFG_HEADER。然后利用usbdHedAttaeh來激活已鑒別出的每一個主控制器。
   

       注意:底層BSP可能不支持USB的HCD斷開,因為當中斷向量表重新使能時,如果還應用的是過期的向量表,會導致錯誤。

       4.3 啟動順序
   

       必須在所有USBD函數前執行函數usbdInitialize()。存在以下兩種調用方式:
(1)傳統的“啟動”初始化。執行順序與其意義如下:
a.usbdInitialize();
b.usbdPciClassFind():定位一個USB主控制器;
c.usbdPeiConfigHeaderGet():讀USB主控制器配置頭;
d.usbdHedAttaeh():連接HCD,將其作為特定的主控制器:
e.調用USB class driver初始化入口點;
f.USB class driver調用usbdlnitialize()。

      

]]>
VxWorks環境下雙網卡冗余備份技術的實現http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=11&ID=1417&Page=1wangxinxin2010-11-17 10:36:28摘  要:在對網絡通信可靠性要求高的系統中,需要對網卡進行雙冗余備份。當正常通信的網卡或線路出現故障時能自動地切換到備份網卡。本文詳述了實時操作系統VxWorks下一種雙網卡冗余備份技術的實現。
    關鍵詞:實時操作系統
VxWorks網絡控制器;雙冗余備份

1引言
    隨著網絡技術的成熟,以太網已成為各種控制系統接口互連的主要媒介。在某些特殊的應用場合,為了提高系統的可靠性和抗毀性,需采用雙冗余網絡技術。在雙冗余網絡中,每個節點都采用兩塊網卡
(或單板雙卡),中間用兩個HUB或交換機互連。當某個節點一塊網卡故障,或網線損壞,或其中一個HUB或交換機故障時,網絡仍能正常運作。
    雙冗余網絡雖有兩塊網卡,兩條通道,但對于高層應用系統來說,仍呈現單網卡的特征。具體來講,每個節點的兩塊網卡只能有一個物理地址,一個
IP地址,否則
網絡就不能進行正常通信。
    現在大多數操作系統
(WindowsUnixLinux)均支持多網卡,但均非冗余設計,每塊網卡都有獨立的物理地址和IP地址,以獨立的形式讓應用系統使用。根據目前海軍對高性能實時系統的要求,我們對VxWorks環境下的雙網卡的切換以及冗余備份的設計方法及要點進行介紹。

2VxWorks
介紹[1][2][3]

        VxWorks
操作系統是一種具有工業領導地位的高性能嵌入式實時操作系統,是嵌入式開發環境Tornado的關鍵組成部分,它為程序員提供了良好的可靠性和卓越的實時性,因此被廣泛地應用在通信、軍事、航空、航天等高精尖技術及實時性要求極高的領域中。
    就廣泛使用的
UnixWindows操作系統來說,它們都是很好的應用開發和交互式應用的操作系統平臺,然而他們并不適合于實時應用。而從另一方面考慮,以前出現的實時操作系統都沒有為應用開發和應用的非實時組件(譬如向GUI)提供很好的運行環境。而Wind River的哲學是利用兩個相互協作的操作系統來互相補充對方的不足(譬如VxWorksWindows),讓他們各盡所長。VxWorks為應用提供實時性,而主機被用來進行應用開發和運行非實時的應用程序。

3冗余切換
    在系統的運行中設備由于硬件或軟件原因出現故障是時有發生的事。采用有效的防錯容錯機制對一個需要穩定運行的系統是必需的。冗余備份技術是對容易出錯的硬件設備進行冗余備份。當其中一個設備由于某種原因不能正常工作時,另一個設備馬上就可以代替這個設備完成相同的功能。本文只是針對網絡因素導致系統故障的情況分析對網絡適配器的一種可行的錯誤保護機制。
    通常如果在某一系統中安裝兩塊網卡,它們分別有不同的物理和
IP地址。當其中一塊網卡出現故障時,另一塊網卡不能實時地代替它繼續工作,這是因為它們的物理地址不同,所以它不能接受到發向前一塊網卡的數據。但在對網絡通信可靠性要求高的系統中,需要對網卡進行雙冗余備份,一塊網卡在正常工作時使用,另一塊網卡作為備份。備份用的網卡不發送或接收數據,但已經處于激活狀態。在正常通信的網卡出現故障時,備份用的網卡能實時地、自動地切換過來繼續工作。顯然,這就要求兩塊網卡只能使用同一個物理地址和同一個IP地址。從應用程序的角度看,只會看見一塊網卡在工作。應用程序不關心是哪塊網卡在工作,也不關心網卡之間是如何切換的。
    在
VxWorks系統中,相同類型的網卡使用同一個驅動程序,網卡之間由NDIS提供的句柄來區別。NDIS調用NIC驅動程序的接口函數時,都會把網卡的句柄傳入函數中。這就為在驅動程序中實現冗余備份提供了基礎。雙網卡驅動程序實現后與高層協議驅動程序綁定在一起,對應用程序完全透明。因此要實現網卡的雙冗余備份,最理想的辦法是在NIC驅動程序中實現。但是如果采取這樣的方式我們必須要有VxWorks下的所用網卡的驅動程序,而對于一般的用戶而言,開發這樣一個驅動程序的難度是很大的。目前也有一些研究單位完成了這些工作,但是它們要求的價格過高,軟硬件共需要15000元左右,這對于一般小型用戶是比較高的。所以我們選擇在
基本不影響冗余備份效果的基礎上,在高層的用戶程序中實現這一目標。
    在早期的
VxWorks51x中,系統是不支持多網卡的。通常,VxWorks在啟動時僅僅對引導它啟動的那塊網卡進行初始化。如果需要在某一特定的目標機上從一塊網卡換到另一塊網卡(例如從ene型換到ENP型的網卡),我們可以通過系統提供的函數以及來實現網卡間的切換。我們所需要做的是連接所需要的網卡并刪除前一個網卡的路由。我們可以調用特定網卡的連接函數:enpattach(),enettach()等等。例如enpattach()函數為網卡連接中斷并建立enpsoftc
,系統將為該網卡作相應的初始化。
        enpattach (0,0xffde0000,1923)

    /
*參數依次為:網卡在系統中的單元號,enp's的共享內存地址,要連接的中斷向量,中斷級*
    需要說明的是,在
VxWorks 51下雖然這些連接函數都有一個unitNum參數,似乎可以支持多個網卡。但其實并非這樣,在后面的敘述中我們可以看到它沒有IP MAX UNITS這個宏的定義,所以并不支持多網卡,unitNum的值一直是0,讀者們可以在源代碼中查看一下。
    因為當
VxWorks啟動時它將一個缺省的網絡接口加載到網絡接口表中,所以在連接到需要的網卡后需要再調用ifRouteDelete()函數以刪除連接到某一指定網卡上的路
由。

    這樣就完成了VxWorks51下多網卡之間的的切換。

    就
VxWorks 54來說,它本身是支持多網卡的。以下我們描述SBS PC104系統如何在VxWorks下支持多個網絡適配器的軟件冗余切換(ne2000型為例)
    首先我們需要通過網卡配置程序對硬件環境中的所有網絡適配器進行
IO基址和IO中斷的配置。本文假設系統中只有兩個網絡適配器,其IO基址和IO中斷號如下所述。實際系統中可能會有多個網絡適配器,其配置方法可依法類推,只要網卡的IO基址和IO中斷不會和系統中的其他設備沖突即可。

]]>
基于VxWorks的嵌入式實時PLC設計http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=11&ID=1416&Page=1wangxinxin2010-11-17 10:34:16如圖可見 BSP 為上層軟件與底層硬件之間進行交互的橋梁,為上層提供統一接口。BSP中包括的驅動程序與具體的硬件相關,在移植到不同的硬件系統的時候,要修改相關的驅動。
4.2 VxWorks BSP 的特點在眾多的商用嵌入式實時操作系統中,VxWorks 是使用極為廣泛的一種操作系統,它
實時性強,占用空間小,提供豐富的網絡協議,有眾多的調試手段。VxWorks 的BSP 可以按功能分為兩大部分。
1)目標系統的系統引導部分:主要是目標系統啟動時的硬件初始化,在目標系統上電后開始執行,主要是配置處理器的工作狀態,初始化系統的內存等,這部分的程序一般只在系統引導時執行,為操作系統運行提供硬件環境。
2)目標系統的設備驅動程序:主要是驅動目標系統配置的各種設備,包括字符型設備、塊存儲設備、網絡設備等,這些設備驅動程序完成對硬件的配置,操作系統通過設備驅動程序來訪問硬件,從而完成讀取數據和外界的交互等。在實際應用中,為了獲得更好的穩定性和執行效率,許多設備驅動程序會直接和應用程序捆綁在一起,而不是由操作系統來管理。
4.3 BSP 的設計與修改
WRS 提供了大量預制的,支持許多商業主版或評估板的BSP,減少了開發時間。
宏觀來看,BSP 包括兩部分:
初始化部分:CPU 初始化;目標板初始化;操作系統的初始化。
驅動程序部分:一般要包括時鐘、中斷、串口驅動。
具體來看,BSP 包括源文件、頭文件、派生文件。主要需要修改VxWorks 源碼中的以
下目錄中:
/target/config/all
幾個重要文件的功用如下:
1)bootConfig.c:引導ROM 映像的主要初始化和控制文件。
2)bootInit.c:引導ROM 映像的第二階段的初始化代碼。實現romStart 函數--romInit.s
中的romInit()函數執行完后跳轉到romStart(),執行解壓縮,代碼/數據段從rom 拷到ram。
3)usrConfig.c:VxWorks 映像的主要初始化代碼。
/target/config/comps/vxworks:實時內核基本模塊描述(cdf)文件。
/target/config/comps/src:實時內核模塊配置文件。供usrconfig.c 使用。
/target/config/bspname 該目錄下的文件就是要編寫的BSP 文件。
由于 BSP 系統開發的硬件相關性和處理器系列的多樣性,不可能有一種通用的程序或方法來解決每一種處理器的BSP 問題,所以必須具體問題具體分析,不斷實踐,才能使程序運行達到比較高的效率。
5、其它
另外,VxWorks 的多任務任務調度策略的實施也是實現嵌入式PLC 的一個關鍵點,確保高優先級任務在確定的時間內能被執行,并對外部的異步事件作出及時響應。多任務環境允許一個實時應用作為一系列獨立任務來運行,各任務有各自的線程和系統資源。VxWorks系統提供了多處理器間和任務間高效的信號燈、消息隊列、管道、網絡透明的套接字。并具有實時系統的另一關鍵特性是硬件中斷處理。為了獲得快速可靠的中斷響應,VxWorks 系統的中斷服務程序(ISR)有自己的上下文。鑒于篇幅關系,在本文不做詳細討論。
6、總結與展望
嵌入式系統已經成為歷史發展的必然,其極佳的可擴展性,對多種硬件的支持,同時能夠提高PLC 的運行速度和可靠性,并且支持多任務的控制策略,對PLC 的性能有了很大的提高。通過現場運行調試,對現場I/O 設備進行監控,達到了預期的實時性要求,實現了通過現場總線或TCP/IP 通信協議與硬件層(I/O)高速的響應目標。新型的基于VxWorks 的嵌入式實時PLC 具有很高的性能價格比,具有市場競爭優勢,有助于我國PLC 企業發展本國市場,發展自主產業的PLC。

]]>
VxWorks在AT91RM9200上BSP設計方案http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=11&ID=1415&Page=1wangxinxin2010-11-17 10:31:251 bsp理念
  bsp通常是指針對具體硬件平臺,用戶所編寫運行源代碼與部分設備軟件驅動程序集合。它所解決方案功能包括初始化與軟件驅動部分設備。最基本bsp僅需支持處理器復位,初始化,軟件驅動串口與必要時鐘處理。bsp是相對于操作方法系統而言,不同操作方法系統對應不同形式bsp,因此,在寫bsp時一定要按照條件操作方法系統對bsp定義形式來寫。在vxworks系統中,bsp是介于底層硬件環境與vxworks的間一個軟件接口,它主要功能是系統加電后初始化目標機硬件與vxworks,并供應部分硬件軟件驅動程序。bsp在vxworks系統中層次關系如圖1所示。
  bsp為各種板卡硬件功能供應了統一軟件接口,包括硬件初始化,中斷捕捉與處理,硬件時鐘與定時器管理,內存地址映射,對及內存分配等。每個bsp還包括一個rom運行或其他運行機制。
2 vxworks引導過程
  在編寫bsp的前,首先要了解整個系統運行過程。vxworks映像由源代碼段,數據段與bss段3部分結合。vxwotks內核能分為3種:可加載種類映像,romvxworks映像與rom駐留型映像。這3種種類映像組織是不一樣,因此運行過程有所差別。
  可加載映像包括vxworks與boot rom兩部分內容,兩部分是獨立建立。首先,由系統引導源代碼把rom引導程序搬到ram_high_adrs。然后,rom引導程序開始啟動,將vxworks映像加載到ram_low_adrs,的后跳轉到vxworks映像裝入點。
  romvxworks映像在bsp初始化時,會把lmage完全搬到ram中執行,包括源代碼段與數據段。在拷貝執行完畢后,系統控制權轉移給ram中vxworks映像初始化源代碼。
  rom駐留型映像僅僅是將rom中vxworks映像數據段與bss段拷貝到ram中,完成后系統控制權轉移給rom/flash里vxworks映像初始化源代碼,源代碼段留在rom中并在rom中啟動。在rom中啟動vxworks映像主要足為了節省ram空間,帶來不利則是啟動速度慢。
  圖2與圖3分別是下載型與rom型vxworks映像初始化過程。
下面臨rom型vxworks內核運行過程為例,說明各文件用處:
  romlnit()保存運行種類,屏蔽中斷;初始化內存與寄存器,屏蔽cache;初始化cpu,將堆棧指針定位于被拷貝boot rom映像在ram地址;跳到romstart()。
  rorastart()根據不同映像種類將vxworks映像不同部分解壓縮<如果需)并加載到ram中。
  usrinit() 對vxworks映像bss段清零;調用intvecbaseset()設置中斷矢量基地址表;調用excvecinit()初始化異常中斷矢量;調用syshwinit()初始化系統硬件;調用usrkernelinit()初始化wind內核;調用kernellnit()運行wind內核,運行usrroot()任務。
  usrroot()設置操作方法系統時鐘,建立設備,安裝軟件驅動,調用syshwinit2()安裝系統時鐘與輔助時鐘中斷對及串口等設備中斷,初始化i/o,文件系統,調用應用程序軟件。
3 vxworks在at91rm9200上bsp設計方案
3.1 at91rm9200介紹
  at91rm9200片上資源包括:arm920t處理器棱,16kb內部sram與128kb內部rom存儲器;支持sdram,sram,burst flash與compactflash,smartmedia對及nandflash無縫連接;16kb數據cache,16kb指令cache,完全可編程代碼外部總線接口ebi,4個32位pio控制器能達到122個可編程代碼i/o引腳(每個都有輸入控制,可中斷及開路輸出能力);帶有8個優先級,可單獨屏蔽中斷源先進中斷控制器,6組硬件定時器,4個通用同步/異步收發器usart。
3.2 bsp中幾個顯要文件修改
  由于at91rm9200內核是arm920t,所對bsp文件主要在vxworks編澤環境tornado目錄target/config/all與target/config/integrator920t文件夾里。其中,a11文件夾里文件對于絕大多數bsp都是共用,普通來說不需修改,特別是“configall.h”;integrator920t文件夾里文件就是所要編寫bsp文件,這些文件往往及系統硬件密切關聯。
3.2.1 修改makeflie
  makefile文件定義編譯與鏈接整個bsp規則,如編譯工具選擇,編譯選項與包含文件路徑等;控制生成vxworks映像文件種類,同時含有存儲區大小資料,對于存儲區大小資料改動必須及config.h對應改動同步。有些型號參數需在該文件中定義,如處理器種類,編譯工具,目標地址等。下面說明一些須修改型號參數與地址:
3.2.2 修改config.h
  config.h文件包含了所有頭文件與及cpu關聯特殊定義。vxworks內核組件設置由config.h文件定義。config.h中主要修改內容有定義引導行與修改地址。
(1)定義引導行
  其中,mac(o,0)為at91rm9200IC中emac設備;host為主機名;vxworks為要下載文件名;h為主機ip地址;e為目標板ip地址;u為用戶名;pw為密碼;tn為目標板名稱。
(2)修改地址
  該文件中地址定義,如rom_text_adrs,rom_size,ram_low_adr,sram_high_size等要及makefik文件中關聯定義一致。本設計方案中源代碼段存儲在連接armIC外部片選cso上flash里面,基地址為oxl0000000,因此.定義如下:
  vxworks缺省設置由configall.h來確定。普通來說,缺省設置設置及自行研發硬件系統設置不同,用戶可通過cotlfig.h來改變缺省設置。用戶須查看configall.h,并在config.h中將不需軟硬件設置與初始化去掉。例如,缺省設置中普通包含浮點處理器,而at9lrm9200中沒有浮點寄存器,因此就要刪掉關聯設置。
3.2.3 修改integrator920t.c
  該文件中設置所有非可選,及at91rm9200IC關聯資料,如各硬件關聯寄存器地址定義,設備寄存器中對應位定義,各硬件中斷矢量與中斷優先級定義,dbug與usart控制,網口定義,系統時鐘與輔助時鐘型號參數設置等。vxworks所要運用目標板包含設備軟件驅動程序頭文什應當包含在該文件開始。該文件中各項宏定義均是at91rm9200IC,并根據具體條件定義。例如,電源管理控制器中用到兩個鎖相環plla與pllb,對它們部分型號參數設定源代碼如下:
3 2.4 修改rornlnit.s
  該文件包含引導rom與romvxworks映像入口初始化匯編源代碼。入口點為rominit()函數,是系統加電運行后首先執行源代碼。主要功能是:保存運行種類,使處理器復位;初始化flash與sdram;設置mmu到已知狀態;指令cache使能;初始化mmu控制寄存器(指令32位,數據32位,寫緩沖使能);開漏寫緩沖,并且使指令與數據cache都兀效;通過設置cpsrirq禁止位,fir禁止位與先進中斷控制器aic中中斷禁止寄存器來屏蔽中斷,跳轉到bootinit.c中rom-start(),同時傳遞運行種類。其中,中斷屏蔽源代碼如下:
  在調試這段源代碼時,由于串口與網口都沒有運行,因此僅僅能通過點燈程序來跟蹤程序執行情況,設置不同led亮來顯示程序執行到哪一步。例如,如果要并行輸入/輸出口c32位中第15位亮,則能編程代碼為;
  在編寫本文件時,需注意地方是:不要在該文件里進行過多初始化操作方法,大部分硬件初始化操作方法在syslib.c文件中syshwinit()函數中進行。
3.2.5 修改syslib c
  syslib.c是bsp初始化核心源代碼。在這個文件中,必須復位所有硬件,使其處于初始化狀態,保證后面開中斷后不會產生假中斷。這個文件包含了由目標機體系構造決定,及系統關于c程序。這些c程序供應板級接口。這些接口,vxworks與應用程序軟件構造及系統無關。該文件功能包括:定義了rram,sram,rom,外部片選IC物理地址與虛擬地址;定義中斷優先級寄存器中各個位對應優先級;調用syshwinit()初始化串口與網口,安裝irq/svc中斷堆棧分配程序;總線中斷功能等。本文件中有兩個顯要函數:syshwinit()與syshwinit2()。syshwinit()源代碼如下:
  syshwinit2()用來連接系統中斷,安裝isr,進行其他設置。它在初始化系統時鐘時,由sysclkconnect()調用,主要用來初始化中斷庫與中斷軟件驅動,安裝系統時鐘與輔助時鐘中斷對及串口等設備中斷。
4 編譯生成映像
  系統定制完成后,有兩種編譯方法:一種是在tornado下進行編譯,生成映像文件;另一種是直接用make工具編譯,但要寫好腳本文件。裝載到目標板中vxworks映像取決于運用下載方法,其中主要包括對下多種:
  ①vxworks。這是ram映像,vxworks需通過目標板上引導程序從串口或網口把它下載到目標板ram中啟動。在tornado研發環境下,這是一個默認選項,主要用在調試階段。運用宿主機上windsh工具與符號表。
  ②vxworks.st。這也是ram映像,需通過引導rom把vxworks映像下載到目標機內存中才能執行。該對象文件內置符號表。
  ③vxworks_rom。這是一個非壓縮,rom映像。在這個對象文件執行前,先把自己拷貝到目標機ram中。這種種類映像通常在運行階段速度相比較慢,因為源代碼在rom中執行,但執行階段比rom駐留型映像要快。
 、躹xworks.st_rom。這是rom壓縮vxworks映像。它在執行前先把自己解壓并拷貝到目標機ram中執行。
 、輛xworks.res_rom。這是rom駐留型非壓縮vxworks映像。它在執行前把數據段拷貝到目標機ram中。這種種類映像在運行階段相比較快,但在目標機上執行速度比rom種類映像慢(因為cpu訪問rom比訪問ram要慢)。通常在ram空間相比較小目標機上運用這種種類映像。
5 需注意難題
  首先,應該避免在rominit.s中進行過多初始化操作方法。該史件中僅僅是進行必要最小硬件初始化,大部分硬件初始化都是在syshwinit()中完成。另外,romtnit.s中源代碼不應當被其他模塊或函數調用。
  其次,應該避免sysalib.s中工作太少。bsp研發人員通常錯誤地認為在rominit.s里初始化過設備不需在sysalib.s中從新初始化。實際上,vxworks映像并不認為它是由引導映像程序引導,因此,它必須從新設置與初始化所有它自己需運用設備。sysinit()是該文件中最主要一個函數,也是第一個函數。該例程中很多工作及rominit()是相同,目是保證內核映像在啟動及冷運行時,軟硬件環境高度一致。
  最后,對特定bsf。軟件驅動程序修改,僅僅能在特定bsp目錄下。此設計方案中目錄為target/config/integra-tor920t,不要直接在target/src/drv對及target/h/drv中修改。僅僅有風河公司源程序才能存放在這些目錄下。
6 結論
  本文在說明bsp理念,用處與vxworks映像類別對及系統運行過程基礎上,對atmel公司生產arm9處理器at91rm9200為例,重點說明了vxworksbsp設計方案中需修改幾個顯要文件,最后提出了需注意難題。盡管目標板硬件不同,bsp解決方案也不盡相同,但基本思想是一樣。本設計方案對各類研發板系統移植與后續應用程序軟件研發有一定參考價值
]]>
VxWorks實時內核調度的研究分析http://www.022-oo.cn/bbs/dispbbs.asp?BoardID=11&ID=1414&Page=1wangxinxin2010-11-17 10:30:34點擊看原圖


圖2  引入中級調度的進程調度的調度隊列模型


      4  VxWorks 實時內核Wind 調度分析Wind 內核缺省調度機制為基于優先級的搶占式調度。采用這種機制時,系統把處理機分配給優先級最高的進程,使之執行。一旦出現了另一個優先級更高的進程時,進程調度程序剝奪當前任務的執行,將處理機分配給高優先級任務。而在相同優先級的多個任務之間,采用時間片輪
轉調度機制。采用這種機制時,當一個任務到達時,它被排在輪轉隊列的后面,等待分配給自己的間片的到來,如果在時間片內沒有結束,則再等待屬于自己的時間片的到來,直到任務完成。


      4. 1  基于優先級的搶占式調度
     采用基于優先級的搶占式調度,系統中每個任務都有一個介于最高0 到最低255 之間的優先級。任一時刻,系統內核一旦發現一個優先級更高的任務轉變為就緒態,內核就保存當前任務的上下文并把當前任務狀態轉換為阻塞態,同時切換到這個高優先級任務的上下文執行。如圖3 ,低優先級的task1 被中優先級的task2 搶占,task2又被高優先級的task3 搶占。

點擊看原圖


圖3  基于優先級的搶占式調度


      4. 2  輪轉調度算法
     采用輪轉調度算法,系統讓處于就緒態的優先級相同的一組任務依次輪流執行預先確定長度的時間片。這是一種處理機平均分配的方法。如果不使用輪轉調度算法,優先級相同的一組任務中第一個獲得處理機的任務將不會被阻塞而獨占處理機,如果沒有阻塞或其他情況發生,它不會放棄處理機的使用權。如圖4 , 相同優先級的task1 、task2 和task3 平均分配預先確定的處理機時間片。

點擊看原圖


圖4  優先級相同輪轉調度


      4. 3  基于優先級的搶占式調度與輪轉調度相結合有時,基于優先級的搶占式調度可與輪轉調度相結合。當優先級相同的一組任務依次輪流平均分配處理機時,若有高優先級的任務轉變為就緒態則可搶占該組任務。直到再一次符合執行條件時,該組任務才可再次共享處理機。如圖5 ,相同優先級的task1 、task2 和task3 輪流占有處理機時,高于該組優先級的task4 搶占處理機,等task4執行結束,該組任務再次共享處理機。


VxWorks實時內核調度的研究分析]]>
主站蜘蛛池模板: 99ri国产 | 久久久精品成人 | 精品一区二区三区在线观看视频 | 偷国内自拍视频在线观看 | 久久久久免费精品国产小说色大师 | 日韩精品一区二区三区中文在线 | 欧美不卡三区 | 在线观看va | 日韩欧美在线播放 | 激情图片网站 | 精品永久久福利一区二区 | 色欲香天天天综合网站小说 | 亚洲国产成人久久综合碰 | 日韩欧美午夜 | 伊人久久香 | 国产伦理精品一区二区三区观看体验 | 91精品国产麻豆国产自产在线 | 国产亚洲精品久 | 中国老妇女毛茸茸bbwbabes | 国产成人无码av在线播放无广告 | 无码喷水一区二区浪潮av | 亚洲国产综合精品 在线 一区 | 亚洲综合国产成人无码 | 午夜精品久久久久久久久久久 | 天天影视网天天综合色 | 99久久精品国产导航 | 男人边吃奶边做好爽免费视频 | 日韩五码 | 成人片无码免费播放 | 人妻中文无码就熟专区 | 日本不卡网站 | 日本麻豆一区二区三区视频 | 99国产精品欧美一区二区三区 | 中文字幕a片视频一区二区 成年无码av片在线 丝袜国产一区av在线观看 | 天天摸天天 | 免费无码成人av电影在线播放 | 东北女性一乱一交一情一色 | 一级免费在线 | 日本久久精品一区二区三区 | 操操操天天操 | 欧美不卡一二三区 | av在线天堂 | 国产在线无码精品无码 | 91小视频在线 | 成人福利视频网站 | 国产乱码精品一区二三区蜜臂 | 亚洲成a人片在线视频 | 免费无码黄十八禁网站 | 四虎永久在线精品免费视频观看 | 色视频网站免费看 | 久久都是精品 | 女人18毛片水真多免费看 | 欧美精品日日鲁夜夜添 | 日本极品少妇videossexhd 九色porny丨自拍视频 | 亚洲美女自拍视频 | 日韩av无卡无码午夜观看 | 亚洲一本大道无码av天堂 | 黄色视屏在线 | 国产极品车模吞精高潮呻吟 | 中文字幕av一区二区 | 精品久久久久久人妻无码中文字幕 | 日本三级视频 | 国产亚av手机在线观看 | 亚洲精品有码在线观看 | 狠狠色噜噜狠狠色综合久 | 久久久久久久久免费 | 久久亚洲日韩av一区二区三区 | 免费无码又黄又爽又刺激 | 国产精品偷伦视频免费观看了软件 | 韩国无码无遮挡在线观看 | 区一区二区三区中文字幕 | 国产真实野战在线视频 | 国产亚洲成av人片在线观看下载 | 亚洲精品久久久久国产 | 欧美成人一区二区三区片免费 | 日韩欧美一区视频 | www.桃色 | 91青青青 | 夜夜春很很躁夜夜躁 | 性视频在线| 国产日本免费 | 精品国产人成亚洲区 | 久久永久免费人妻精品直播 | 国产精品亚洲第一区 | 日韩一级二级三级 | 国产成人无码一区二区三区在线 | 在线vr极品专区 | 日本免费在线观看视频 | 成人欧美一区二区三区在线湿哒哒 | 日日躁夜夜躁狠狠躁 | 国产一区二区波多野结衣 | 激情一区二区三区欧美 | 亚洲精品蜜桃久久久久久 | 朝鲜女人大白屁股ass | 国产综合成人亚洲区 | 99国产精品自拍 | 日韩porn | 麻豆久久久9性大片 | 欧美射射射 | 国产裸体视频网站 | 偷偷操网站| 国产成人亚洲精品无码综合原创 | 欧美wwwwww | 欧美亚洲综合视频 | 国产亚洲精品久久久久秋霞不卡 | 国产无遮挡免费观看视频网站 | 婷婷五月六月综合缴情 | 国产精品久久久久久久妇 | 国产午夜精品久久精品电影 | 精品国产女主播在线观看 | 国产高清在线精品一区下载 | 在线亚洲午夜理论av大片 | 香蕉视频黄污 | 无码日韩人妻av一区二区三区 | 福利视频99 | 亚洲国产成人精品无码区四虎 | 久久伊人免费 | 黑人操bb| 精品亚洲aⅴ无码一区二区三区 | 免费女女同性av网站 | 日本欧美一区二区三区在线播放 | 国产精品对白一区二区三区 | 日本中文字幕一区二区高清在线 | 91污视频在线观看 | 欧美变态另类xxxx | 无套熟女av呻吟在线观看 | 久久999精品久久久有什么优势 | 亚洲综合电影小说图片区 | 国产精品二区一区 | 欧美综合久久久 | 久久欧美精品久久天美腿丝袜 | 久久久这里有精品 | 中文字幕第99页 | 无码专区 丝袜美腿 制服师生 | 久久久无码精品一区二区三区蜜桃 | 在线最全导航精品福利av | 草草影院网址 | 欧美中文字幕在线 | 亚洲性日韩精品一区二区三区 | 国产白丝喷水娇喘视频 | 男ji大巴进入女人的视频小说 | 亚洲一卡二新区乱码绿踪林 | 一级片特级片 | 亚洲aⅴ无码专区在线观看春色 | 国产福利资源在线 | 天堂亚洲免费视频 | 国产青青视频 | 欧美大片免费高清观看 | 亚洲精品一级二级 | 亚洲阿v天堂在线2017免费 | 国产成人无码a区在线视频无码dvd | 欧洲亚洲国产精品 | 丰满熟女人妻中文字幕免费 | 成人黄色网址在线观看 | 亚洲另类欧美日韩 | 精品国产99高清一区二区三区 | 九九热伊人 | 岛国精品一区二区三区 | 在线亚洲一区二区 | 永久中文字幕 | xx色综合 | 中文在线日韩 | 久久久韩国 | 午夜无码福利伦利理免 | 久久精品国产一区二区电影 | 精品人妻无码区在线视频 | 国产永久免费观看久久黄av片 | 久久综合久久88中字幕文 | 国产又a又黄又潮娇喘视频 精品伊人久久 | 夜色www国产精品资源站 | 国产精品欧美精品 | 97成人啪啪网 | 人人妻人人妻人人片色av | 91久久国产综合久久91 | 成人网站在线进入爽爽爽 | 久久99精品久久久久麻豆 | 久草福利资源站 | 青青草无码精品伊人久久 | 亚洲精品视频久久 | 超碰色偷偷 | 一区二区三区精品视频日本 | 色欲网天天无码av | 日韩一区二区三免费高清 | 人妻在卧室被老板疯狂进入 | 日韩久久高清 | 91成年影院 | 亚洲视频一区二区在线 | 女人被狂爆到高潮免费视频 | 女人喷潮视频免费观看 | 亚洲红桃视频 | 亚洲中文字幕久久精品无码喷水 | 国产乱理伦片在线观看 | 国产高清一区二区三区 | 五月丁香激激情亚洲综合 | 手机在线你懂的 | 久久中文字幕av一区二区不卡 | 国产美女www | 老司机一区二区三区 | 伊人婷婷色香五月综合缴缴情 | 一区二区免费播放 | 国产普通话对白刺激 | 中国白嫩丰满少妇xxxxx明星 | 国产老头和老太xxxxx视频 | 亚洲深夜| 免费av网站大全 | 忘忧草日本社区在线播放 | 尤物视频在线播放 | 亚洲欧美综合精品久久成人网无毒不卡 | 免费在线黄色网址 | 久久婷婷国产综合一区二区 | 日本三级韩国三级在线观看 | 天天成人 | y111111国产精品久久婷婷 | 精品一区二区在线观看视频 | 日日躁夜夜躁狠狠躁aⅴ蜜 亚洲午夜精品在线观看 | 国产成人精品午夜视频 | 伊人色爱| 一出一进一爽一粗一大视频 | 香蕉午夜福利院 | 亚洲a无码综合a国产av中文 | av永久天堂一区二区三区 | 超碰免费观看 | 日本精品中文字幕在线播放 | 欧美激情精品久久久久久 | 少妇高潮太爽了在线视频 | 中文字幕第3页 | 欧美黑人激情 | 蜜桃视频在线观看免费视频网站www | 狠狠干在线视频 | 超碰97人人模人人爽人人喊 | 国产综合视频在线 | 五月婷婷综合在线视频 | 三级全黄视频 | 伊人青青 | 亚洲精品免费在线观看视频 | 日本精品久久久久久草草 | 久久亚洲sm情趣捆绑调教 | 天堂国产在线观看 | 国产成人97精品免费看片 | 国产乱码二卡3卡四卡 | 嫩草影院入口2023 | 亚洲另类专区av | 538久久| 18岁女人毛片 | av资源在线看 | 国产成人8x视频网站入口 | 爱情岛论坛网亚洲品质 | 国产黄片毛片 | 国产中文字幕在线 | 亚洲理论在线观看 | 午夜爽爽爽男女免费观看一区二区 | 久久综合噜噜激激的五月天 | 另类亚洲专区 | 国产网站一区二区 | 538精品在线观看 | 欧美熟色妇 | 波多野结衣av一区二区全免费观看 | 国产nv在线观看 | 成年奭片免费观看视频天天看 | 久久久久9999| 91丨九色丨蝌蚪丨少妇在线观看 | 欧美日韩网址 | 无码中文字幕va精品影院 | 五月天丁香在线 | 久久精品欧美一区二区三区不卡 | 欧美另类bbbxxxxx另类 | 免费男人和女人牲交视频全黄 | 又色又爽又黄又刺激免费 | 日本大码a∨欧美在线 | 国产无套丰满白嫩对白 | 国产精品人妻熟女男人的天堂 | 亚洲18色成人网站www | 欧美性猛交一区二区三区精品 | 亚洲夜夜夜 | 日韩国产高清一区二区 | 亚洲色图第一区 | 欧美州大乳艳妇裸体 | 午夜精品一区二区三区免费视频 | 成年男人裸j照无遮挡无码 亚洲国产精品美女久久久久 | 人人妻人人澡人人爽不卡视频 | 国产精品自产拍在线18禁 | 超碰美女 | 特黄aaaaaaaaa真人毛片 | 国产97人妻人人做人碰人人爽 | 欧美精品a片久久www慈禧 | 欧美在线不卡视频 | 中文字幕第十一页 | 天天综合网久久综合免费人成 | 国产精品久久久久9999不卡 | 日本午夜免费啪视频在线 | 国产男女激情视频 | 免费久久一级欧美特大黄 | 亚洲xxxx做受欧美 | 亚洲精品一区二区在线 | 久久99国产综合精品免费 | 国产成人精品福利一区二区 | 福利微拍一区二区 | 老司机午夜激情 | 日本99精品 | 久久精品国产77777蜜臀 | 99热婷婷| 99九九99九九九99九他书对 | 国产精品911| 欧美成人在线免费观看 | 一本色道久久综合亚洲精品小说 | 老司机精品视频一区二区三区 | 国产婷婷色一区二区三区在线 | 一级做a爱高潮免费视频 | 久久久久综合精品福利啪啪 | 国产国拍精品av在线观看按摩 | 最新中文字幕av无码专区 | 国产精品高潮呻吟久久av黑人 | 国偷自产一区二区免费视频 | 日韩精品一区二区av在线观看 | 夜夜爽狠狠天天婷婷五月 | 久久无码专区国产精品 | 色偷偷久久一区二区三区 | 岛国搬运工av在线播放 | 夜夜嗨av一区二区三区免费区 | 欧性猛交ⅹxxx乱大交 | 国产欧美色图 | 婷婷五月深爱憿情网 | 人人爽人人爽人人片av免费 | aa黄色毛片| 中国av一区二区 | 国产艳妇av视国产精选av一区 | 欧美日韩网 | 亚洲三页| 五月激情六月综合 | 精品午夜福利无人区乱码一区 | 国产成人精品久久久 | 成在线人免费无码高潮喷水 | av夜夜躁狠狠躁日日躁 | av狠狠色超碰丁香婷婷综合久久 | 欧美国产一级片 | 人人妻人人澡人人爽不卡视频 | 国产精品亚洲欧美在线播放 | 五月丁香啪啪激情综合色九色 | 亚洲成av人影院无码不卡 | 久草福利在线观看 | 国产三级韩国三级日产三级 | 亚洲va在线va天堂xxxx | 粉嫩av一区二区在线播 | 久久亚洲激情 | 亚洲午夜精品久久久久久久久久久久 | 久久久久高潮综合影院 | 91久久精品视频 | 色偷偷av老熟女 | 丝袜国产一区av在线观看 | 久久青草费线频观看 | 国产一二三四区中 | 久久99国产精品久久99果冻传媒新版本 | 一区二区三区中文字幕 | 好紧好湿好爽免费视频 | 亚洲精品aⅴ | 亚洲色图狠狠干 | 久久亚洲一区二区三区明星换脸 | 免费人成激情视频在线观看 | 国产69精品久久久久久久 | 激情内射日本一区二区三区 | 永久免费国产 | 成人无码α片在线观看不卡 | 亚洲精品国产一区二区三 | 人人人人干 | 欧美肥婆姓交大片 | 国产99久久九九精品的功能介绍 | 茄子视频在线看 | 国产成人精品无码短视频 | 四虎影院在线观看网站 | 成人无码av一区二区三区 | 国产精品久久无码一区二区三区网 | 久久亚洲精品成人无码网站蜜桃 | 国产精品99久久久久久久 | 丰满女人又爽又紧又丰满 | 国产一区二区三区在线 | 亚洲高清在线免费 | 国产天天操 | 国产日韩一区二区三区 | 国产69精品久久99不卡解锁版 | 亚洲成a人在线观看 | 中文字幕乱码人妻综合二区三区 | av无码免费岛国动作片片段欣赏网 | 中文在线а√天堂官网 | 2019国产精品青青草原 | 一级片在线观看视频 | 色福利视频 | 天天躁日日躁狠狠躁2018 | 亚洲第一成年免费网站 | 日本乱码一区二区 | 偷拍25位美女撒尿视频在线观看 | 老妇做爰xxx视频一区二区三区 | 久久久综合九色合综国产精品 | 一本热久久sm色国产 | 国产一区二区三区精品毛片 | 欧美成人看片黄a免费看 | 亚洲国产精品一区二区成人片 | 免费看黄色片的网站 | 国产又色又爽无遮挡免费动态图 | 日本黄色片一区二区 | 综合色婷婷一区二区亚洲欧美国产 | 亚洲欧美激情在线一区 | 人人草人人看 | 四虎最新网址在线观看 | 中文字幕国产精品 | 一级免费毛片 | 久久精品无码一区二区小草 | 人妻中文无码就熟专区 | 色悠久久久久久久综合 | 国产麻豆精品一区二区 | 中文字幕无码视频手机免费看 | 亚洲а∨天堂2019在线无码 | 久久久www免费人成黑人精品 | 国产国拍精品av在线观看 | 亚洲情侣在线 | 欧美一卡2卡3卡4卡新区在线 | 国产日韩欧美一二三区 | 欧美永久精品 | 看片网址国产福利av中文字幕 | 亚洲天堂五月 | 欧美精品一区二区视频在线观看 | 六月激情综合 | 日本v片在线观看 | 亚洲综合在线五月 | 亚洲 欧美 日韩 综合aⅴ电影 | 亚洲国产精品成人久久蜜臀 | 91av手机在线 | 亚洲精品二 | 国产有奶水哺乳期无码avav | aa级黄色大片 | 少妇把腿扒开让我添 | 九九五月天 | 久久大学生 | 三上悠亚激情av一区二区三区 | 久久国产精品无码hdav | 国产天天操 | 男女乱婬真视频 | 成人做爰9片免费看网站 | 亚洲a∨无码精品色午夜 | 色妇网| 久久久蜜桃一区二区 | 极品少妇的粉嫩小泬看片 | 久久久久久久久久久中文字幕 | 蜜柚av久久久久久久 | 天堂av色综合久久天堂我不卡 | 欧美黑人体内she精在线观看 | 特级黄aaaaaaaaa毛片 | 少妇无码av无码专区在线观看 | 亚洲乱码精品久久久久.. | 亚洲 日本 欧洲 欧美 视频 | 伊人久久亚洲精品一区 | 亚洲美女在线视频 | 2021最新国产在线人成 | 超碰97在线免费 | 日本一道高清一区二区三区 | 涩涩av| 精品视频一区二区三区 | 国产19p| 亚洲日韩∨a无码中文字幕 亚洲中文字幕日产乱码高清app | 欧美成人a交片免费看 | 后入内射国产一区二区 | 天天槽 | 亚洲加勒比无码一区二区 | 在线天堂√8 | 亚洲欧美综合区自拍另类 | 成人片黄网站a毛片免费 | 国产美女脱的黄的全免视频 | 2020亚洲国产精品久久久 | 亚洲国产精品成人久久蜜臀 | 中文字幕av久久 | 在线看片免费人成视频大全 | 宅男噜噜噜66国产在线观看 | 久久大香萑太香蕉av黄软件 | 亚欧成人中文字幕一区 | 国产一区二区三区四区五区vm | 成人无码a区在线观看视频 国产偷自视频区视频 | 色婷婷婷丁香亚洲综合 | 99精品欧美一区二区蜜桃美图 | 色婷婷色丁香 | 中文成人无码精品久久久 | 成人免费xxxxx在线观看 | 久久精品tv | 欧美成人区| 少妇爱做高清免费视频 | 北条麻妃在线一区二区三区 | 天天澡天天添天天摸av | 毛片av中文字幕一区二区 | 91在线观看.| 色综合天天色综合久久网 | 国产亚洲精aa在线观看不卡 | 猫咪免费人成网站在线观看 | 日韩国产亚洲一区二区三区 | 最新午夜综合福利视频 | 国产激情一区二区三区 | 韩日综合成人中文字幕 | 日韩福利视频网 | 狠狠色综合网丁香五月 | 亚洲国产成人精品无码区在线网站 | 国产三级日本三级在线播放 | 日韩夜夜操 | 国产成人av一区二区三区不卡 | 五月激激激综合网亚洲 | 变态拳头交视频一区二区 | 欧美网站在线看 | 欧美xxxx欧美精品 | 五月天看片 | 亚洲国产成人精品无码区宅男? | 久久99精品久久久久久琪琪 | 国产日韩欧美一区二区东京热 | 波多野结衣大战黑人8k经典 | 成人一区二区免费中文字幕视频 | 涩爱av天天爱天天做夜夜爽 | 18禁止看的免费污网站 | 最近最好的中文字幕2019免费 | 桃色视频网站 | 日产欧美国产日韩精品 | 日韩精品人成在线播放 | 国产91丝袜在线播放动漫 | 日韩免费观看高清 | 91丨九色丨高潮 | 国产精品毛片av | 成人无码黄动漫在线播放 | 国产看女人洗澡毛片精品 | 2018久久 | 久久久久国产精品人妻aⅴ四季 | 色网站综合 | 日本二区三区欧美亚洲国产 | a级黄色片网站 | 国产专区国产av | 丰满白嫩尤物一区二区 | 新国产视频 | 狠狠综合久久av一区二区小说 | 黄频在线免费观看 | 国产成人av在线婷婷不卡 | 亚洲专区在线视频 | 国产精品偷乱一区二区三区 | 美日韩成人 | 极品白嫩少妇无套内谢 | 国产裸拍裸体视频在线观看 | 九九九在线视频 | 四虎网站入口 | 国产色婷婷五月精品综合在线 | 一级大片免费观看 | 欧美日韩精品一二三区 | 午夜爽爽爽男女免费观看影院 | 97国产精品人人爽人人做 | 日日操夜夜草 | 免费无码毛片一区二区三区a片 | 免费人成无码大片在线观看 | 一少妇挑战三个黑人内谢 | 国产极品久久久 | 亚洲国产成人久久精品软件 | 天天色综合色 | 日韩在线网址 | 日本xxxx自慰xxxx | 色欲天天婬色婬香综合网完整版 | 人妻三级日本香港三级极 | 国产女人的高潮国语对白 | 亚洲理论在线a中文字幕 | 伊人avav| 欧日韩在线视频 | 精品一区二三区 | 99久久精品无码一区二区三区 | 五月婷六月婷婷俺也去 | www.97视频| 在线观看aaa | 久久w5ww成w人免费 | av免费无码天堂在线 | 精品亚洲国产成人av在线时间短的 | 窝窝午夜福利无码电影 | 尤物av在线 | 国产在线清纯极品美女援交 | 性生交免费看 | 国产色播av在线 | 国产又a又黄又潮娇喘视频 精品伊人久久 | 欧美日韩色网 | 亚洲高清成人aⅴ片777 | 日韩精品亚洲一区 | 亚洲成av人在线视 | 国产主播大尺度精品福利免费 | 中文字幕乱码人在线视频1区 | 高清国产亚洲精品自在久久 | 欧美成人精品三级一二三在线观看 | 欧美嫩草影院 | 成人性生交大片免费看r老牛网站 | 国产中年夫妇高潮精品视频 | 性av无码天堂vr专区 | 天天操综合 | 四虎成人精品国产永久免费无码 | 日韩av在线免费 | 国产一区二区三区免费观看网站上 | 亚洲日韩色欲色欲com | 亚洲成av人片在线观看www | 人妻无码一区二区三区 tv | 国产精品成人久久久久 | 在线观看特色大片免费网站 | 亚洲一卡2卡三卡四卡精品 人人草视频在线 | 免费看午夜福利在线观看 | 操操日| 九九若伊人 | 涩五月婷婷 | 国产精品综合 | 精品国产一区探花在线观看 | 夜久久久 | 欧美绝顶高潮抽搐喷水合集 | 午夜精品射精入后重之免费观看 | 久久久一二三四 | 久久永久免费专区人妻精品 | 字幕专区码中文欧美在线 | 精品性久久 | 亚洲综合无码一区二区加勒此 | 国色精品卡一卡2卡3卡4卡在线 | 久热精品在线 | 国产精品一二区 | 好吊妞无缓冲视频观看 | 国产精品一区二区在线免费观看 | 国产精品99久久久久人中文网介绍 | 男人天堂色 | 巨胸喷奶水www视频网站 | 国产啪精品视频网站丝袜 | 人妻精品丝袜一区二区无码av | 亚洲色婷婷六月亚洲婷婷6月 | 国产在线国偷精品免费看 | 看成年全黄大色黄大片 | 欧美在线影院 | 久久se精品一区精品二区 | 欧美久久久久久久久久 | 天天色踪合 | 中国女人熟毛茸茸a毛片 | 求个av网站| 中文成人无码精品久久久 | 99这里都是精品 | 国产精品无码2021在线观看 | 精品香蕉在线观看视频 | 亚洲福利视频在线 | www.羞羞答答在线观看蜜桃臀 | 国产成人一区二区啪在线观看 | 强行糟蹋人妻hd中文字幕 | 少妇人妻激情乱人伦 | 国产精品免费视频色拍拍 | 亚洲午夜高清国产拍 | 国产乱人伦av在线a更新 | 91精品看片 | 福利一区二区三区视频在线观看 | 国产传媒精品1区2区3区 | 91第一页| 欧美极品少妇脚交 | 第一福利精品500在线导航 | 国产成人短视频 | 韩国午夜理伦三级在线观看仙踪林 | 黄色一级片免费看 | 男人边吃奶边做好爽视频 | 怡春院国产精品视频 | 91精品国产亚洲 | 久久99热这里只有精品66 | 福利微拍一区二区 | 久久精品23 | 亚洲女人网 | 日本中文乱码卡一卡二新区 | 无码少妇一区二区性色av | 亚洲乱码一二三四区 | 日本久久久久久级做爰片 | 欧美 国产 小说 另类 | 久久精品国产亚洲七七 | 全部孕妇毛片 | 久久亚洲国产精品日日av夜夜 | av免播放器在线观看 | 97人人超碰国产精品最新 | 亚洲中文字幕日产乱码高清app | 狠狠操五月天 | 国产做a爰片久久毛片a片 | 国产精品第二页 | 青青色综合 | 网址在线观看 | 初尝黑人巨炮波多野结衣 | 毛片在线免费观看视频 | 51精品久久久久久久蜜臀 | 99精品区 | 性chinese极品按摩 | 成人无码网www在线观看 | 亚洲第一视频在线播放 | 免费看黄色一级片 | 精品国产乱码久久久久久乱码 | 日日干夜夜艹 | 日韩欧美精品一区二区三区经典 | 久久国产精品综合 | 天天操网 | 久久伊人精品视频 | 色涩综合 | 不卡一区二区视频日本 | 日本一区二区观看 | 毛片大全视频 | 粉嫩小泬视频无码视频软件 | 人人妻人人爽人人添夜夜欢视频 | 日韩欧美观看 | 狠狠色噜噜狠狠狠狠97俺也去 | 色屁屁在线| 久久a免费视频 | 欧美日韩免费在线 | 99视频有精品视频高清 | 特黄视频免费看 | 亚洲 日韩 欧美 成人 在线 | 日本v在线| 日本私人vps一夜爽毛片 | 色婷婷.com | 在线亚洲精品国产二区图片欧美 | 香蕉eeww99国产精选免费 | 日韩欧美偷拍高跟鞋精品一区 | 国产98在线 | 日韩 | 中文字幕第4页 | 最新免费av网站 | 色婷婷久| 国产3344在线观看视频 | 亚洲九九九九 | 欧美第一区 | 一级性生活毛片 | 日韩午夜网站 | 国产成人综合一区二区三区 | 国产真实的和子乱拍在线观看 | 国产精品色一区二区三区 | 久久精品视频在线看99 | 永久免费无码成人网站 | 天天躁日日躁狠狠躁蜜臀av | www.日韩av.com | 伊人中文在线最新版天堂 | 日日网站 | 日韩视频网站在线观看 | 日韩中文字幕免费观看 | 国产精品2 | 国产亚洲欧美精品久久久 | 愉拍自拍第169页 | 一区二区三区美女视频 | 亚洲综合日韩精品欧美综合区 | 97久久人人超碰超碰窝窝 | 日本高清无卡码一区二区 | 亚洲图片小说激情综合 | 国产aa | 熟妇与小伙子matur老熟妇e | 日韩欧美国产精品一区 | 久久精品国内 | 国内少妇人妻丰满av | 日韩一区二区三区免费看 | 成人黄色软件 | 久久综合九色综合欧美就去吻 | 青青草视频导航 | 国产精品久久久久久久福利 | 毛片a片免费看 | 成人免费无码不卡毛片 | 狠狠综合久久av | 免费网站内射红桃视频 | 久草在线手机 | 亚洲精品国产精品国产自2022 | 最近中文字幕免费mv在线视频 | 丰满白嫩大屁股ass 国产日韩精品一区 | av成人国产 | 69堂成人精品免费视频 | 国产主播大尺度精品福利免费 | 97se亚洲国产综合自在线观看 | 亚洲精品无码高潮喷水a片软 | 国产一区二区在线播放视频 | 国产福利一区二区三区高清 | 日韩一区二区视频 | 国产乡下妇女做爰 | 国产黄色免费视频 | 亚洲色国产欧美日韩 | 日日橹狠狠爱欧美二区免费视频 | 成人av在线网址 | 久久婷婷国产91天堂综合精品 | 中文字幕在线免费播放 | 亚洲熟妇成人精品一区 | 欧美人禽zozo动人物杂交 | 久久久久国产精品人妻aⅴ四季 | 免费无遮挡无码永久视频 | 日日操网 | 男女无遮挡激情视频 | 国产对白乱刺激福利视频 | 日本成人黄色 | 欧美性插动态图 | 国产乱子伦精品免费视频 | 少妇av一区二区三区无码 | 国产丝袜在线精品丝袜不卡 | 中文字幕在线观看网站 | 久久久久久亚洲精品成人 | 亚洲一卡二卡三卡四卡在线看 | 九九国产 | 色婷婷社区 | 国产欧美一区二区三区免费 | 午夜久久久久久久久久一区二区 | 成年人深夜视频 | av成人无码无在线观看 | 国产片av国语在线观麻豆 | 无码国产一区二区三区四区 | 99这里| 欧美色亚洲色 | 久久人人爽 | 日韩少妇精品av一区二区 | 人妻无码中文专区久久av | 国产欧美日韩精品在线 | 乡村乱淫 | 亚洲欧美日韩网站 | av免费资源| 888亚洲欧美国产va在线播放 | 亚洲激情小视频 | 免费高清欧美一区二区三区 | 欧美福利视频一区二区 | 综合av第一页| 特级无码毛片免费视频尤物 | 亚洲六月丁香色婷婷综合久久 | 久久久久琪琪去精品色一到本 | 亚洲一区二区三区小说 | 新国产三级视频在线播放 | 亚洲精品无码久久久久牙蜜区 | 久久久成人精品av四区 | 亚洲精品偷拍影视在线观看 | 一本久久a精品一区二区 | 华人少妇被黑人粗大的猛烈进 | 日本久久综合久久综合 | 久久天天躁狠狠躁夜夜av不卡 | 亚洲欧美日韩中文在线制服 | 蜜桃视频一区二区在线观看 | 精品三级在线 | 成人a视频 | 亚洲黄色免费看 | 一区二区三区在线看 | 久久99精品久久水蜜桃 | 日韩看片网站 | 国产一区二区视频在线 | 18禁又污又黄又爽的网站不卡 | 国产图色| 久久99精品久久久久久青青 | 五月天国产精品 | av大天堂 | 国产福利男女xx00视频 | 亚洲日本va中文字幕人妖 | 在线免费观看毛片视频 | 欧美肉大捧一进一出免费视频 | 97成人啪啪网| 人人妻一区二区三区 | 亚洲天天摸日日摸天天欢 | 18禁无遮挡羞羞啪啪免费网站 | 国产成人麻豆亚洲综合精品 | 精品国产综合区久久久久久 | 97免费视频在线观看 | 四虎看片 | 水蜜桃av无码 | 欧美日韩国产中文字幕 | 不卡一不卡二不卡三 | 青青草原国产视频 | 久久久中日ab精品综合 | 欧美老熟妇乱人伦人妻 | 女av在线 | 国产麻豆剧果冻传媒星空视频 | 久久久99精品成人片 | 中文字幕有码在线播放 | 久久精品国产99精品国产亚洲性色 | 99视频网站 | 9797在线看片亚洲精品 | 国产精品爽爽久久久久久竹菊 | 国产韩国精品一区二区三区久久 | 亚洲日本天堂 | 欧美成人精品高清视频 | 亚洲最新无码成av人 | 亚洲va欧美va国产va综合 | 欧美性色黄大片人与善 | 亚洲国内自拍愉拍 | 中文字幕在线视频精品 | 国产成人av不卡免费观看 | 欧美精品性视频 | 成人区精品一区二区不卡 | 99久热国产精品视频尤物 | 无码人妻精品一区二区在线视频 | 国产乱码字幕精品高清av | 九一精品视频一区二区三区 | 亚洲的vs日本的vs韩国 | www.欧美色图 | 亚洲中文字幕无码人在线 | 日韩国产免费 | 亚洲免费三级 | 四虎影院视频 | 欧美精品一区二区视频在线观看 | 成人影片在线播放 | 天堂资源中文最新版在线一区 | av手机观看 | 久久亚洲人成网站 | 国产综合有码无码视频在线 | 人人干日日操 | 无码人妻丝袜视频在线播免费 | 中日韩在线播放 | 精品免费国产一区二区 | 亚洲中文字幕精品久久 | 永久免费观看美女裸体视频的网站 | 亚洲日韩中文字幕在线播放 | 精品一区二区免费 | 91九色在线观看视频 | 网产贷裸拍视频在线播放 | 天堂二区 | 一区二区传媒有限公司 | 自拍偷在线精品自拍偷99 | 18禁超污无遮挡无码网址极速 | 黄色肉肉视频 | 午夜色综合 | 天堂8在线中文在线 | 亚洲最新 | 激情综合五月网 | 欧美成人精品一区二区三区在线看 | 亚洲国产精品久久久就秋霞 | 日本精品一区二区三区在线观看 | av的天堂| 国产精品美女久久久久aⅴ国产馆 | 亚洲伊人色欲综合网 | 琪琪777午夜理论片在线观看播放 | 蜜臀久久99静品久久久久久 | 做爰视频毛片视频 | 日韩一二三区在线 | 欧美色插 | 亚洲精品久久久久久中文字幕 | 免费无码又爽又高潮视频 | 三级视频网址 | 久久精品一区二区三区中文字幕 | 精品欧美激情精品一区 | 亚洲人成电影网站色 | 无码不卡一区二区三区在线观看 | 天干夜天天夜天干天 | 日韩少妇激情一区二区 | 亚洲精品国产精品乱码不卡 | 亚洲最新av网站 | 亚洲精华国产精华精华液网站 | 欧美aⅴ在线观看 | 国产成人无码a在线观看不卡 | 亚洲精品一区二区三区丝袜 | 亚洲欧美日韩综合在线一 | 性色免费视频 | 午夜寡妇啪啪少妇啪啪 | 狂野欧美性猛交xxxx巴西 | 国产交换配乱淫视频a免费 久操综合 | 青草在线视频 | av一道 | 久久噜噜 | 小泽玛利亚一区二区在线 | 小视频成人 | 国产精自产拍久久久久久蜜 | 五月天综合激情网 | 亚洲精品久久久蜜臀av站长工具 | 精品国产肉丝袜久久首页 | 伊人大香线蕉精品在线播放 | 国产亚洲精品福利在线无卡一 | 337p亚洲精品色噜噜狠狠 | 久久久精品久久久久久96 | 中年人妻丰满av无码久久不卡 | 国产免费不卡视频 | 激情综合五月天 | 久久亚洲欧美 | 青青青久久久 | 国产热99| 亚洲色图久久 | 日韩av资源网 | 亚洲国产精品大学美女久久久爽 | b站永久免费看片大全 | 亚洲va成无码人在线观看天堂 | 天天好逼综合 | 国内精品视频自在一区 | 国产精品三级赵丽颖 | 黄色特级大片 | 人妻洗澡被强公日日澡电影 | 性中国妓女毛茸茸视频 | 日韩精品一卡2卡三卡4卡 | 人妻中文字系列无码专区 | 欧美激情视频在线观看 | 尤物爽到高潮潮喷视频大全 | 精品午夜福利在线观看 | 日本综合视频 | 色网址在线观看 | 无遮挡激情视频国产在线观看 | 999国产精品 | 综合五月天 | 成人拍拍拍无遮挡免费视频 | 成人影院yy111111 | 18黄男人女人色www | 午夜羞羞影院男女爽爽爽 | 国产午夜激无码av毛片 | 久久免费精品 | 亚洲精品久久久久久蜜桃 | 内射巨臀欧美在线视频 | 国产精品久久久久久在线观看 | 国产精品成人免费看片 | 国产在线观看无码不卡 | 337p日本大胆欧美裸体艺术 | 猫咪av最新网址 | 国模小黎自慰337p人体 | 边吃奶边添下面好爽 | 手机在线播放av | 国产一卡二卡在线 | 欧美三级真做在线观看 | 又黄又爽又色又刺激的视频 | 成熟亚洲日本毛茸茸凸凹 | 国产精品自在线拍国产电影 | 亚洲激情视频在线 | 欧美国产日韩a欧美在线视频 | 欧美成va视频网站 | avtt中文字幕| 91视频观看 | 99久久久久久 | 欧美黄在线观看 | 日本亚洲欧美国产日韩ay | 特大黑人娇小亚洲女 | 无码少妇精品一区二区免费动态 | 色就操| 狠狠色综合一区二区 | 玩丰满高大邻居人妻无码 | 天天干天天射综合网 | 2021精品高清卡1卡2卡3老狼 | 日本少妇做爰全过程毛片 | 性欧美久久 | 欧美色欧美亚洲日韩在线播放 | 亚洲偷偷 | 性欧美疯狂xxxxbbbb | 男女爱爱福利视频 | 四虎影视8848dd | 国产码在线播放 | 丁香婷婷久久 | 国产又大又硬又爽免费视频试 | 少妇情欲一区二区影视 | 国产一级片在线 | 国内精品久久久久久中文字幕 | 青春草免费视频 | 男女一边摸一边做爽爽 | 国产精品久久久久久久久久免费 | 亚洲青青草原男人的天堂 | 色97在线 | 999午夜| 小婷又软又嫩又紧水又多的视频 | 手机在线免费观看av | 国产夫妻自拍一区 | 女女同性女同区二区毛片 | 国产又粗又猛又大爽又黄老大爷视频 | 男女同房做爰爽免费 | 凹凸在线无码免费视频 | 乌克兰少妇xxxx做受野外 | 国产精品日韩欧美在线第3页天美 | 午夜视频在线观看一区 | 亚洲最大无码av网站观看 | 夜夜操导航 | 四虎三级| 最新地址在线观看 | 二级特黄绝大片免费视频大片 | 久久精品一区二区三区四区 | 久久这里只精品国产免费10 | 日本免费视频观看 | 亚洲中文字幕久久无码精品 | 精品久久久久久综合 | 色干干| 亚洲天堂成人av | 午夜视频一区二区 | 日本高清视频永久网站www | 国产老女人乱淫免费 | 欧美麻豆久久久久久中文 | 婷婷色在线视频 | 久久久999精品视频 在线视频 亚洲 | 成人区人妻精品一区二区三区 | 欧美日韩看片 | 琪琪电影午夜理论片八戒八戒 | 久热精品视频 | 久久9视频 | 韩日精品视频在线观看 | 91爱爱·com | 97人伦色伦成人免费视频 | 蜜臀久久99精品久久久久久小说 | 久久无码人妻精品一区二区三区 | 日韩高清成人 | 成人午夜无码精品免费看 | 亚洲精品久久久久久 | 国产精品久久久久久久久片桃花 | 久久久久无码精品国产人妻无码 | 一区二区三区欧美日韩 | 玖玖资源站亚洲最大成人网站 | 伊人久久大香线蕉av一区二区 | 久久不见久久见免费视频观看 | 久久这里| 国产亚洲精品a片久久久 | 免费观看成人摸66m66 | 无码中文字幕乱在线观看 | 久色国产 | 久久性生活片 | 国产97色在线 | 日 | 超碰国产在线播放 | 久久天天东北熟女毛茸茸 | 天天视频成人 | 国产精品久久久久久久久久不蜜月 | 亚洲 欧美 小说 | www.caoporn.com| 蜜臀91丨九色丨蝌蚪中文 | 欧美日韩精品一区二区在线播放 | 亚洲国产精品国自产拍张津瑜 | 国产精品亚洲一区二区三区喷水 | 亚洲精品久久久日韩美女图片 | 中文国产成人精品久久app | 午夜无码片在线观看影院y 国产做爰免费观看视频 | 亚洲色播爱爱爱爱爱爱爱 | 国产成人精品一区 | 掀开奶罩边吃边摸下娇喘视频 | jzzijzzij日本成熟丰满少妇 | 久久久久人妻精品一区蜜桃 | 久久精品中文字幕一区二区三区 | 三级特黄60分钟在线观看 | 伊人超碰在线 | 日本强伦片中文字幕免费看 | 97精品人妻系列无码人妻 | 久久香蕉综合色一综合色88 | 国产suv精品一区二区883 | 久久久久久逼 | 欧洲美色妇ⅹxxxxx欧美 | 亚洲天堂免费av | 国产伦精品一区二区三区88av | 236宅宅理论片免费 欧美日本一区二区视频在线观看 | 99精产国品一二三产区网站 | 国内精品久久久久久久小说 | 国产白嫩精品又爽又深呻吟 | 亚洲国产成人精品久久久 | 亚洲人成色4444在线观看 | 在线欧美国产 | 国产成人无码精品久久久性色 | 91欧美一区二区 | 久人久人久人久久久久人 | 欧美一级大片免费 | 色综合999 | 亚洲中文在线播放一区 | 一二三四社区在线中文视频 | 亚洲成人av一区二区 | 日本特黄特色大片免费视频网站 | 十八18禁国产精品www | 麻豆国产97在线 | 欧美 | 午夜福利啪啪无遮挡免费 | 色爱无码av综合区老司机非洲 | 国产人妖视频一区二区, | 成年人香蕉视频 | 丁香婷婷九月 | 亚洲网址在线 | 少妇性aaaaaaaaa视频 | 黄色三级视频在线观看 | 老司机久久一区二区三区 | 好黄好硬好爽免费视频一 | 国产精品久久久久9999小说 | 在线免费精品视频 | 正在播放白浆 | 刘亦菲国产毛片bd | 人人搞人人干 | 在线精品视频一区二区三四 | 国产亚洲精品bt天堂精选 | 丁香伊人网| 成人亚洲精品国产www | 8av在线 | 日本最新偷拍小便视频 | 久久国内精品一区二区三区 | 成人性生交大片免费看r老牛网站 | 青娱乐福利视频 | 日本少妇做爰全过程毛片 | 久久久网页 | 精品一区二区成人精品 | 成人午夜大片 | 爱情岛亚洲论坛入口网站 | 伊人影院在线播放 | www.91福利| 国产小视频91 | 日本 精品 高清不卡 | 久久精品一本到99热免费 | 人人妻久久人人澡人人爽人人精品 | 97超碰国产精品无码 | 欧美一区二区三区不卡 | 老司机性色福利精品视频 | 日本三级吹潮在线 | 全部免费的毛片在线看 | 色av综合av综合无码网站 | 免费人成网站在线观看视频 | 欧美一区日韩一区 | 一区二区三区免费看 | 老司机亚洲精品影院 | 军人粗大的内捧猛烈进出视频 | 久久久久国产精品免费免费搜索 | 国产又粗又猛又爽视频上高潮69 | 人妻无码久久中文字幕专区 | 日韩一及片 | 国产精品 高清 尿 小便 嘘嘘 | 欧美成人高潮一二区在线看 | 在线观看国产h成人网站 | 一本一道色欲综合网 | 国模视频一区二区 | 欧美视频一区 | 成人精品gif动图一区 | 天天燥日日燥 | 色天使久久综合网天天 | 国产在线观看精品一区二区三区 | 97成人精品区在线播放 | 国产亚洲欧美日韩夜色凹凸成人 | 伊伊亚洲综合人网777 | 综合久久网| 无码高潮少妇多水多毛 | 精品国产一区二区三区2021 | 亚洲中文字幕久在线 | 日韩欧美福利 | 国产精品免费观看调教网 | 亚洲日本韩国在线 | 亚洲麻豆av成本人无码网站 | 97视频网站| 手机在线看片1024 | 国产精品www老牛影视 | 欧美在线www | 伊人99热| 热99| 国产精品白丝av嫩草影院 | 黄色大视频 | 浓毛老太交欧美老妇热爱乱 | 黄色片在线观看视频 | 91丝袜超薄交口足 | 亚洲中文字幕a∨在线 | 国精产品一区二区三区有限公司 | 日日拍夜夜嗷嗷叫国产 | 国产成人免费片在线观看 | 永久免费看片在线 | 91久久久久久久久久久 | 国产女人40精品一区毛片视频 | 色欲天天天天天综合网 | 日韩欧美字幕 | 国产免费一区二区三区vr | 国产第一页浮力影院草草影视 | 亚洲aⅴ天堂av天堂无码 | 丝袜 中出 制服 人妻 美腿 | 欧美一区二区三区久久久 | 人妻内射一区二区在线视频 | 成人aaa| 日本在线播放 | 日本一区午夜艳熟免费 | 国产人妖xxxx做受视频 | 国产福利视频在线精品 | 国产精品美女www爽爽爽 | 影音先锋啪啪 | 日韩中出| 天堂sv在线最新版在线 | 日b视频网站| 国产精品国产三级国产av′ | 99er国产这里只有精品视频免费 | 中文字幕精品久久久久人妻红杏1 | www.国产99 | 日本高清一区二区视频 | 亚洲性夜夜摸人人天天 | 亚洲午夜未满十八勿入 | 久久99久久98精品免观看软件 | 国产福利拍拍拍 | av爽妇网 | 青草久久网 | 天堂色区 | 精品成人av一区二区三区 | 色哺乳xxxxhd国产 | 精品麻豆一区二区三区乱码 | 另类国产ts人妖高潮系列视频 | 隔壁老王国产在线精品 | 久久久久久久久久久久久久久久久久久久 | 亚洲综合在线不卡 | 欧美色图在线视频 | 久久久性色精品国产免费观看 | 97精品无人区乱码在线观看 | 色综合亚洲一区二区小说 | 在线观看潮喷失禁大喷水无码 | 亚洲中文无码mv | 亚洲午夜在线 | 亚洲日本在线在线看片4k超清 | 国产一区二区三区又黄又爽 | 色先锋av影音先锋在线 | 少妇china高潮∨jdao | 国产综合一区二区 | 91精品专区 | 波多野结衣av无码 | av少妇| aa片在线观看视频在线播放 | 亚洲人成网线在线播放 | 麻豆天美国产一区在线播放 | 狠狠躁夜夜躁青青草原软件 | 白浆在线视频 | 亚洲爆乳成av人在线视菜奈实 | 亚洲欧美日韩另类精品一区 | 中日产幕无线码一区 | 亚洲天天 | 93久久精品日日躁夜夜躁欧美 | 三级国产99久久 | 2018天天躁夜夜躁狠狠躁 | 高清粉嫩无套内谢国语播放 | 国产欧美日韩精品专区 | 久久国产亚洲精品无码 | 午夜嘿嘿嘿影院 | 狠狠色噜噜狠狠狠7777奇米 | 亚洲第一区欧美国产不卡综合 | 中文字幕一区二区人妻性色 | 亚洲精品一区二区三区99 | 丰满少妇在线观看 | 自拍偷拍精品视频 | 色偷偷亚洲男人的天堂 | 8av国产精品爽爽ⅴa在线观看 | 一本大道在线观看无码一区 | 国产精品黄 | 久久国产乱子伦精品免费午夜 | 国产欧美91 | 国产日韩精品欧美 | 污18禁污色黄网站免费 | 日本高清网站 | 丰满日韩放荡少妇无码视频 | 天堂中文av | 波多野结衣视频在线播放 | 国内一级视频 | 不卡视频在线播放 | www日韩欧美 | 国产露脸久久高潮 | 天堂在/线中文在线资源 官网 | 亚洲日韩在线观看免费视频 | 欧美大尺度裸体床戏 | 可以在线看的av网站 | av噜噜在线| 青青草国产成人99久久 | 绯色av粉嫩av蜜臀av | 亚洲va久久久噜噜噜久久天堂 | 亚洲最新 | 亚洲成a人v | 国产亚洲papapa| 欧美成人激情视频 | 国产又黄又硬又湿又黄的网站免费 | 日日狠狠久久偷偷色 | 日韩黄色a | 丁香花中文字幕mv在线免费观看 | 久99久热只有精品国产女同 | 久久精品第一国产久精国产宅男66 | 99精品久久久 | av综合在线观看 | 99极品视频| 欧美国产成人久久精品 | 亚洲永久精品视频 | 欧美肥婆性猛交xxxxxj | 欧州毛片 | 日本aa视频 | 靠逼久久 | 成人午夜国产内射主播 | 极品少妇被啪到呻吟喷水 | 国产骚熟| 狠狠色丁香婷婷综合潮喷 | 国产午夜性爽视频男人的天堂 | 久久久精品一区aaa片 | 亚洲午夜无码极品久久 | 久久这里只精品国产免费9 免费在线黄色网址 | 国精产品999一区二区三区有限 | 亚洲国产成人久久精品软件 | 99精品国产一区二区三区 | 午夜影院啊啊啊 | 91麻豆网站 | 天天躁夜夜躁狠狠综合 | 78色淫网站女女免费 | 色欲色香天天天综合无码www | 亚洲最新版av无码中文字幕 | 成人欧美一区二区三区黑人冫 | 午夜精品久久久久久久96蜜桃 | 四虎影院网站 | 欧美激情国产一区 | 天堂最新版在线www 岛国av在线免费观看 | 国产精品日日夜夜 | 久热国产在线 | 欧美高清免费 | 欧美你懂得| 久久国产精品偷 | 亚洲熟女中文字幕男人总站 | 爱情岛论语亚洲入口 | 天天操天天爱天天干 | 亚洲欧美国产成人综合不卡 | 1000部国产精品成人观看 | 激情综合色综合啪啪五月丁香 | 免费无遮挡无码视频网站 | 欧美极度丰满熟妇hd | 国产成人高清在线观看视频 | 成人av无码国产在线观看 | 亚洲免费成人av | 色哟哟欧美精品免费视频 | 少妇挑战三个黑人惨叫4p国语 | 成人三级视频在线观看不卡 | 依人成人综合网 | 81精品久久久久久久婷婷 | 久久久久久a亚洲欧洲aⅴ96 | 连续高潮抽搐爽死喷水流白浆 | 中文乱字幕视频一区 | 日韩成人av无码一区二区三区 | www.五月婷婷 | 狠狠躁夜夜躁人人爽超碰91 | 亚洲天堂视频在线播放 | 99九九99九九视频精品 | 国产福利在线视频蜜芽tv | 国产香蕉一区二区三区在线视频 | 久久精品天天中文字幕人妻 | 中文精品一区二区三区四区 | 亚洲女初尝黑人巨 | 在线观看国产三级 | 亚洲gv天堂gv无码男同 | 久久九九爱 | 91网站视频在线观看 | 色偷偷噜噜噜亚洲男人的天堂 | 天天综合精品 | 国产真实younv在线 | 中文在线无码高潮潮喷在线播放 | 亚洲日韩av无码中文字幕美国 | 青青草视频播放 | 国产欧美一区二区白浆黑人 | 男女性行为视频 | 一区二区精品在线 | 日韩激情电影一区二区在线 | 国产午费午夜福利200集 | 欧美福利视频在线 | 久久精品国产国产精品四凭 | av高清一区二区 | 黄色片小视频 | 特级精品毛片免费观看 | 成人午夜性 | www.99久久.com | 国产精品网红尤物福利在线观看 | 深夜少妇18免费 | 91丨国产丨蚪窝海角社区 | 国产美女遭强高潮网站下载 | 99久久久久 | 国产又大又黑又粗 | 色欲av久久一区二区三区久 | 中文字幕av中文字无码亚 | 97色偷偷色噜噜男人的天堂 | 国产精品卡一 | 欧美福利视频一区 | 日本aa大片在线播放免费看 | 少妇爆乳无码av无码专区 | 最新高清中文字幕免费mv | 人妻熟女 视频二区 视频一区 | 51国产黑色丝袜高跟鞋 | 香蕉国产999 | 男人天堂2014 | 欧美午夜精品久久久久久人妖 | 69堂人成无码免费视频果冻传媒 | 国内外免费激情视频 | 国产又爽又黄又无遮挡的激情视频 | 毛片手机在线观看 | heyzo在线观看 | 日韩欧美在线视频观看 | 毛片黄片免费看 | 久久久精品中文字幕乱码18 | 涩涩屋视频在线观看 | 1024在线观看你懂的 | 久久人人爽人人爽人人片 | 国产日产精品久久快鸭的功能介绍 | 色婷婷av99xx | 97久久超碰中文字幕 | 国产精品高清不卡在线播放 | 老男人把我添得很舒服 | 韩国无码色视频在线观看 | 欧美极品少妇xxx | 中国极品videossex少妇 | 色婷婷精品国产一区二区三区 | 婷婷另类小说 | 国产97久久| 国产精品久久久久久亚洲毛片 | 密臀av | 无码人妻丰满熟妇区毛片18 | 99久久无色码中文字幕 | 91精彩刺激对白露脸偷拍 | 30岁少妇又紧又嫩 | 欧美熟妇喷潮xxxx | 国产麻豆精品一区 | 男人舔女人下面高潮视频 | 国产理论在线 | 99久re热视频这里只有精品6 | 好爽…又高潮了免费毛片 | 制服丝袜亚洲欧美中文字幕 | 日韩国产中文字幕 | 欧美一级大片免费看 | 久久久精品成人免费观看国产 | 国产精品亚洲lv粉色 | 无遮挡边摸边吃奶边做视频 | 18禁无遮挡免费视频网站 | 中文字幕在线免费看线人 | 午夜精品导航 | 熟妇人妻一区二区三区四区 | 男同又粗又大又好爽 小说 女人裸体夜夜爽快 | av性色av久久无码ai换脸 | 欧洲一卡2卡三卡4卡免费视频 | 欧美一级做a爰片免费视频 性欧美牲交xxxxx视频欧美 | 国产欧美日韩一区二区三区 | 2020最新国产高清毛片 | 偷拍亚洲综合 | 又粗又大又黄又爽的免费视频 | 成人在线综合网 | 天堂中文最新版在线中文 | 女人高潮抽搐喷液30分钟视频 | 91精品久久久久久久久不口人 | 天天干,夜夜操 | a∨色狠狠一区二区三区 | 少妇小芸h系列小说 | 精品久久久久久亚洲精品 | 亚洲人成色44444在线观看 | 国产精品无人区 | 少妇久久久久久被弄高潮 | 三区四区乱码不卡 | 久青草视频在线观看 | 免费看欧美成人a片无码 | 日韩视频一区二区三区在线播放免费观看 | 中文无码日韩欧免费视频 | 久久伊人爱| 男人的天堂av网站 | 少妇被粗大的猛烈进出va视频 | 国产高清中文手机在线观看 | 亚洲欧美在线观看 | 久久国产乱子伦精品免费台湾 | 换脸国产av一区二区三区 | 国产美女精品一区二区三区 | 最新亚洲人成无码网站 | 国产va免费精品高清在线30页 | 久久久精品成人 | 99国产精品99久久久久久 | 国产日韩欧美一区二区久久精品 | 亚洲欧美日韩专区 | 四虎永久网址 | 国产精品久久久久久久久婷婷 | 人人澡人人妻人人爽人人蜜桃麻豆 | 午夜影院免费体验区 | 人妻中文无码就熟专区 | 中文字幕一二区 | 免费看小12萝裸体视频国产 | 天天色天天干天天 | 欧美日韩精品一区二区三区高清视频 | 亚洲精品无码日韩国产不卡av | 88888888国产一区二区 | 亚洲国产成人久久综合碰碰 | 亚洲女女女同性video | 超碰97人人做人人爱亚洲 | 在线中文字幕一区二区 | 久久精品国产视频在热 | 六月久久 | 色人阁在线视频 | 免费人成小说在线观看网站 | 欧美一区二区三区不卡视频 | 久久精品波多野结衣 | 特级无码毛片免费视频播放 | av免费一区二区 | 女人爽到高潮潮喷18禁网站 | 国产成人精品日本亚洲第一区 | 色吊丝av中文字幕 | 少妇张开双腿自慰流白奖 | 成人一区在线观看 | 91探花网站| 偷窥村妇洗澡毛毛多 | 狠狠综合久久综合中文88 | 一边摸一边抽搐一进一出视频 | 亚洲中文字幕久爱亚洲伊人 | 国产精品久久久久久久久久新婚 | 夜夜躁狠狠躁日日躁2022 | 国产精品自在线拍国产手青青机版 | 羞羞影院午夜男女爽爽影院网站 | 亚洲乱码日产精品bd在线 | 欧美人与动人物姣配xxxx | 国产偷国产偷亚洲高清日韩 | 久久久久香蕉国产线看观看伊 | 亚洲国产日韩制服在线观看 | 37人体做爰久久久久久 | 免费av网站在线播放 | 欧美人与zoxxxx视频 | 欧美在线专区 | 国产男女猛烈无遮挡免费视频 | 成年人网站黄 | 久久精品一二三区白丝高潮 | 亚洲黄色激情视频 | 国产成人a区在线观看视频 久久人体 | 欧美激欧美啪啪片 | 久久品道一品道久久精品 | 72种姿势欧美久久久久大黄蕉 | 国产无遮挡18禁无码网站 | 国产精品久久久久999 | 黄色毛片 黄色毛片 | 国产黄色小网站 | 亚洲久久久久久久 | 噼里啪啦大全免费观看 | 中文字幕无码人妻波多野结衣 | 国语少妇高潮对白在线 | 99国产欧美精品久久久蜜芽 | 免费人成又黄又爽的视频 | av一道本 | 三集黄色片 | 国产一区二区美女 | 日欧视频 | 国产精品白嫩极品美女视频 | 欧美午夜精品一区二区蜜桃 | 一边摸一边叫床一边爽av免费 | 97视频在线观看免费 | 国产一区二区亚洲精品 | 国产视频999 | 欧美人与动牲交zooz3d | 国精产品推荐视频 | 熟妇人妻午夜寂寞影院 | 国产精品一区二区av日韩在线 | 亚洲一区在线视频 | 国产91色在线 | 免费 | 国产在线精品一区二区不卡 | 亚洲成av人片在线观看天堂无码 | 国产在线无码一区二区三区视频 | www.夜色| 精品免费一区二区三区在 | 夜夜综合网 | 一本大道香一蕉久 | 99久久精品毛片免费播放高潮 | 狠狠色噜噜狠狠狠色综合 | 九九热伊人 | 欧美人与物videos另类xxxxx | 四虎4hu永久免费深夜福利 | 老妇高潮潮喷到猛进猛出 | 天堂网www在线资源网 | 99国产伦精品一区二区三区 | 牛牛精品一区二区 | 好吊妞人成免费视频观看 | 激情 小说 亚洲 图片 伦 | 影音先锋久久 | 国产一级做a爱免费视频 | 啪啪拍网站 | 精品国产丝袜自在线拍国语 | 一级大片免费 | 2020每日更新国产精品视频 | 黄色大片国产 | 欧美播放| 亚洲国产成人久久综合同性 | 蜜臀aⅴ精品一区二区三区 99久久久精品免费观看国产 | 尤物精品视频在线观看 | 图片区小说区视频区 | 久久这里只精品热免费 | 97人人射 | 日日夜夜91 | 91超碰在线播放 | 成人福利视频在线观看 | 久久无码人妻精品一区二区三区 | 国产精品高潮久久 | 亚洲国产成人av人片久久 | 2019午夜福利不卡片在线 | 北条麻妃青青久久 | 亚洲 春色 另类 小说 | 国产精品三p一区二区 | 欧美日韩另类一区二区 | 少妇裸体婬交视频免费看 | 高清孕妇性孕交hd xx | 盗摄av| 豆国产96在线 | 亚洲 | 伊人久久久久久久久久久久 | 一本之道中文日本高清 | 一二三区毛片 | 国产日产欧产精品精品ai | 无码国产激情在线观看 | 国产精品久久自在自线 | 欧美区familymoms系列 | 男女全黄一级高潮 | 欧美精品一区二区三区视频 | 手机看片福利日韩 | 日韩一区二区三区无码人妻视频 | 国产色精品vr一区二区 | 免费女人裸体视频无遮挡免费网站 | 亚洲午夜久久久久久久久久久 | 午夜视频网 | 久久精品久久久久久噜噜老黄 | 久久久久一级片 | 国产欧美日韩视频一区二区三区 | 亚洲九九在线 | 91人人在线 | 亚洲狠狠丁香婷婷综合久久久 | 韩国三级l中文字幕无码 | 中日韩va无码中文字幕 | 中文字幕久久精品一区二区三区 | 欧美男人天堂 | 久久久精品久久日韩一区 | 99久久国产露脸精品 | 国产成人精品福利网站 | 国产目拍亚洲精品99久久精品 | 天天综合网7799精品视频 | 无码精品人妻一区二区三区中 | 中日韩在线观看视频 | 国产视频99 | 欧美日韩一线 | 精品国产一区二区三区性色av | 狠狠躁夜夜躁人人爽天天天天 | 亚洲国产精品久久人人爱潘金莲 | 欧美日韩精品一区 | 正在播放白浆 | 国产成人精品亚洲日本在线 | 国产91对白在线观看九色 | 亚洲熟妇无码八av在线播放 | 波多在线视频 | 欧美日韩精品人妻狠狠躁免费视频 | 91大奶| 天天操天天爽天天射 | 日本无遮挡边做边爱边摸 | 四虎亚洲精品成人a在线观看 | 奇米影视888欧美在线观看 | 成人欧美日韩一区二区三区 | 亚洲在av人极品无码网站 | 99久久影视 | 中文字幕天堂中文 | 精品久久99 | 午夜大片免费男女爽爽影院 | 午夜影院在线播放 | 黑人30厘米少妇高潮全部进入 | 99热精品免费 | 99热久久免费频精品18 | 国产精品成人永久在线 | 亚洲另类无码一区二区三区 | 国产精品99久久久久久动医院 | 欧美一级免费在线观看 | 国产主播av福利精品一区 | 水蜜桃精品一二三 | 色婷婷综合久久久中文字幕 | 少妇大叫受不了了爽爽爽摸摸视频 | 精品无人乱码一区二区三区的特点 | 国产精品va在线观看无码 | 欧美亚洲自偷自拍 在线 | 野花在线无码视频在线播放 | 日韩人妻中文无码一区二区 | 日韩人妻无码精品久久 | 国产伦子系列沙发午睡 | 又爆又大又粗又硬又黄的a片 | 亚洲h视频在线 | 亚洲黄色三级 | 国产成人精品一区二区 | 91精品国产自产91精品 | 亚洲欧美综合精品成人导航 | 成人亚洲a片v一区二区三区动漫 | 日本少妇无码精品12p | а√天堂资源中文在线官网九色 | 奇米精品一区二区三区四区 | 色香视频在线观看 | 五月丁色 | 激情婷婷综合网 | 午夜黄色在线 | 欧美xxxx做受老人国产的 | 成人日b视频 | 久久人妻少妇嫩草av蜜桃 | 久久公开视频 | 亚洲欧美综合在线观看 | 日韩内射美女片在线观看网站 | 日韩欧美成人一区二区三区 | 亚洲精品1卡2卡三卡4卡乱码 | 亚洲香蕉伊综合在人在线观看 | 欧美日韩亚洲国产欧美电影 | 亚洲国产成人爱av网站 | 中文字幕在线三区 | 亚洲视频一二三四 | 婷婷网五月天 | 特黄特色免费视频 | 亚洲综合在线五月 | 人人草人人舔 | 又色又爽又黄无遮挡的免费软件 | 国产第一福利影院 | 欧美一二三在线观看 | 久久久久成人精品无码 | 久久婷婷一级淫片aaa谢语彤 | 欧美v日韩v亚洲v最新在线 | 国产91极品白丝呻吟娇喘 | 亚洲午夜久久久精品影院 | 蜜臀av无码人妻精品 | 国产又爽又猛又粗的视频a片 | 在线看片无码永久av | 成人高潮片免费视频 | 国产一区视频一区欧美 | 无遮挡边吃奶边做刺激视频 | 精品国产一区二区三区av 性色 | а√天堂8资源最新版 | 无码不卡黑人与日本人 | 亚洲第一毛片18我少妇 | 欧美激情三区 | 男人的天堂在线 | 中文字幕a∨在线乱码免费看 | 欧美三级乱人伦电影 | 国模丽丽啪啪一区二区 | 肉色丝袜足j视频国产 | 日本在线色视频 | 少妇综合 | 亚洲小说春色综合另类 | 国产老熟女狂叫对白 | 特大黑人娇小亚洲女喉交 | 人人射人人爽 | 国产一级特黄aa大片出来精子 | 懂色av懂色aⅴ精彩av | 中文字幕在线免费 | 亚洲无打码 | 欧美大胆作爱视频欣赏人体 | 亚洲成人精品在线播放 | 亚洲精品国产美女久久久99 | 亚洲人成综合 | 最新天堂资源在线 | 亚洲 丝袜 制服 欧美 另类 | 美女视频免费在线 | 特黄特黄的视频 | www.jiujiucao | 少妇吹潮 | 一区二区高清视频在线观看 | 国产中年夫妇高潮精品视频 | 久久艹精品 | 无码国产伦一区二区三区视频 | 久久一区国产 | 黄网站在线看免费 | 国产精品久久国产三级国 | 亚洲欧美在线播放 | 人妻av无码专区 | 亚洲品质自拍 | 亚洲日韩av片在线观看 | 免费看成人毛片无码视频 | 国产偷久久一级精品60部 | 欧洲丰满大乳人妻无码欧美 | 1000部啪啪未满十八勿入不卡 | 天天干天天操天天做 | 午夜网站在线观看 | 在线日韩av免费永久观看 | 日本视频a | 瑟瑟视频在线免费观看 | 看免费的毛片 | 日产精品久久久久久久蜜臀 | 国产欧美日本亚洲精品一5区 | 日本亚洲精品成人欧美一区 | 日韩精品极品免费视频 | 国产中文网 | 精品国精品国产自在久国产87 | 黄色一级免费网站 | 色噜噜狠狠一区 | 偷拍亚洲欧美 | 亚洲精品国产自在现线最新 | 亚洲成人动漫在线观看 | 久久婷婷五月综合色99啪 | 黄色片免费在线观看 | 四虎影院最新地址 | 天天曰天天射 | 国产精品影音先锋 | 亚洲精品国产精品制服丝袜 | 国产精品美女久久久浪潮软件 | 国产精品女教师 | 亚洲国内自拍愉拍 | 国产日韩亚洲大尺度高清 | 色综合久久综合 | 能在线看的av | 男人女人黄 色视频一级香蕉 | 狠狠爱无码一区二区三区 | 污污又黄又爽免费的网站 | 91性高潮久久久久久久久 | 熟妇高潮精品一区二区三区 | 免费精品99久久国产综合精品 | 4虎成人 | 亚洲综合国产一区二区三区 | 狠狠干五月天 | 久久美利坚 | 97色播网| 午夜国内精品a一区二区桃色 | 99久久亚洲综合精品成人 | 久久精品一二三 | 欧美性猛片xxxxx免费中国 | 国产一二| 中文在线观看av | 欧美一级鲁丝片 | 黄www在线观看 | 天天摸天天摸色综合舒服网 | 一日本道a高清免费播放 | 久久国产乱子伦精品免费女人 | 国产天天骚 | 亚洲综合无码一区二区加勒此 | 正在播放久久 | 欧美bbbxxx| 刘亦菲久久免费一区二区 | 夜夜高潮夜夜爽精品欧美做爰 | 丰满又大又圆又白的美乳美女 | 亚洲人成色777777精品音频 | 成年女人爽到高潮喷视频 | 久久久久久99av无码免费网站 | 涩涩涩涩爱网站 | 色偷偷女人的天堂亚洲网 | 一级片视频在线观看 | 农村女人乱淫免费视频麻豆 | 成人91免费视频 | 亚洲人成77777在线播放网站 | 欧美成欧美va | 国产亚洲a∨片在线观看 | 边添小泬边狠狠躁视频 | 久热99 | 不卡av免费| 黄色一级片在线看 | 欧美综合自拍 | 中文字幕精品亚洲 | 日本国产一区二区三区在线观看 | 8090成人午夜精品无码 | 麻豆果冻国产剧情av在线播放 | 果冻国产精品麻豆成人av电影 | 青青操在线观看视频 | 久久伊人精品 | 日韩在线导航 | 97国产色呦呦呦夜嗨嗨 | 在线观看免费视频a | 亚洲撸 | 免费无码无遮挡裸体视频在线观看 | 欧美日韩中文字幕在线 | 国产视频69 | 狠狠爱亚洲综合久久 | 99久久国产热无码精品免费 | 国产精品伦一区二区三区在线观看 | 96视频在线 | 狠狠做久久深爱婷婷 | 中文字幕第8页在线资源 | 欧美高潮视频 | 免费大黄美女片免费网站 | 青青草国产免费久久久下载 | 吃奶呻吟张开双腿做受在线播放 | bdsm欧美另类折磨 | 交换交换乱杂烩系列yy | 亚洲视频国产 | 成在人线av无码免费高潮喷水 | 国产美女性生活视频 | 亚洲日韩成人无码不卡网站 | 久久久久久天堂 | 乱码一卡2卡3卡4卡精品 | 男女做爰猛烈吃奶啪啪喷水网站 | 九九香蕉视频 | 九一视频在线看 | 在线 国产 欧美 亚洲 天堂 | 亚洲第一天堂网 | av手机在线免费播放 | 日本人吃奶玩奶虐乳视频 | 在线观看av小说 | 成人六区| 韩国精品无码久久一区二区三区 | 美国久久久久久 | 精品国产一区二区三区久久 | 色xxx | 又黄又爽又湿又无遮挡的在线视频 | 爱情岛论坛亚洲永久入口口 | www国产精品人妻一二三区 | 手机看久久 | 18禁白丝喷水视频www视频 | 婷婷五月综合国产激情 | www.国产在线观看 | 丰满少妇被猛男猛烈进入久久 | ass日本丰满熟妇pics | 国产在线码观看超清无码视频 | 亚洲日韩∨a无码中文字幕 亚洲中文字幕日产乱码高清app | 亚洲天堂岛av| 日日鲁鲁夜夜狼狼视频 | 亚洲国产精品成人精品无码区 | 欧美疯狂做受xxxxx高潮 | 亚洲自偷精品视频自拍 | 99久久亚洲精品日本无码 | 中文字幕日产熟女乱码 | 日本v片在线观看 | 丰满诱人的少妇3伦理 | 亚洲国产成人久久综合下载 | 久草视频福利在线 | 成人中文字幕+乱码+中文字幕 | 成年男女免费视频网站 | 亚洲一区国产一区 | 欧美日韩亚洲国产另类 | 尤物精品在线观看 | 乱老年女人伦免费视频 | 美女天天操 | 亚洲一区精品二人人爽久久 | 在线看片免费人成视频久网 | 美女一区二区视频 | 亚洲成a∨人片在线观看不卡 | 国产亚洲xxxx在线播放 | 国产淫视频 | 亚洲熟女片嫩草影院 | 午夜性开放午夜性爽爽 | 91精品日韩 | 日本中文字幕不卡 | 精品久久久久久无码专区 | 激情综合激情五月俺也去 | 国产成人无码区免费内射一片色欲 | 日产精品卡二卡三卡四卡区满十八 | 欧美精品人人做人人爱视频 | 色窝窝无码一区二区三区 | 黄频在线免费观看 | 国产永久免费高清在线观看 | 狠狠躁夜夜躁人爽 | 国产女同疯狂作爱系列 | 深夜福利小视频在线观看 | 亚洲精品一品 | 国内野外强奷在线视频 | 亚洲精品综合欧美一区二区 | 日本不卡一二区 | 亚洲作爱网 | 国产一级淫片a免费播放 | 日本高清色www网站色噜噜噜 | 91免费版黄 | 一本色道久久综合狠狠躁 | 97超级碰碰碰久久久久app | 最近更新中文字幕 | 秋霞特色aa大片 | www.色天使.com | 免费观看又色又爽又黄的按摩视频 | 少妇人妻上班偷人精品视频 | 乱码视频午夜间在线观看 | 正在播放凉森玲梦88av | 国产边摸边吃奶边叫做激情视频 | 亚洲国产欧美一区 | 六月激情综合 | 国产欧美精品在线 | 国产精品va在线观看丝瓜影院 | 中文字幕亚洲乱码熟女一区二区 | 免费成人黄色片 | 手机看片169 | 久久久久国产精品人妻 | 性做爰片免费视频毛片中文 | 国产中的精品av涩差av | 成人免费网站在线 | 无码av无码天堂资源网 | 亚洲玖玖玖 | 亚洲天堂视频在线观看免费 | 国产精品成熟老女人 | 免费人成网站在线观看视频 | 老司机久久精品视频 | 亚洲激情免费视频 | 日本一级一片免费视频 | 无码人妻av一区二区三区蜜臀 | 亚洲女人av| 免费无码一区二区三区a片 久久精品道一区二区三区 26uuu另类亚洲欧美日本 | 米奇影视第四色 | 国产无遮挡 | 人人狠狠综合久久88成人 | 无码伊人久久大杳蕉中文无码 | 99热网站 | 日本一区二区视频在线 | 久久久亚洲 | 丰满人妻熟妇乱又伦精品 | 免费无码av片流白浆在线观看 | 字幕av在线| 88av在线| 日韩精品久久久久久久酒店 | 在线а√天堂中文官网 | 久久久久久精品成人鲁丝电影 | 亚洲美女中文字幕 | 久久精品噜噜噜成人av | 丁香五月网久久综合 | 又粗又黄又猛又爽大片免费 | 大唐艳妇臀荡乳欲伦小说 | 黄色a毛片 | 久久99精品一区二区蜜桃臀 | 久久综合亚洲 | 国产美女91呻吟求 | 强奷乱码中文字幕乱老妇 | 人妻少妇精品无码专区漫画 | 欧美亚洲精品在线观看 | 精品国精品国产自在久国产应用男 | 国产玖玖爱精品视频 | 嫩草伊人久久精品少妇av | 亚洲欧美日韩综合在线一 | 国产真实精品久久二三区 | 国产日韩未满十八禁止观看 | 国产一级做a | 四虎影视永久在线 | 天堂8av | 久久国产亚洲欧美久久 | 久久久久久久久久久久久女国产乱 | 亚洲精品一区二区三区麻豆 | 国产精品入口66mio | 欧美日韩国产在线人成 | 亚洲欧美在线免费观看 | 成人狠狠干 | 中文字幕第23页在线 | 国产三区av| 狠狠躁天天躁夜夜躁婷婷老牛影视 | 欧美精品四区 | 色综合色综合色综合 | 国产精品毛片久久久久久久明星 | 日本丰满妇人成熟免费中文字幕 | 免费在线播放黄色 | 狠狠插狠狠操 | 天堂视频网 | 亚洲 欧美 精品 | aⅴ精品无码无卡在线观看 日本熟妇色高清免费视频 曰韩无码二三区中文字幕 日本美女a级片 | 青草综合一区二区三区 | 91亚洲人人在字幕国产 | 国产日韩欧美亚洲精品中字 | 欧美日本特级婬片视频 | 91久久精品国产91久久 | 公天天吃我奶躁我的比视频 | 免费一区二区三区成人免费视频 | 自拍偷自拍亚洲精品偷一 | 午夜福利不卡在线视频 | 国产美熟女乱又伦av果冻传媒 | se视频在线 | 69久久精品无码一区二区 | 欧美特黄视频 | 国产一区二区免费 | 日韩激情综合网 | 国产色青青视频在线观看撒 | 精品综合| 东京道一本热中文字幕 | 热99在线观看 | 久久99热这里只有精品 | 又粗又紧又湿又爽的视频 | 久久久久久国产精品美女 | 国产黄色片一级 | 久久ww精品w免费人成 | 天天爱天天草 | 五月天婷婷爱 | 在线亚洲精品国产一区二区 | 欧美黄色美女视频 | 免费一区二区三区四区 | 2018国产精华国产精品 | 国产99在线观看 | 99精品国产免费 | 欧美日一级 | 最新av不卡| 免费看欧美中韩毛片影院 | 亚洲欧美成人在线 | 国产精品成人免费视频网站 | 穿越异世荒淫h啪肉np文 | 91精品国产综合久久小美女 | 秋霞最新高清无码鲁丝片 | 欧美亚洲综合在线一区 | 久久精品国产视频 | 日本中文乱码卡一卡二新区 | 国产中文综合免费 | 免费国产一区二区三区四区 | 亚洲国产精品久久久久久无码 | 偷窥自拍青青草 | 羞羞视频免费入口网站 | 少妇人妻88久久中文字幕 | 久久无码潮喷a片无码高潮 中文字幕无码一区二区免费 | 色插图午夜影院 | 人妻无码少妇一区二区 | wwwxx日本| 91三级视频 | 亚洲国产成人av国产自 | 伊人av综合| 人妻系列av无码专区 | 国产在线欧美日韩精品一区 | 日韩精品短片 | 夜夜爽久久精品91 | 日韩欧美在线精品 | 国产精品国产精品国产专区不卡 | 一区二区亚洲精品国产片 | 精品国产卡一卡2卡3卡 | 亚洲欧洲在线观看视频 | 亚洲www. | 综合久久综合久久88色鬼 | 国产精品毛片av999999 | 人人草av| 爱情岛论坛自拍亚洲品质极速福利 | 色大师在线观看 | 成人免费一区二区 | 亚洲一区二区播放 | 日韩午夜一区二区三区 | 久久久久夜夜夜综合国产 | 国产亚洲精品久久久久秋霞不卡 | 少妇精品高潮欲妇又嫩中文字幕 | 麻豆国产原创中文av网站 | 26uuu欧美日本 | 青青青国产精品国产精品美女 | 欧美v日韩v亚洲v最新在线 | 日韩中文字幕一区二区 | 噜噜噜噜狠狠狠7777视频 | 超碰在线人人草 | 美女黄色免费网站 | 熟女熟妇伦av网站 | 国产成人无码a区在线观看导航 | 欧美亚洲日韩国产综合电影 | 伊人亚洲综合网色 | 成人免费午夜视频69影院 | 欧美日韩午夜激情 | 免费大香伊蕉在人线国产卡 | 国产综合在线观看 | 成片在线看一区二区草莓 | 日韩高清在线 | 97久久精品人人爽人人爽蜜臀 | 国产免费无遮挡吸乳视频在线观看 | 国产精品嫩草影视久久久 | 老熟女高潮喷水了 | 国产wwwxx| 91网站在线观看视频 | 国内丰满少妇猛烈精品播 | 亚洲第一男人天堂 | 亚洲国产日韩欧美高清片 | 亚洲国产图片 | 激情小说另类图片 | 成人在线视频免费看 | 69激情网 | 在线观看av免费 | 性网爆门事件集合av | 久久久香蕉视频 | 蜜臀av中文字幕 | 欧洲免费无线码在线一区 | 午夜福利毛片 | 欧美激情网址 | 久草网av| 欧美a∨视频 | 亚洲精品美女久久777777 | 久久亚洲精品成人av二次元 | 丰满人妻熟妇乱又伦精品视频三 | 曰韩精品无码一区二区三区视频 | 亚洲性日韩精品一区二区三区 | 亚洲va中文字幕无码一区 | 国产精品18久久久久久久网站 | 对白刺激国产子与伦 | 欧美黄色试片 | 欧美日韩一区二区视频在线观看 | 天天干夜夜操视频 | 国产无遮挡色视频免费观看性色 | 国产午夜精品视频在线播放 | 日韩裸体人体欣赏pics | 日日噜噜噜噜久久久精品毛片 | 香蕉啪视频在线观看视频久 | 欧美日韩在线免费看 | 久久夜色精品国产欧美一区麻豆 | 日韩在线成人 | 欧美福利网站 | 漂亮人妻洗澡被公强 日日躁 | 亚洲精品国产成人av在线 | 亚洲综合激情另类小说区 | 少妇人妻无码专区视频 | av色片| 熟女丰满老熟女熟妇 | 婷婷五月俺也去人妻 | 夜夜添无码一区二区三区 | 亚洲三级久久 | 美国毛片基地 | a在线观看免费 | 伊人av中文av狼人av | 青青国产揄拍视频 | 免费看久久久 | 久草手机视频在线观看 | 日韩精品在线视频观看 | 国产九九热 | youjizz日韩 | 精品国产乱码久久久久久鸭王1 | 少妇太紧太爽又黄又硬又爽 | 真人第一次毛片 | 国产成人亚洲综合无码8 | 我要看一级黄色毛片 | 亚洲色无码专区在线播放 | 婷婷97狠狠成人免费视频 | 1313午夜精品理论片 | 天天操bb | 精品亚洲国产成人av在线 | 精品午夜国产福利在线观看 | 国产午夜精品久久久久久久蜜臀 | 人人草人人插 | 国产片av片永久免费观看 | 欧亚一区二区三区 | 131美女爱做视频免费 | 日韩精品一区二区三区四区 | 精品久久久无码人妻中文字幕豆芽 | 日韩午夜av | 亚洲欧洲日产国码二区 | 91av入口 | 国产九九九九九 | 亚洲乱码日产精品bd在线观看 | 97人人视频 | 日韩国产专区 | 精品国产一区二区av片 | 永久免费观看片在线现看 | 性xxxxx欧美老富婆 | 国产婷婷综合在线视频 | 亚洲另类伦春色综合小说 | 久久精品免费在线 | 亚洲 欧美 中文 日韩 综合 | 亚洲国产精品一区二区成人片 | 伊人网站| 婷婷丁香五月六月综合激情啪 | 东京热久久综合久久88 | 国产麻豆9l精品三级站 | 在线观看国产福利 | 日韩免费视频观看 | 欧美性xxxx极品少妇 | 少妇激情艳情综合小视频 | 国产欧美综合在线 | 欧美黄色a级片 | 国产成人av性色在线影院色戒 | 午夜精品久久久久久久喷水 | 国产三级久久久 | 色视频亚洲 | 亚洲狠狠操| 国产一区二区免费视频 | 午夜美女久久久久爽久久 | 国产成人av在线桃花岛 | 韩日综合成人中文字幕 | 午夜精品久久久久久久99热蜜臀 | 99久久国语露脸精品国产色 | 国产成人福利视频 | 性欧美在线视频 | 亚洲精品久久久久久下一站 | 免费视频中文字幕 | 久久综合色老色 | 九色 porny 蝌蚪 | 波多野结衣在线播放 | 2020精品自拍视频曝光 | 81精品久久久久久久婷婷 | 老司机久久99久久精品播放 | 2021年国产精品专区丝袜 | 亚洲激情视频网 | 日本牲交大片无遮挡 | 亚洲视频一区在线观看 | 2019av在线播放 | av不卡在线| 少妇高潮毛片免费看 | 中文字幕精品视频在线观看 | 亚洲大胆视频 | 色一情一区二区 | 国产精品久久久久久久免费软件 | 成人一区二区免费视频 | 精品国产三级a在线观看网站 | 日韩福利一区二区 | 最新国产av无码专区亚洲 | 精品久久久久久久久中文字幕 | 最新三级网站 | 精品无码一区二区三区爱欲 | 欧美一级免费片 | 综合激情六月 | 亚洲天堂网av在线 | 国产又黄又粗又爽 | 美国一区二区三区无码视频 | 五月丁香综合激情六月久久 | 亚洲操操操 | 性色在线视频 | 伊人久久亚洲 | 国产精品真实灌醉女在线播放 | 欧美成人精品高清在线观看 | 野外少妇愉情中文字幕 | 亚洲高清视频一区 | 久青草国产97香蕉在线视频 | 日本午夜免费 | av无码人妻无码男人的天堂 | 成人乱码一区二区三区av66 | aaa极品在线 | 青青成人在线 | 91九色porny视频 | 亚洲乱码一区av黑人高潮 | 日本黄视频网站 | 中文一区在线观看 | 久久久久国产精品久久久久 | 亚洲最大av资源网在线观看 | 肉欲性毛片交国产 | 日韩第七页| 亚洲国产精品无码久久久蜜芽 | 国产在线观看你懂得 | 日本午夜在线视频 | 最新国内精品自在自线视频 | 国产露脸精品产三级国产av | 久久精品这里热有精品 | 成人无号精品一区二区三区 | 另类激情在线 | 6080亚洲精品一区二区 | 少妇高潮喷水正在播放 | 欧美黑吊大战白妞 | 1024在线播放 | 欧美成人免费在线 | 日韩毛片基地 | 亚洲熟妇中文字幕日产无码 | 亚洲制服丝袜自拍中文字幕 | 亚洲中文字幕不卡无码 | 天天躁夜夜躁狠狠躁2021 | 国产精品日韩一区 | 日本精品免费视频 | 妺妺窝人体色www聚色窝仙踪 | 日韩精品在线一区二区 | 91色综合网 | 国产亚洲色婷婷久久99精品 | 少妇毛片一区二区三区免费视频 | 国产日韩在线免费 | 中文无码av一区二区三区 | 三级色网| 国产精品久久久久久久久久大牛 | 亚洲a爱| 九色视频自拍 | 日本aa大片| 国产精品网站入口 | 日韩在线视频在线 | 国产ktv交换配乱婬视频 | 亚洲国产中文在线视频 | 国产午夜无码视频免费网站 | 在线观看av免费 | 国产精品乱码一区二区三区四川人 | 精品人妻无码一区二区三区 | 亚洲精品亚洲人成人网 | 99国产精品99久久久久久 | 欧美熟妇的荡欲在线观看 | 99爱爱视频 | 让少妇爽到高潮视频 | 九九视频网 | 国产欧美日韩综合精品一 | 国产精选在线观看 | 精品久久久久久天美传媒 | 唐朝av高清盛宴 | 中文字幕免费在线视频 | 国产主播一区二区三区在线观看 | 天天做天天爱天天综合网 | 色综合色综合色综合色综合 | 亚洲国产精品无码一区二区三区 | 日韩欧美二区 | 色偷偷av一区二区 | 精品国产乱码久久久久久老虎 | 久久国产av影片 | 亚洲国产av无码一区二区三区 | 久久久久无码精品国产不卡 | 久久婷婷五月综合色99啪ak | 亚洲a级精品 | 国产高清一区二区三区 | 精品国产一区二区三区久久久蜜月 | 成人av网站免费 | 亚洲精品中文字幕在线播放 | 欧美亚洲综合成人专区 | 韩国理伦片一区二区三区在线播放 | 人妻丰满熟妇av无码区 | 一区二区三区四区在线播放 | 久久婷婷五月综合色丁香 | 日本少妇网 | 性欧美俄罗斯乱妇 | 美女天天操 | 91视频在线观看网站 | 久久久久久久久久久国产精品 | 天天色综合合 | 国产欧美日韩va另类 | 品久久久久久久久久96高清 | 体内精69xxxtv| 久久ク成人精品中文字幕 | 久久狼人亚洲精品一区 | 激情小说视频图片 | 国产农村妇女三级全黄91 | 国产女大学生av | 成人性生交视频免费观看 | 黑人邻居太猛中文字幕hd | 99精品欧美一区二区蜜桃美图 | 凹凸在线无码免费视频 | 欧美一级视频免费观看 | 欧美精品亚洲精品日韩精品 | 天天鲁一鲁摸一摸爽一爽 | 国内自拍第三页 | 国产精品色综合 | 日本簧片在线观看 | 国内精品视频一区二区三区 | 成品人片a91观看入口888 | 在线人视频观看免费 | 男人添女人囗交做爰30分 | 国产午夜人做人免费视频中文 | 日本鲜嫩bbwbbw | 黄 色 成 年 人免费观看 | 天堂av官网| 夜夜躁狠狠躁日日躁aab苏桃 | 国产精品毛片一区视频播 | 亚洲午夜成人av电影 | 少妇性饥渴无码a区免费 | 黄色免费观看视频网站 | 日韩欧美亚洲国产精品字幕久久久 | 国产亚洲精品久久久久久彩霞 | 国产偷窥盗摄一区二区 | 国产精品欧美亚洲 | 欧美精品乱码99久久蜜桃 | av人摸人人人澡人人超碰下载 | 国产女主播福利 | 无码av永久免费专区麻豆 | 国产亚洲精品久久久久久武则天 | 欧美一级在线免费观看 | 中文字幕高清一区 | 国产av永久精品无码 | а√天堂资源8在线官网在线 | 天堂国产一区二区三区四区不卡 | 97国产精华最好的产品亚洲 | 欧美视频亚洲图片 | 精品人妻一区二区三区浪潮在线 | 精品国产一区二区三区性色av | 超碰男人的天堂 | 成人在线a| 99久久伊人| 日韩欧美亚洲综合久久影院ds | 国产线精品视频在线观看网 | 久久99精品久久久久久青青 | 成人午夜精品无码区久久 | 熟女俱乐部五十路六十路av | 亚洲自拍偷拍在线 | 亚洲中文日产2021 | 亚洲制服有码在线丝袜 | 久热这里只有精品视频6 | 久久精品国产自清天天线 | 手机免费在线观看av | 日韩激情无码不卡码 | 久久人妻少妇偷人精品综合桃色 | 国产午夜福利片在线观看 | 午夜少妇影院 | 嫩草影院在线免费观看 | 在线看av网址 | 无码精品a∨在线观看十八禁软件 | 久久久久久九九99精品 | 乌克兰性欧美精品高清 | 成人久久18免费网站图片 | 强伦姧人妻三上悠亚中文字幕 | 黑色丝袜老师色诱视频国产 | 国产午夜成人av在线播放 | 久久国产亚洲精品赲碰热 | 噜噜噜狠狠夜夜躁精品仙踪林 | 欧美日韩欧美日韩在线观看视频 | 黑料av在线 | 亚洲成av人影院无码不卡 | 捏胸吃奶吻胸免费视频大软件 | 国产欧美亚洲日韩图片 | 中文字幕亚洲综合 | av在线激情 | 欧美性午夜视频观看 | 波多野成人无码精品电影 | 亚洲欧美黑人深喉猛交群 | 欧美日韩精品一区二区天天拍 | 青青操视频在线播放 | 五月精品夜夜春夜夜爽久久 | 999视频网站 | 亚洲精品国偷自产在线99人热 | 久久精品国产av一区二区三区 | 四虎永久在线精品免费网站 | 天堂8在线最新版在线 | 熟妇玩小男视频在线 | 国产色视频自在线观看 | 亚洲黄色激情 | 好吊操视频 | 中文字幕97 | 婷婷综合激情 | 欧美成人精品视频在线不卡 | 成人淫片免费视频95视频 | 激情第一区仑乱 | 色丁香在线 | 久久国产精品77777 | 亚洲天堂一区在线 | 中文字幕在线观看三区 | 欧美福利视频导航 | 91福利视频导航 | 亚洲精品鲁一鲁一区二区三区 | 亚洲黄视频在线观看 | 新婚之夜玷污岳丰满少妇在线观看 | 日韩精品一区二区三区亚洲综合 | 久久一区三区 | 老汉av | 开心丁香婷婷深爱五月 | 国产又色又爽无遮挡免费动态图 | 狠狠色噜噜狠狠狠888米奇视频 | 中文字幕亚洲高清精品一区在线 | 日韩精品无码免费专区网站 | 日本按摩高潮 | 五十六十路熟女交尾a片 | 又爽又黄禁片视频1000免费 | 国产亚洲区 | 天天爽夜夜爽人人爽曰 | 99av国产精品欲麻豆 | 亚洲线精品一区二区三区 | 伊人wwwyiren22 | 成人精品av | 亚洲国产日韩在线人成蜜芽 | 日韩在线无 | 亚洲日韩乱码中文无码蜜桃臀 | 嫩草影院入口 | 精品午夜一区二区三区在线观看 | 毛片免费视频在线观看 | 伊人55 | 国产精品丝袜黑色高跟鞋 | 日本一道本高清一区二区 | 亚洲精品日本 | 韩国色综合 | 99久久久无码国产精品试看 | 亚洲国产成人五月综合网 | 国产浪潮av性色av小说 | 天堂va欧美va亚洲va好看va | 蜜桃av影院| 奇米777四色精品综合影院 | 99久久久国产精品免费牛牛 | 在线观看的黄网 | 制服丝袜快播 | 麻豆文化传媒精品一区 | 久久人人爽人人爽人人片亚洲 | 手机在线永久免费观看av片 | 网友自拍av | 少妇高潮水多太爽了动态图 | 五月深爱| 久久人人爽人人爽人人片av麻烦 | 久久久久人妻一区视色 | 亚洲处破女av一区二区中文 | 色婷婷狠狠18 | 老湿机69福利区无码 | 日本十八禁视频无遮挡 | 欧美人与动牲猛交a欧美精品 | 18禁黄污无遮挡无码网站 | 5566成人精品视频免费 | 亚洲综合最新无码专区 | 亚洲熟妇无码久久精品 | 日韩三级欧美 | 午夜丁香 | 男女裸体影院高潮 | 欧美亚洲国产精品久久蜜芽 | 国内a∨免费播放 | 少妇高潮尖叫黑人激情在线 | 一区二区三区四区中文字幕 | 嫩草视频网站 | 国产黄色精品网站 | 2019精品手机国产品在线 | 亚洲欧美另类综合偷拍 | 日本黄xxxxxxxxx100 | 无码一区二区三区av免费蜜桃 | 中文字幕av网站 | 亚洲在线观看视频 | 久草这里只有精品 | 一级黄色在线播放 | 日韩av影视大全 | 免费的av网站在线观看国产精品 | 亚洲熟妇色xxxxx亚洲 | 风韵人妻丰满熟妇老熟女 | 福利视频网站导航 | 国产中文字幕在线 | 91精品爽啪蜜夜国产在线播放 | 狠狠五月婷婷 | 国产黄毛片 | 久久久久激情 | 在线观看国产成人swag | 午夜亚洲www湿好大 日本不卡一二区 | 欧美日韩国产精品激情在线播放 | 国产高清在线精品一区 | 色婷婷亚洲精品综合影院 | 污片网站在线观看 | 草草在线免费视频 | 国产五级黄色片 | 日日色视频 | av老司机福利精品导航 | 国产精品国产三级区别第一集 | 国产成人精品97 | 欧美人狂配大交3d | 国产午夜福利精品一区二区三区 | 欧美特黄在线观看 | 日本道精品一区二区三区 | 欧美黑人狂野猛交老妇 | 国产精品嫩草影院8vv8 | 亚洲午夜私人影院在线观看 | 中文字幕aⅴ人妻一区二区 99热最新精品 | 又大又黄又粗又爽的免费视频 | 香蕉久久a毛片 | 亚洲性视频在线 | 亚洲日本va中文字幕久久 | 激情六月 | 欧美日韩午夜精品 | 无人观看高清视频在线单曲播放 | 国产亚洲精品久久无码98 | 天天影视综合色 | 婷婷干| 999视频网站| 亚洲精品国产一区二区小泽玛利亚 | av色偷偷 | 视频1区2区3区 | 亚洲免费成人av | 精品日韩欧美一区二区在线播放 | 91蝌蚪在线 | 欧美亚洲国产精品久久高清浪潮 | 国产在线精品一区二区三区直播 | 国产日韩欧美 | 最近免费中文字幕大全免费版视频 | 久久人妻av无码中文专区 | 久久视频在线视频精品 | 日韩欧美综合在线视频 | 亚洲国产一成人久久精品 | 精品国产一区二区三区四区色 | 高潮又爽又无遮挡又免费 | 欧美性一区 | 美女福利视频在线 | 亚韩天堂色总合 | 欧美日本国产在线 | 午夜又黄又爽 | 91小视频在线 | av无码久久久久不卡免费网站 | 国产香蕉精品 | www.四虎.com| 懂色av噜噜一区二区三区av | 亚洲熟妇中文字幕曰产无码 | 美女阿姨| 中文字幕乱码在线蜜乳欧美字幕 | 伊人久久大香线蕉av波多野结衣 | 亚洲顶级裸体av片 | 52综合精品国产二区无码 | 国产无遮挡猛进猛出免费软件 | 国产品无码一区二区三区在线 | 精选国产av精选一区二区三区 | 美女扒开腿让男人桶爽久久软件 | 亚洲精品久久久艾草网 | 国产精品30p | 四虎久久久 | 免费无码黄网站在线观看 | 久久久久网站 | 日韩中文字幕区一区有砖一区 | 日韩www在线观看 | 久草观看 | 国产成人av一区二区三区不卡 | 国产品无码一区二区三区在线 | 99久久国产综合精品swag | 门国产乱子视频观看 | 伊人久久大香线蕉av网站 | 99久久国语露脸精品国产色 | 久久99精品久久久久久琪琪 | 欧洲色网站 | 欧美高清免费 | 蜜乳av久久久久久久久久久 | 成av人片一区二区三区久久 | 日韩精品视频在线观看网站 | 亚洲,国产成人av | 国产五月天婷婷 | 白天躁晚上躁麻豆视频 | 一级片aaa | 日韩视频在线视频 | 最新国产精品精品视频 | 色老大久久综合网天天 | 亚洲精品无码专区久久 | 亚洲精品久久国产精品 | 国产精品偷窥久久久盗摄 | 男人靠女人免费视频网站 | 欧美激情国产在线 | 天天插天天干天天射 | 中国极品少妇videossexhd 人人干夜夜 | 色综合久久无码中文字幕 | 综合视频在线 | 欧美 日韩 国产 另类 图片区 | 精品无码三级在线观看视频 | 四虎网站在线播放 | 96在线看片免费视频国产 | 久久高清内射无套 | 伊人久久久av老熟妇色 | 成人麻豆精品激情视频在线观看 | 精品国产片一区二区三区 | 亚洲性夜| 天天综合激情 | www.热| 在线观看亚洲精品视频 | 国产精品玩偶在线观看 | 中文字幕亚洲综合小综合在线 | 色视频无码专区在线观看 | 国产一区二区精品久久 | 好男人社区资源 | 国语自产偷拍精品视频偷拍 | 天天爱天天干天天操 | 俄罗斯a级毛片 | 成 人 网 站 在 线 免费 观 看 | 青青草免费在线 | 欧美成人性视频在线播放 | 国产美女裸身网站免费观看视频 | 妺妺窝人体色777777 | 欧美成人自拍视频 | 久久久无码精品亚洲日韩精东传媒 | 国产乱xxxxx97国语对白 | 中文字字幕在线中文乱码 | 亚洲精品入口一区二区乱麻豆精品 | 黄色大片免费的 | 国产精品久久中文字幕 | 天堂8最新版| 欧美91成人网 | 国产精品亚洲视频 | 色碰 | 国内黄色一级片 | 日韩精品少妇一区二区在线看 | 图片区小说区av区 | 欧美午夜精品久久久久久浪潮 | 国产在线国偷精品免费看 | 欧美另类变人与禽xxxxx | 377p日本欧洲亚洲大胆张筱雨 | 欧美一级片网址 | 亚洲欧美日韩国产 | 国产 浪潮av性色四虎 | 日日噜噜噜夜夜爽爽狠狠22 | 亚洲成av人在线视猫咪 | 成人性生交大片免费 | 亚洲喷水 | 第一福利视频导航 | 欧美精品v | 日韩三级网址 | 精品国产无套在线观看 | 黄色片在线观看网站 | 国内揄拍国内精品对白 | 亚洲精品在线视频观看 | 嫩模写真一区二区三区三州 | 亚洲人成网77777色在线播放 | 成人做爰69片免网站 | 亚洲日韩va无码中文字幕 | 中文字幕乱码人妻综合二区三区 | zjzjzjzjzj亚洲和日本 | 成人av专区精品无码国产 | 人人妻人人插视频 | 搡老女人老妇女老熟妇 | 三级日本 三级韩国 三级欧美 | 国产精品av一区 | 成人区人妻精品一区二区不卡视频 | 激情做爰呻吟视频舌吻 | 国产精品丝袜综合区旗袍 | 久久久久国色av免费观看 | 后进式无遮挡啪啪摇乳动态图 | 色狠狠久久av五月综合 | 中文字幕av色 | 亚洲一区二区三区国产精品无码 | 免费永久看黄神器无码软件 | 九九热视频在线观看 | 91视频天堂| 久久精品国产精品青草app | 欧美成人精品 一区二区三区 | 人妻aⅴ无码一区二区三区 日韩av免费播放 | 九一精品国产 | 极品少妇久久久 | 伊人蕉久中文字幕无码专区 | av网址观看 | 小sao货cao得你舒服吗国产 | 色播av在线 | 一级黄色视屏 | 日韩成人av免费在线观看 | 国产成人综合一区二区三区 | 成人免费毛片入口 | 少妇性l交大片久久免费 | 99精品国产高清一区二区麻豆 | 国产成人一区二区三区app | 国产一区二区三区久久久久久久 | 四虎影视永久地址www成人 | 亚洲精品探花 | 中文字幕第八页 | 四川骚妇无套内射舔了更爽 | 午夜精品久久久久久久久久久 | 精品国产丝袜自在线拍国语 | 99久久国产综合精品成人影院 | 国产成人无码精品久久久性色 | 亚洲国产美国国产综合一区二区 | 日韩欧美高清在线 | 久久精品a亚洲国产v高清不卡 | 色大师在线观看免费播放 | 亚洲精品一区二区在线播放∴ | 亚洲 欧美 另类 综合 日韩 | 国产放荡av剧情演绎麻豆 | 天美星空大象mv在线观看视频 | 中文字幕日韩三级 | 天天爽夜夜爽人人爽曰 | 91超碰在线播放 | 中文字幕一二三区波多野结衣 | 国内自拍真实伦在线观看 | 一级视频在线免费观看 | 亚洲中文字幕va毛片在线 | 我不卡av| 日韩精品视频在线观看一区二区三区 | 国语自产偷拍精品视频偷拍 | 好吊色国产欧美日韩免费观看 | 95视频在线 | 女同重口另类在线观看 | 久久精品亚洲一区二区三区观看模式 | 91视频h | 看片日韩 | 欧美日韩国产图片区一区 | 中文字幕人妻熟女在线 | 双乳被老汉揉搓a毛片免费观看 | 欧洲熟妇性色黄 | 国产精品伦一区二区三区在线观看 | 色婷婷综合久久中文字幕雪峰 | 久在线视频 | 狠狠色网 | 一区二区伊人久久大杳蕉 | 亚洲最大成人综合网720p | 亚洲精品无码成人aaa片 | 国产日韩成人 | 欧美情侣性视频 | 日日摸日日添日日碰9学生露脸 | 色一情一区二区三区四区 | 少妇私密推油呻吟在线播放 | 国产白袜脚足j棉袜在线观看 | 精品久久一二三区 | 国产美女自卫慰视频福利 | xnxx女第一次 | 午夜精品一区二区三区在线视 | 午夜精品影视国产一区在线麻豆 | 天天摸天天干 | 色www永久免费视频首页在线 | 精品国产天堂综合一区在线 | 人妻夜夜爽爽88888视频 | 欧美日韩一区免费 | 久久亚洲日韩精品一区二区三区 | 特级黄色毛片在放 | 亚洲视频播放 | 色视频网站免费看 | 精品少妇爆乳无码av无码专区 | 久热草视频| 亚洲国产日韩精品二三四区竹菊 | 久久综合色_综合色88 | 国产精品_国产精品_k频道w | 国产午夜精品视频 | 日韩一区二区视频在线播放 | 亚洲视频123 | 韩国亚洲精品a在线无码 | 美女久久久| 久久精品国产99国产精品亚洲 | 老司机深夜福利影院 | 天天做天天爱天天操 | 精品国产亚洲一区二区三区在线观看 | 国产精品毛片完整版视频 | 少妇人妻大乳在线视频 | 欧美wwwxxx | 伊人久网 | 国产精品一二三区久久狼 | 五月天婷婷在线播放 | 免费国产高清毛不卡片基地 | 久久久中文字幕 | 西西人体大胆无码视频 | 99riav欧美丰满少妇视频 | 上原亚衣av一区二区三区 | 老司机黄色片 | 爽爽影院在线免费观看 | 日韩精品在线观看中文字幕 | av在线亚洲欧洲日产一区二区 | 无码免费无线观看在线视 | 激情丁香 | 天堂网www在线资源 五月天男人天堂 | 亚洲欧美另类综合 | 性生交大片免费看网站 | 日本v在线 | 欧美成人免费播放 | 精品国产一区二区三区久久狼5月 | 一级黄色免费片 | 欧美精品一区二区在线播放 | 精品在线视频一区二区三区 | 一区视频在线免费观看 | 波多野结衣网址 | 亚洲精品你懂的在线观看 | 日本黄又爽又大高潮毛片 | 亚洲人成网站免费播放 | 日韩中文字幕一区二区 | 青草国产精品久久久久久 | 4hu44四虎www在线影院麻豆 | 久久盗摄 | 国产精品自拍av | 国产在线视频一区二区三区 | 亚洲无线观看国产高清 | 日本精品久久久久中文字幕乱中年 | 精品一区二区三区视频 | 欧美一区二区三区在线 | 亚洲国产精品久久久天堂 | 亚洲国产av无码一区二区三区 | 久久亚洲春色中文字幕久久久 | 国产成人无遮挡在线视频 | 黄色av网站在线播放 | av小次郎收藏 | 亚洲精品欧美综合二区 | 成人黄色录像 | 99超碰在线观看 | 无码高潮又爽又黄a片软件 国产富婆一级全黄大片 | 91丨porny在线牛牛影视 | 国产v在线在线观看视频免费 | 日韩不卡在线视频 | 国产成人在线免费观看视频 | 国产欧美一区二区三区免费视频 | 男女啪祼交视频 | 国产另类xxxx | 精品久久久久久久久久中文字幕 | 欧美精品黄色片 | 成人看片黄a免费看视频 | np高h肉辣灌浆调教肉奴 | 国产百合互慰吃奶互揉视频 | 亚洲精品av少妇一区二区 | 免费一区二区视频 | 99热热久久 | 免费观看一区二区三区 | 婷婷久久av| av无码一区二区大桥久未 | 国产精品18久久久久白浆 | 五月香蕉网 | 中国女人精69xxxxxx视频 | 人人莫人人擦人人看 | 欧美人与动牲交a欧美 | 天天躁日日躁狠狠躁一区 | 欧美日韩亚洲tv不卡久久 | 国产在线a视频 | 色综合天天狠 天天透天天伊人 | 全部免费a级毛片 | 国产午夜精品18久久蜜臀董小宛 | 蜜臀国产在线视频 | 五月天婷婷色综合 | 亚洲天堂国产 | 潮喷大喷水系列无码视频 | 欧美国产日韩a欧美在线观看 | 台湾佬美性中文娱乐网 | 久久久久99精品成人片欧美 | 少妇被粗大的猛烈进出69影院一 | 国产精品178页 | 欧美日韩爱爱 | 日韩国产免费 | 成人午夜精品无码区 | 第一福利在线观看 | 国产精品亚洲w码日韩中文 久久ww精品w免费人成 | 青青草草视频 | 天天看天天干 | 天天操2018 | 欧美丝袜一区二区三区 | 亚洲综合爱 | 天天干夜夜做 | 精品久久久久久无码专区不卡 | 欧美日韩一区视频 | 国语对白做受欧美 | 亚洲大成色www永久网站注册 | 黄色亚洲视频 | 特黄 大片做受又粗又硬又大 | 国产夜夜爽 | 欧美18免费视频 | 日韩精品一区二区av在线观看 | 人人澡人摸人人添 | 欧美成人免费在线视频 | 欧美精品一国产成人综合久久 | 特黄 做受又硬又粗又大视频 | 清纯唯美经典一区二区 | 少妇真实被内射视频三四区 | 97se狠狠狠狼鲁亚洲综合网 | 狠狠色综合欧美激情 | 中文字幕国产剧情 | 喷水白丝蜜臀av久久av | 亚洲人成人伊人成综合网无码 | 亚洲国内自拍愉拍 | 午夜福利在线观看6080 | 亚洲欧美日韩久久精品 | 91久久久久久久久久久久 | 亚洲一区二区三区自拍天堂 | 欧美日韩一级视频 | 好大好深好猛好爽视频免费 | 国产无遮挡aaa片爽爽 | 性迪拜xxxhd 88xx成人永久免费观看 | 任我行视频在线观看国语 | 欧美大片18| 亚洲爽爽 | 男女全黄一级高潮 | 日韩精品久久久久久久 | 无码免费午夜福利片在线 | 丰满护士巨好爽好大乳 | 最新中文字幕在线视频 | 四虎影像 | 99国产精品白浆无码流出 | 国产曰肥老太婆无遮挡 | 久久婷婷五月综合尤物色国产 | 99国内精品久久久久久久软件 | 亚洲精品v欧洲精品v日韩精品 | 亚洲欧美综合另类自拍 | 久操视频免费观看 | 亚洲大胆人体视频 | 午夜毛片不卡高清免费看 | 少妇娇喘呻吟出水好深一区二区 | 在线色网| 有码视频在线 | 伊人久久久av老熟妇色 | 狠狠色噜噜狠狠狠四色米奇 | 日韩午夜无码精品试看 | 国产九色在线播放九色 | 亚洲va韩国va欧美va精品 | 综合久久色 | 91啪国自产| 日韩无砖专区2021嘟嘟网 | 无人区码一码二码w358cc | 中文字幕乱码亚洲影视 | 538国产视频 | 日韩av一区二区精品不卡 | 精品视频入口 | 成年站免费网站看v片在线 国产精品久久影视 | 无码精品国产dvd在线观看久9 | 久久人人97超碰国产公开 | 亚洲 欧洲 日韩 综合色天使 | 欧美性猛交xxxx久久久 | 国产视频1| 国产亚洲精品a在线观看 | 精品亚洲国产成人蜜臀优播av | a亚洲va欧美va国产综合 | 三级午夜理伦三级交换的一天 | 青青草久久伊人 | 日产国产亚洲 | 97久久国产露脸精品国产 |