• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于嵌入式S3C2440系統(tǒng)Bootloader設計與實現(xiàn)

    2016-11-17 08:55:58范蟠果邢保毫米曉亮余書寶
    計算機測量與控制 2016年9期
    關(guān)鍵詞:內(nèi)核內(nèi)存代碼

    范蟠果,邢保毫,米曉亮,余書寶, 王 婷

    (西北工業(yè)大學 自動化學院,西安 710129)

    ?

    基于嵌入式S3C2440系統(tǒng)Bootloader設計與實現(xiàn)

    范蟠果,邢保毫,米曉亮,余書寶, 王 婷

    (西北工業(yè)大學 自動化學院,西安 710129)

    Bootloader是嵌入式系統(tǒng)的一個重要環(huán)節(jié),對不同的硬件平臺,其Bootloader都不盡相同,因此設計Bootloader是嵌入式系統(tǒng)開發(fā)的難點;文中分析S3C2440嵌入式系統(tǒng)的硬件組成和u-boot源碼對linux內(nèi)核的啟動流程,得出u-boot啟動內(nèi)核兩個階段必備階段:第一個階段是用匯編初始與具體硬件平臺相關(guān)的操作等,第二階段是用C語言編寫復雜功能以及啟動內(nèi)核;以加載linux-2.6.22.6內(nèi)核為例,根據(jù)u-boot啟動內(nèi)核兩個階段所做的工作,設計出適用于S3C2440嵌入式系統(tǒng)的精簡Bootloader;通過實驗表明,該設計的Bootloader成功啟動linux內(nèi)核,具有良好的穩(wěn)定性,可靠性和簡潔性。

    系統(tǒng)設計;分析u-boot;實現(xiàn)Bootloader;啟動內(nèi)核

    0 引言

    Bootloader是嵌入式系統(tǒng)內(nèi)核運行前的一段程序,這段程序初始化硬件設備,并且建立一個內(nèi)存空間映射圖,從而建立適當?shù)南到y(tǒng)軟硬件環(huán)境,為最終啟動內(nèi)核和加載文件系統(tǒng)做準備[1]。由于Bootloader依賴于硬件,它與處理器架構(gòu),具體設計的硬件平臺資源相關(guān),因此設計一個適合某平臺的Bootloader是開發(fā)嵌入式系統(tǒng)重要工作。

    在設計引導程序時,一般會移植u-boot開源代碼,但是這樣代碼量大,占用較大存儲空間;本文通過分析u-boot啟動流程,根據(jù)硬件平臺資源,設計一個精簡,穩(wěn)定的Bootloader。

    1 u-boot 分析

    1.1 u-boot啟動流程分析

    分析支持S3C2410的u-boot源代碼,具體啟動流程分析如圖1所示。

    圖1 u-boot啟動流程

    根據(jù)分析得出啟動過程一般分為兩個階段。

    stage1:主要通過匯編來實現(xiàn)和硬件相關(guān)代碼:硬件設備初始化,加載u-boot第二段代碼到RAM空間,設置好棧,跳轉(zhuǎn)到第二段代碼入口[2]。

    stage2:主要用C語言來實現(xiàn)一些復雜的功能:初始化本階段使用的硬件設備,檢測系統(tǒng)內(nèi)存映射,將內(nèi)核從flash讀取到RAM中,為內(nèi)核設置啟動參數(shù),調(diào)用內(nèi)核[2]。

    1.2 u-boot編譯以及大小分析

    u-boot在編譯之前,需要編寫好Makefile和連接文件u-boot.lds,然后通過make命令編譯生成u-boot.bin;Makefile規(guī)定u-boot所有函數(shù)的依賴關(guān)系;連接文件u-boot.lds指定u-boot編譯的連接地址,第一個被編譯的文件,存放的代碼段,數(shù)據(jù)段以及BSS段的位置。

    如下面一個連接文件u-boot.lds:

    SECTIONS

    {

    . = 33f00000;//指定的連接地址

    .text ://代碼段

    {

    _start = .;//代碼段開始位置

    arch/arm/cpu/arm920t/start.o (.text)//執(zhí)行編譯的第一個文件start.S

    ... }

    .data ://數(shù)據(jù)段

    .....

    __bss_start = .;//BSS段開始位置,此處為u-boot.bin大小結(jié)束位置

    ......}

    BSS段是由靜態(tài)和未初始化的全局變量組成,不會被編譯到u-boot.bin中。

    由連接文件可知u-boot的大小為__bss_start 地址減去_start的地址 ,可以查看u-boot的反匯編得到具體的大小,執(zhí)行arm-linux-objdump -D u-boot > u-boot.dis命令來生成如下u-boot.dis反匯編文件,:{

    Disassembly of section .text:

    33f00000 <_start>:注釋:代碼開始位置,和連接文件中的連接地址一致

    33f00000: ea000013 b 33f00054

    ......

    33f00044 <_bss_start_ofs>:

    33f00044: 00069c4c .word 0x00069c4c

    .......} 注釋:在啟動文件start.S中定義一個表示u-boot.bin大小的全局變:

    .globl _bss_start_ofs

    _bss_start_ofs:

    .word __bss_start - _start

    編譯的u-boot.bin大小為(0x00069c4c)423 KB,占有很大存儲空間。由于u-boot是一個支持多平臺的源代碼,所以它的結(jié)構(gòu)復雜,若要讓這個u-boot成功應用到S3C2440系統(tǒng)上,需要對u-boot源代碼進行裁剪,并且添加支持平臺外設的代碼,工作量比較大,而且不便于調(diào)試。所以很有必要設計適用S3C2440系統(tǒng)的Bootloader,具體設計如下。

    2 系統(tǒng)設計

    2.1 硬件設計

    圖2 是一個基于ARM嵌入式系統(tǒng)硬件框圖,S3C2440芯片是基于ARM920T的架構(gòu)處理器,片內(nèi)有4 k的SRAM,nandflash控制器,SDRAM控制器等資源。板級設備包含:全功能的串口,JTAG,Nandflash (256 M), SDRAM(64 M)等。

    圖2 硬件平臺框圖

    2.2 系統(tǒng)軟件內(nèi)存設計

    1)根據(jù)S3C2440手冊可知SDRAM映射在BANK7,所以起始地址為0x30000000;結(jié)束地址為0x34000000。在調(diào)用C語言之前要設置棧指針,ARM棧是往下增長的,設計棧指針為0x34000000。為給內(nèi)核以及文件系統(tǒng)留有足夠的內(nèi)存,設置啟動代碼連接地址為0x33f80000。內(nèi)核編譯后大小不超過2 M,設計內(nèi)核連接地址為0x30008000。內(nèi)核把啟動參數(shù)放在0x30000100位置處,具體內(nèi)存分布如圖3。

    2)Nandflash是存儲程序和數(shù)據(jù),掉電后能保存數(shù)據(jù)和程序,所以啟動代碼和內(nèi)核都存放nandflash中,為了保證兩者代碼不覆蓋,設計Bootloader存儲的起始地址為0x0,內(nèi)核存儲的起始地址為0x60000。

    根據(jù)設計的存儲空間和內(nèi)存分配,兩者的映射關(guān)系如圖3所示。

    圖3 映射空間圖

    3)代碼重定位。

    根據(jù)兩者映射關(guān)系,需要對代碼進行重新定位,詳細分析如下:

    由于cpu對nandflash讀取是以塊(2 048 KB)為單位的,所以不能在nandflash上運行程序。當系統(tǒng)上電或者重啟時,硬件自動把存儲器中前4 KB代碼拷貝到cpu內(nèi)部SRAM(映射地址為0);對于連接地址為0x33f80000的代碼若要成功運行在地址為0的內(nèi)存中,在設計代碼時必須使用位置無關(guān)指令。通過運行在SRAM程序把nandflash中啟動代碼和內(nèi)核拷貝到SDRAM,然后通過一條跳轉(zhuǎn)指令,使PC指向SDRAM。

    3 Bootlaoder軟件實現(xiàn)

    根據(jù)分析得到u-boot啟動流程,以及分配好的內(nèi)存,下面針對S3C2440特定的嵌入式系統(tǒng),實現(xiàn)一個完整的Bootloader。

    3.1 第一階段

    Stage1主要是完成,建立向量表,初始化硬件,設置堆棧,把Bootloader拷貝到內(nèi)存中,具體流程如圖4所示。

    圖4 Bootloader一階段流程

    (1)設置ARM異常向量表。

    根據(jù)ARM920T的架構(gòu)可知,異常向量入口地址從0x00000000開始到0x0000001c結(jié)束,分別設置對應入口地址,當一個異?;蛑袛喟l(fā)生時,處理器會把pc指向?qū)袛嘞蛄康娜肟诘刂贰?/p>

    2)設置相關(guān)硬件。

    設置時鐘,使CPU主頻為400 MHz;屏蔽中斷;初始化串口以便于調(diào)試。

    3)初始化SDRAM。

    SDRAM用來運行啟動代碼和內(nèi)核,必須對其進行設置,SDRAM控制器的寄存器,包含處理器對SDRAM讀寫訪問的時序,數(shù)據(jù)寬度;系統(tǒng)使用兩片16位數(shù)據(jù)接口的K4S561632N,其數(shù)據(jù)寬度為32位。

    4)設置堆棧指針。

    Bootloader在啟動階段是運行在管理模式下,只需設置管理模式下的堆棧指針(向下增長),代碼為: ldr sp, =0x34000000;設置成功后就可以調(diào)用C語言代碼。

    5)nandflash的初始化。

    由于需要把存儲在nandflash的啟動代碼和內(nèi)核讀入SDRAM,所以要設置nandflash控制器的寄存器,設置cpu對存儲器讀寫時序,以及數(shù)據(jù)寬度。

    6)把啟動代碼拷貝到SDRAM執(zhí)行。

    SDRAM配置成功后,就可以從nandflash拷貝Bootloader啟動代碼到內(nèi)存中運行;具體代碼如下:

    mov r0, 0 /*從nandflash 的0x0地址開始拷貝*/

    ldr r1, =_start /*這個值是由連接腳本確定為0x33f80000*/

    ldr r2, =__bss_start /*Bootlaoder代碼結(jié)束位置*/

    sub r2, r2, r1 /*獲得拷貝的大小*/

    bl copy_code_to_sdram / *從nandflash拷貝到SDRAM*/

    ldr pc, =main /*重新給pc賦值,跳轉(zhuǎn)到SDRAM中,開始執(zhí)行第二階段代碼*/

    3.2 第二階段

    Stage2的主要工作設置內(nèi)核啟動參數(shù),拷貝內(nèi)核到內(nèi)存中,然后啟動內(nèi)核,具體流程如如圖5所示。

    圖5 Bootloader二階段流程

    1)設置內(nèi)核啟動參數(shù)。

    Bootloader和內(nèi)核之間參數(shù)傳遞是單向的,Bootloader將參數(shù)放在某個約定地址[3](0x30000100),再啟動內(nèi)核,啟動后會從0x30000100地址處取參數(shù)。

    內(nèi)核啟動前會檢查傳入的參數(shù),比如內(nèi)存的大小,命令等參數(shù)。因為 Linux2.6.22.6內(nèi)核檢查參數(shù)以標記ATAG_CODE開始,以標記ATAG_NONE結(jié)束。詳細結(jié)構(gòu)體可以參考linux內(nèi)核源碼include/asm/setup.h頭文件。

    以設置參數(shù)開始ATAG_CODE標記為例:

    void setup_start_tag(void)

    {

    params = (struct tag *)0x30000100; /*約定的存放參數(shù)的起始地址*/

    params->hdr.tag = ATAG_CODE; /*參數(shù)標記*/

    .......

    params = tag_next (params); /*指向下一個參數(shù)*/

    }

    其他參數(shù)設置 如內(nèi)存標記ATAG_MEM:告訴內(nèi)核開發(fā)平臺外設SDRAM內(nèi)存起始地址和大??;命令行標記ATAG_CMDLINE:用來控制內(nèi)核一些行為,結(jié)束標記ATAG_NONE用來標記參數(shù)結(jié)束[3]。

    最后配置的參數(shù)結(jié)束標記:

    void setup_end_tag(void)

    { params->hdr.tag = ATAG_NONE;

    }

    設置參數(shù)具體代碼:

    puts("Set boot param "); /*打印提示信息*/

    setup_start_tag(); /*設置起始參數(shù)*/

    setup_memory_tags(); /*設置內(nèi)存參數(shù)*/

    setup_commandline_tag("noinitrd root=/dev/mtdblock3 init=/linuxrc console=ttySAC0"); /*設置命令參數(shù)*/

    setup_end_tag(); /*參數(shù)設置結(jié)束*/

    2)把內(nèi)核從flash中拷貝到內(nèi)存的0x30008000地址處。

    編譯內(nèi)核是通過執(zhí)行:make uImage生成內(nèi)核影像uImage;用JTAG把內(nèi)核影像uImage 下載到nandflash的0x60000處,但是uImage開始的64字節(jié)表示內(nèi)核頭幀數(shù)據(jù),真正的內(nèi)核是從0x60000+64地址開始。具體拷貝代碼如下:

    nand_read(0x60000+64, (unsigned char *)0x30008000, 0x200000);

    第一個參數(shù): 0x60000+64代表的是內(nèi)核起始地址

    第二個參數(shù):0x30008000代表是在SDRAM中內(nèi)核的運行起始地址

    第三個參數(shù):0x200000 代表從nandflash拷貝2M(內(nèi)核大小一般小于2M)大小程序到SDRAM中。

    3)啟動內(nèi)核。

    根據(jù)分析u-boot源程序可知;啟動內(nèi)核的過程就是把內(nèi)核在SDRAM的連接地址賦值給一個能啟動內(nèi)核的函數(shù)指針;然后通過調(diào)用此函數(shù)指針把機器類型ID(S3C2440的ID為362)和啟動參數(shù)在SDRAM中的起始基地址(0x30000100)傳遞給內(nèi)核[4]。

    調(diào)用內(nèi)核具體代碼:

    void (*theKernel)(int zero, int arch, unsigned int params);/*聲明啟動內(nèi)核的函數(shù)指針*/

    theKernel = (void (*)(int, int, unsigned int))0x30008000;/*把內(nèi)核在SDRAM中起始地址賦值給函數(shù)指針*/

    puts("Boot kernel ");/*打印提示信息*/

    theKernel(0, 362, 0x30000100); /*啟動內(nèi)核*/

    puts("error ");/*如果內(nèi)核啟動成功,就不會執(zhí)行這一句,否則會打印出error:表示沒有成功啟動內(nèi)核*/

    4 實驗結(jié)果與分析

    為了測試設計的Bootloader是否具備穩(wěn)定和可靠特點,需要在嵌入式S3C2440平臺多次測試是否能啟動內(nèi)核,并分析Bootloader是否具備精簡性。

    4.1 Bootloader精簡性分析

    在編寫B(tài)ootloader的start.S文件中定義一個全局變量來計算Bootloader大小,具體代碼如下:

    .globl _boot_size

    _boot_size:

    .word __bss_start - _start反匯編結(jié)果顯示如下:

    33f80000 <_boot_size>:

    33f80000: 00000730 andeq r0, r0, r0, lsr r7

    則代碼大小為_boot_size地址處值:0x0000730=1.79 KB,所以遠遠小于u-boot.bin的432 KB, 節(jié)省大量的存儲空間,說明設計的Bootloader具有精簡性。

    4.2 Bootloader穩(wěn)定和可靠性分析

    把編譯后的Bootloader下載到nandflash中,經(jīng)過多次按下復位鍵后都能成功啟動linux內(nèi)核。圖6顯示啟動結(jié)果:

    圖6 啟動結(jié)果

    5 結(jié)束語

    通過實驗可知,編寫的Bootloader比u-boot源碼簡潔,代碼量小,并且成功加載linux內(nèi)核,通過借鑒u-boot源代碼的流程,以S3C2440為平臺,設計出了精簡,穩(wěn)定的Bootloader。該設計方法具有一定通用性,對于其他不同平臺,具有很強借鑒性。

    [1]劉 坤,韓朝智. 淺析基于ARM嵌入式開發(fā)的BootLoader設計及其實現(xiàn)[J]. 電子技術(shù)與軟件工程,2016(2):203-204.

    [2] 范展源,六 韜.深度實踐嵌入式Linux系統(tǒng)移植[M]北京:機械工業(yè)出版社,2015.

    [3] 韋東山.嵌入式linux應用開發(fā)[M],北京:人民郵電出版社,2008.

    [4] 戚長城,等.總線式ECU兩級Bootloader的設計與實現(xiàn)[J]. 計算機工程,2015(7):95-99.

    Development and Implement of Bootloader Based on S3C2440 and Embedded Linux System

    Fan Panguo, Xing Baohao , Mi Xiaoliang, Yu Shubao,Wang Ting

    (College of Automation,Northwestern Polytechnical University,Xi’an 710129,China)

    Bootloader is the important part of embedded system. For the different hardware platforms, Bootloader is different. So bootloader is the difficult for the developmemt of embedded system. This paper mainly analyzes the design of embedded S3C2440 system and the process of u-boot startup kernel, drawing two essential phases of u-boot startup kernel, the first phase is to use assembler language to write some functions of the specific hardware platforms ,The second phase is to use C language to write codes about some complicated functions and loading the kernel.For example,Loading the linux-2.6.22.6,according to the two stages work of u-boot startup kernel. Designing of streamlined Bootloader is suitable for the S3C2440 embedded system.Experiment shows that the design of Bootloader successfully starts the linux kernel ,and has a good stability,reliability and simplicity.

    design system; analyze u-boot; realize Bootloader;load kernel

    2016-03-30;

    2016-04-18。

    范蟠果(1960-),男,陜西西安人,碩士生導師,副教授,主要從事計算機測控方向的研究。

    1671-4598(2016)09-0012-03

    10.16526/j.cnki.11-4762/tp.2016.09.004

    TP273

    A

    猜你喜歡
    內(nèi)核內(nèi)存代碼
    萬物皆可IP的時代,我們當夯實的IP內(nèi)核是什么?
    強化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
    “春夏秋冬”的內(nèi)存
    當代陜西(2019年13期)2019-08-20 03:54:22
    基于嵌入式Linux內(nèi)核的自恢復設計
    Linux內(nèi)核mmap保護機制研究
    創(chuàng)世代碼
    動漫星空(2018年11期)2018-10-26 02:24:02
    創(chuàng)世代碼
    動漫星空(2018年2期)2018-10-26 02:11:00
    創(chuàng)世代碼
    動漫星空(2018年9期)2018-10-26 01:16:48
    創(chuàng)世代碼
    動漫星空(2018年5期)2018-10-26 01:15:02
    基于內(nèi)存的地理信息訪問技術(shù)
    国产成人欧美| 中国美女看黄片| 男人舔女人的私密视频| 国产1区2区3区精品| 麻豆国产av国片精品| 老汉色av国产亚洲站长工具| 麻豆久久精品国产亚洲av| 高清在线国产一区| 亚洲精品在线美女| tocl精华| 91字幕亚洲| 久久国产精品男人的天堂亚洲| 国产亚洲精品av在线| 黄色片一级片一级黄色片| 免费女性裸体啪啪无遮挡网站| 啦啦啦免费观看视频1| 激情视频va一区二区三区| 中文字幕高清在线视频| 一卡2卡三卡四卡精品乱码亚洲| 免费看十八禁软件| 久久久水蜜桃国产精品网| 亚洲国产毛片av蜜桃av| 日日干狠狠操夜夜爽| 亚洲国产高清在线一区二区三 | 国产精品,欧美在线| 大型黄色视频在线免费观看| 欧美日韩瑟瑟在线播放| av天堂久久9| 制服诱惑二区| 久久久国产精品麻豆| 国产又色又爽无遮挡免费看| 国产一级毛片七仙女欲春2 | 两个人看的免费小视频| 亚洲人成电影免费在线| 日日干狠狠操夜夜爽| 99国产精品免费福利视频| 国产av在哪里看| 一级黄色大片毛片| 免费一级毛片在线播放高清视频 | 老司机靠b影院| 波多野结衣巨乳人妻| av片东京热男人的天堂| 国产av精品麻豆| 免费av毛片视频| 亚洲全国av大片| 9热在线视频观看99| 国产精品野战在线观看| 久久久国产成人精品二区| 国产精华一区二区三区| 丝袜美腿诱惑在线| 国产精品久久久人人做人人爽| 不卡一级毛片| 又黄又爽又免费观看的视频| 亚洲情色 制服丝袜| 99久久国产精品久久久| 国产精品久久久久久人妻精品电影| 国产黄a三级三级三级人| 男女下面进入的视频免费午夜 | 成人三级做爰电影| 免费看美女性在线毛片视频| 国产av一区二区精品久久| 久久婷婷成人综合色麻豆| 两性午夜刺激爽爽歪歪视频在线观看 | 一区福利在线观看| 日韩中文字幕欧美一区二区| 精品久久久精品久久久| av天堂久久9| 性欧美人与动物交配| 麻豆国产av国片精品| 亚洲av熟女| 亚洲精品粉嫩美女一区| 巨乳人妻的诱惑在线观看| 12—13女人毛片做爰片一| 欧美性长视频在线观看| 久久午夜综合久久蜜桃| 欧美色欧美亚洲另类二区 | 一二三四社区在线视频社区8| 亚洲精品av麻豆狂野| 亚洲第一欧美日韩一区二区三区| 麻豆av在线久日| 亚洲国产精品sss在线观看| 国产亚洲精品av在线| 久久久国产成人精品二区| 波多野结衣一区麻豆| 搡老妇女老女人老熟妇| 午夜免费观看网址| 国产成人系列免费观看| 精品国产亚洲在线| 欧美绝顶高潮抽搐喷水| 日韩欧美国产在线观看| 欧美丝袜亚洲另类 | 日日夜夜操网爽| 欧美另类亚洲清纯唯美| 精品无人区乱码1区二区| 亚洲人成电影观看| 日韩欧美免费精品| 长腿黑丝高跟| 久久精品成人免费网站| 亚洲精品国产精品久久久不卡| 99re在线观看精品视频| 嫩草影视91久久| 麻豆久久精品国产亚洲av| 国产精品一区二区精品视频观看| 久久精品亚洲熟妇少妇任你| 国产99久久九九免费精品| 亚洲欧洲精品一区二区精品久久久| 欧美成人免费av一区二区三区| 国产精品秋霞免费鲁丝片| 欧美成狂野欧美在线观看| cao死你这个sao货| 满18在线观看网站| 亚洲性夜色夜夜综合| 欧美激情极品国产一区二区三区| 欧美黑人欧美精品刺激| 国产欧美日韩一区二区三| av视频免费观看在线观看| 亚洲国产看品久久| 亚洲国产毛片av蜜桃av| 最好的美女福利视频网| 黑人巨大精品欧美一区二区蜜桃| 女同久久另类99精品国产91| 手机成人av网站| 激情在线观看视频在线高清| 天堂影院成人在线观看| 18美女黄网站色大片免费观看| 午夜影院日韩av| 亚洲av成人一区二区三| 精品一区二区三区四区五区乱码| 国产精品日韩av在线免费观看 | 亚洲全国av大片| 精品日产1卡2卡| 日韩三级视频一区二区三区| 色老头精品视频在线观看| 日本一区二区免费在线视频| 精品人妻在线不人妻| 久久久久国产精品人妻aⅴ院| 欧美另类亚洲清纯唯美| 亚洲中文av在线| 亚洲五月色婷婷综合| 最新在线观看一区二区三区| 国产精品一区二区三区四区久久 | 久久精品国产清高在天天线| 精品电影一区二区在线| 成人国产综合亚洲| 一级毛片高清免费大全| 久久伊人香网站| 别揉我奶头~嗯~啊~动态视频| 亚洲aⅴ乱码一区二区在线播放 | 香蕉国产在线看| 亚洲av第一区精品v没综合| 亚洲久久久国产精品| 亚洲第一av免费看| 韩国精品一区二区三区| 在线观看www视频免费| 久久国产精品影院| 亚洲精品一卡2卡三卡4卡5卡| 欧美激情久久久久久爽电影 | 少妇被粗大的猛进出69影院| 亚洲成人精品中文字幕电影| 一进一出抽搐gif免费好疼| 精品不卡国产一区二区三区| 欧美日韩瑟瑟在线播放| 欧美最黄视频在线播放免费| 黄色丝袜av网址大全| 精品久久蜜臀av无| 国内精品久久久久久久电影| 操出白浆在线播放| 国产欧美日韩一区二区精品| 中亚洲国语对白在线视频| 亚洲av日韩精品久久久久久密| 精品人妻在线不人妻| 午夜福利欧美成人| 亚洲自拍偷在线| 久久国产乱子伦精品免费另类| 国产野战对白在线观看| 精品人妻1区二区| 亚洲精品一区av在线观看| 在线观看一区二区三区| 亚洲成人精品中文字幕电影| 国产av在哪里看| 午夜精品国产一区二区电影| 国产午夜福利久久久久久| 91大片在线观看| e午夜精品久久久久久久| 免费不卡黄色视频| 成年人黄色毛片网站| 久久性视频一级片| 久久精品国产清高在天天线| 国产精品久久久久久精品电影 | 99久久99久久久精品蜜桃| 人成视频在线观看免费观看| 国产av一区二区精品久久| 国产午夜福利久久久久久| 精品不卡国产一区二区三区| 精品国产亚洲在线| 动漫黄色视频在线观看| 国产亚洲精品久久久久久毛片| 久久热在线av| 日韩欧美三级三区| 一个人观看的视频www高清免费观看 | 亚洲欧美一区二区三区黑人| 久久婷婷人人爽人人干人人爱 | 欧美日韩福利视频一区二区| 午夜老司机福利片| 99国产精品一区二区蜜桃av| 久久精品人人爽人人爽视色| 99国产综合亚洲精品| а√天堂www在线а√下载| 亚洲性夜色夜夜综合| 久久久国产精品麻豆| 极品教师在线免费播放| 黄频高清免费视频| 午夜亚洲福利在线播放| 日日干狠狠操夜夜爽| 电影成人av| 久久亚洲真实| 1024视频免费在线观看| 色播亚洲综合网| 中国美女看黄片| 美女 人体艺术 gogo| 老司机午夜十八禁免费视频| 色综合欧美亚洲国产小说| 久久久久久久久免费视频了| 中文字幕高清在线视频| 国产在线观看jvid| 日韩精品青青久久久久久| 97人妻精品一区二区三区麻豆 | 亚洲欧洲精品一区二区精品久久久| 亚洲 欧美一区二区三区| 韩国av一区二区三区四区| 国产精品乱码一区二三区的特点 | 视频区欧美日本亚洲| 人成视频在线观看免费观看| 麻豆国产av国片精品| 久久久国产成人精品二区| svipshipincom国产片| 国产成人免费无遮挡视频| 成人永久免费在线观看视频| 在线观看免费视频日本深夜| 91字幕亚洲| 国产主播在线观看一区二区| av有码第一页| 久久亚洲真实| bbb黄色大片| 女人被狂操c到高潮| 成人18禁高潮啪啪吃奶动态图| 在线观看舔阴道视频| 老司机在亚洲福利影院| 伊人久久大香线蕉亚洲五| 久久精品aⅴ一区二区三区四区| 国产精品一区二区三区四区久久 | 不卡av一区二区三区| 精品少妇一区二区三区视频日本电影| 在线观看www视频免费| 欧美日本亚洲视频在线播放| 久久天堂一区二区三区四区| 91成年电影在线观看| 久久精品91无色码中文字幕| 热99re8久久精品国产| 国产不卡一卡二| 在线视频色国产色| 亚洲精品美女久久av网站| 制服丝袜大香蕉在线| 午夜免费激情av| 国产精品秋霞免费鲁丝片| 午夜免费鲁丝| 在线观看www视频免费| 国产成人系列免费观看| 18禁国产床啪视频网站| 国产精品精品国产色婷婷| 亚洲aⅴ乱码一区二区在线播放 | 看免费av毛片| 久久精品亚洲熟妇少妇任你| 99久久久亚洲精品蜜臀av| 国产一区在线观看成人免费| 亚洲第一青青草原| 成人亚洲精品一区在线观看| 黄片大片在线免费观看| 好男人在线观看高清免费视频 | 99久久国产精品久久久| 精品久久久久久成人av| 丁香六月欧美| 国产精品亚洲一级av第二区| 国产野战对白在线观看| 国产黄a三级三级三级人| av超薄肉色丝袜交足视频| 国产国语露脸激情在线看| 成人18禁在线播放| 久久精品国产综合久久久| 亚洲中文字幕日韩| 午夜影院日韩av| 国产黄a三级三级三级人| 麻豆av在线久日| 首页视频小说图片口味搜索| 脱女人内裤的视频| 成人国产综合亚洲| 成人av一区二区三区在线看| 日韩欧美一区二区三区在线观看| 丝袜美腿诱惑在线| 后天国语完整版免费观看| 国产成人欧美在线观看| 精品国内亚洲2022精品成人| 在线观看66精品国产| 久久人人精品亚洲av| 久久久久久国产a免费观看| 欧美成人性av电影在线观看| 日韩有码中文字幕| 欧美国产日韩亚洲一区| 精品久久久精品久久久| 少妇粗大呻吟视频| 国产高清激情床上av| 久久中文字幕人妻熟女| 制服诱惑二区| 久久伊人香网站| 国产免费男女视频| 12—13女人毛片做爰片一| 亚洲激情在线av| 久久人妻熟女aⅴ| 国产极品粉嫩免费观看在线| 亚洲精品国产色婷婷电影| 国产精品乱码一区二三区的特点 | 最近最新免费中文字幕在线| 成年女人毛片免费观看观看9| 久久青草综合色| 一级黄色大片毛片| 午夜福利18| 黄色毛片三级朝国网站| 久久久久久久久中文| 国产午夜福利久久久久久| 一区福利在线观看| 国产精品自产拍在线观看55亚洲| 波多野结衣一区麻豆| 黑人欧美特级aaaaaa片| 99国产精品一区二区三区| 国产精品影院久久| 亚洲久久久国产精品| 中国美女看黄片| 久久久久久久久免费视频了| 欧美精品亚洲一区二区| 男人舔女人下体高潮全视频| 一夜夜www| 十分钟在线观看高清视频www| 午夜日韩欧美国产| 黄色 视频免费看| 欧美黄色片欧美黄色片| 一级,二级,三级黄色视频| 国产亚洲欧美精品永久| 中文字幕精品免费在线观看视频| 亚洲一区二区三区色噜噜| 欧美成人午夜精品| 免费少妇av软件| 啦啦啦 在线观看视频| 国产成人精品久久二区二区91| 亚洲av熟女| 别揉我奶头~嗯~啊~动态视频| 欧美人与性动交α欧美精品济南到| 午夜福利成人在线免费观看| 成人永久免费在线观看视频| www.自偷自拍.com| 国产欧美日韩一区二区三| 99国产精品一区二区蜜桃av| 欧美色欧美亚洲另类二区 | 亚洲精品久久成人aⅴ小说| 日日干狠狠操夜夜爽| 亚洲第一欧美日韩一区二区三区| netflix在线观看网站| 亚洲全国av大片| 久久香蕉国产精品| 青草久久国产| 久久午夜综合久久蜜桃| 国产乱人伦免费视频| 欧美在线黄色| 欧美激情高清一区二区三区| 免费在线观看亚洲国产| 看黄色毛片网站| 女人高潮潮喷娇喘18禁视频| 叶爱在线成人免费视频播放| 一级作爱视频免费观看| 久久 成人 亚洲| 999久久久国产精品视频| 美女高潮喷水抽搐中文字幕| 中文字幕人妻熟女乱码| www日本在线高清视频| 色综合亚洲欧美另类图片| 两个人视频免费观看高清| 国产亚洲欧美98| 在线观看舔阴道视频| 免费看a级黄色片| 免费看美女性在线毛片视频| 首页视频小说图片口味搜索| 欧美绝顶高潮抽搐喷水| 97人妻精品一区二区三区麻豆 | 欧美成人午夜精品| 国产av一区二区精品久久| 18禁裸乳无遮挡免费网站照片 | 色综合站精品国产| 国产麻豆成人av免费视频| 丝袜美足系列| 亚洲精品一区av在线观看| 日韩欧美免费精品| 首页视频小说图片口味搜索| 757午夜福利合集在线观看| 日韩成人在线观看一区二区三区| 中文字幕另类日韩欧美亚洲嫩草| 久久久久国产一级毛片高清牌| 香蕉久久夜色| 国产精品久久久av美女十八| 免费看美女性在线毛片视频| 中文字幕色久视频| 精品卡一卡二卡四卡免费| 女人被躁到高潮嗷嗷叫费观| 成人国产一区最新在线观看| 亚洲精品在线美女| 成人国产综合亚洲| 岛国在线观看网站| 精品高清国产在线一区| 成人手机av| 亚洲欧美精品综合久久99| 韩国av一区二区三区四区| 亚洲国产精品999在线| 亚洲黑人精品在线| 成人18禁高潮啪啪吃奶动态图| 在线观看www视频免费| 亚洲精品国产精品久久久不卡| x7x7x7水蜜桃| 免费在线观看视频国产中文字幕亚洲| 欧美日本亚洲视频在线播放| 性色av乱码一区二区三区2| 校园春色视频在线观看| 亚洲三区欧美一区| 国产一区二区三区综合在线观看| 美女 人体艺术 gogo| 亚洲av成人一区二区三| 久久国产精品男人的天堂亚洲| 国产精品久久久久久人妻精品电影| 级片在线观看| 一进一出抽搐gif免费好疼| 俄罗斯特黄特色一大片| 免费久久久久久久精品成人欧美视频| 国产视频一区二区在线看| 国产黄a三级三级三级人| 日本vs欧美在线观看视频| 人人妻人人澡欧美一区二区 | 在线视频色国产色| 99热只有精品国产| а√天堂www在线а√下载| 人人妻人人澡人人看| 成人18禁在线播放| 国产成+人综合+亚洲专区| 麻豆久久精品国产亚洲av| av视频免费观看在线观看| 叶爱在线成人免费视频播放| 国产熟女午夜一区二区三区| 日本在线视频免费播放| 美国免费a级毛片| 日本五十路高清| 久久天躁狠狠躁夜夜2o2o| 波多野结衣巨乳人妻| 日韩精品免费视频一区二区三区| 日韩大码丰满熟妇| 日日摸夜夜添夜夜添小说| 乱人伦中国视频| 啪啪无遮挡十八禁网站| 日日夜夜操网爽| 搡老岳熟女国产| 国产亚洲av嫩草精品影院| 国产亚洲精品av在线| 国产欧美日韩一区二区三| 国产麻豆成人av免费视频| 搞女人的毛片| 99精品欧美一区二区三区四区| 无人区码免费观看不卡| av免费在线观看网站| 女性生殖器流出的白浆| 老司机福利观看| 午夜视频精品福利| cao死你这个sao货| 欧美最黄视频在线播放免费| 久久国产精品男人的天堂亚洲| 欧美日韩福利视频一区二区| 日韩国内少妇激情av| 久久精品影院6| 成熟少妇高潮喷水视频| ponron亚洲| 夜夜爽天天搞| netflix在线观看网站| 国产精品久久久人人做人人爽| 亚洲人成伊人成综合网2020| 久热爱精品视频在线9| 天天添夜夜摸| xxx96com| 美女午夜性视频免费| 日韩有码中文字幕| 妹子高潮喷水视频| 性色av乱码一区二区三区2| 9色porny在线观看| 在线视频色国产色| 麻豆国产av国片精品| 手机成人av网站| av有码第一页| 欧美大码av| 一级a爱片免费观看的视频| 中文字幕人妻熟女乱码| av免费在线观看网站| 久久中文字幕一级| 精品久久久久久久久久免费视频| 在线观看一区二区三区| 黄色片一级片一级黄色片| 国产亚洲av高清不卡| 欧美激情高清一区二区三区| 丁香六月欧美| 亚洲,欧美精品.| 中出人妻视频一区二区| 国产成人欧美| 麻豆av在线久日| 两性午夜刺激爽爽歪歪视频在线观看 | 免费在线观看完整版高清| 久久久久国产一级毛片高清牌| 纯流量卡能插随身wifi吗| 黄片大片在线免费观看| 欧美激情久久久久久爽电影 | 怎么达到女性高潮| av视频免费观看在线观看| 在线av久久热| 天天躁夜夜躁狠狠躁躁| 禁无遮挡网站| 国产乱人伦免费视频| 国产伦人伦偷精品视频| 色播在线永久视频| 岛国视频午夜一区免费看| 欧美日韩亚洲国产一区二区在线观看| 乱人伦中国视频| 两性夫妻黄色片| av免费在线观看网站| 久久人妻熟女aⅴ| 一级毛片高清免费大全| 两个人免费观看高清视频| 欧美黄色淫秽网站| 伊人久久大香线蕉亚洲五| 又大又爽又粗| 又黄又爽又免费观看的视频| 色综合站精品国产| 亚洲欧美日韩高清在线视频| 精品国产美女av久久久久小说| 久久久久国产一级毛片高清牌| 亚洲专区中文字幕在线| 久久午夜亚洲精品久久| 侵犯人妻中文字幕一二三四区| 黄频高清免费视频| 精品国产国语对白av| 黄色视频不卡| 50天的宝宝边吃奶边哭怎么回事| 免费av毛片视频| 国产精品久久电影中文字幕| 欧美av亚洲av综合av国产av| 在线观看日韩欧美| 亚洲中文字幕一区二区三区有码在线看 | 一区二区三区高清视频在线| 久久天躁狠狠躁夜夜2o2o| 757午夜福利合集在线观看| 免费女性裸体啪啪无遮挡网站| 丁香六月欧美| 在线天堂中文资源库| 9色porny在线观看| 午夜免费观看网址| 国产精品 欧美亚洲| 中文字幕人成人乱码亚洲影| 97超级碰碰碰精品色视频在线观看| 悠悠久久av| 亚洲色图 男人天堂 中文字幕| 亚洲熟女毛片儿| 日韩大码丰满熟妇| 国产亚洲av高清不卡| 在线观看午夜福利视频| 在线观看66精品国产| 中亚洲国语对白在线视频| 中文字幕精品免费在线观看视频| 国产av精品麻豆| 香蕉久久夜色| 国产av精品麻豆| 国产熟女xx| 香蕉丝袜av| 欧美性长视频在线观看| 亚洲av电影在线进入| 亚洲国产欧美网| 黑丝袜美女国产一区| 亚洲av成人一区二区三| 国产成人精品在线电影| 男男h啪啪无遮挡| 一个人免费在线观看的高清视频| 看片在线看免费视频| 亚洲av成人av| 欧美最黄视频在线播放免费| 黄色视频不卡| 免费一级毛片在线播放高清视频 | 国产精品永久免费网站| 久久狼人影院| 国产精品永久免费网站| 久久精品国产清高在天天线| 最近最新中文字幕大全电影3 | 亚洲三区欧美一区| 男人的好看免费观看在线视频 | 嫁个100分男人电影在线观看| 亚洲电影在线观看av| 禁无遮挡网站| 老司机靠b影院| 国产欧美日韩综合在线一区二区| 久久人人97超碰香蕉20202| 日本vs欧美在线观看视频| 波多野结衣av一区二区av| 精品欧美一区二区三区在线| 日韩 欧美 亚洲 中文字幕| 熟女少妇亚洲综合色aaa.| 亚洲片人在线观看| 欧美大码av|