黄a在线观看-黄a在线-黄a大片-黄色片在线看-黄色毛片免费-黄色大片网站

您的位置:首頁技術文章
文章詳情頁

跟蹤 UNIX 應用程序的解決方案

瀏覽:216日期:2024-06-08 09:48:15

本文示例源代碼或素材下載

開始之前

本教程幫助 Unix 系統開發人員和管理員以最佳方式跟蹤系統上運行的應用程序。要想從本教程獲得最大收獲,您應該了解 UNIX 操作系統的基本知識及其操作方式。具備基本的編程經驗會有幫助,但不是必需的。

關于本教程

大多數開發人員和系統管理員知道在他們的操作系統和應用程序中應該會發生什么情況,但糟糕的是,有時候不是這樣的。當應用程序崩潰或表現異常時,需要查明更多信息。通過利用對應用程序正常工作方式的了解和一些基本 UNIX 技能,可以跟蹤應用程序,查明造成問題的原因。本教程講解使用跟蹤工具了解應用程序內部情況的基本技術。

本教程首先討論調試和跟蹤的差異,以及這兩種解決方案的工作方式差異。然后,通過一些具體示例講解如何使用跟蹤解決應用程序中的問題。DTrace 提供跟蹤和調試兩種系統的組件,還支持對應用程序進行計時和基準測試。最后,本教程講解如何跟蹤在網絡計算機之間交換的信息,幫助發現網絡應用程序中的問題。

跟蹤概述

有時候,需要了解在應用程序內部正在發生的情況。例如,應用程序可能會運行失敗,而又沒有顯示有幫助的錯誤消息,或者系統服務沒有按照預期的方式運行。在這些情況下,您可能不掌握應用程序源代碼,因此無法通過傳統的調試過程尋找問題的原因。跟蹤提供了一種替代方法。

調試

對于開發人員來說,尋找 UNIX 應用程序問題的主要方法是,使用開發環境或操作系統的調試特性檢查源代碼,查明造成問題的原因。

大多數調試系統支持逐行監視和檢查代碼行的執行過程,還支持監視變量和結構的值。可以使用調試器在代碼中設置斷點,執行過程會停在斷點上;在斷點上,可以獲得關于調用堆棧(函數的調用路徑)的信息以及變量值。

我們來看一個例子,假設一個應用程序根據人的生日計算他的年齡,還要考慮到閏年等因素。要想調試這個應用程序,需要有源代碼,還需要在啟用調試選項的情況下編譯應用程序:$ gcc -g ageindays.c -o ageindays。

運行這個應用程序,提供用戶的生日和用來比較的目標日期(見清單 1)。

清單 1. 執行比較

$ ./ageindays 24/1/1980 22/2/2009 You have been alive 10622 days You were born on 24/1/1980 which is a Thursday 

在調試應用程序時,首先懷疑問題出在 calc_diff 函數中,這個函數計算第一個和第二個日期的差。接下來,可能按照清單 2 這樣進行調試。

清單 2. 調試 calc_diff 函數

$ gdb ageindays GNU gdb 6.3.50-20050815 (Apple version gdb-962) (Sat Jul 26 08:14:40 UTC 2008) Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copIEs of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-apple-darwin"...Reading symbols for shared libraries ... done  (gdb) b calc_diff Breakpoint 1 at 0x1bd7: file ageindays.c, line 27. (gdb) r 24/1/1980 26/3/2009 Starting program: /nfs/MC/UnixSrc/c/bio/ageindays 24/1/1980 26/3/2009 Reading symbols for shared libraries ++. done  Breakpoint 1, calc_diff (day=26, month=3, year=2009) at ageindays.c:27 27unsigned long days_diff=0; (gdb) bt #0 calc_diff (day=26, month=3, year=2009) at ageindays.c:27 #1 0x00001e3d in main (argc=3, argv=0xbffff708) at ageindays.c:89 (gdb) p days_diff $1 = 8041 (gdb) 

通過 清單 2 中的輸出可以看出,我們打開了調試器,通過指定名稱在 calc_diff() 函數中設置了一個斷點,然后在調試器中運行程序,提供與命令行相同的參數。

當調試器到達創建的斷點時,執行過程停止,您可以檢查應用程序代碼和調用的函數。通過使用調試器,可以查看提供給函數的參數及其值(在這里是為目標日期提供的日期信息)。執行停止之后,可以查看堆棧跟蹤,查看代碼中調用 calc_diff 函數的行,可以獲得 days_diff 變量的值。因為應用程序的執行過程已經暫停了,所以還可以修改變量的值。這樣就可以在應用程序中嘗試使用不同的值,從而尋找潛在的問題。

可以使用這些信息,因為定義了特定的調試信息(組成函數和變量名的符號)和其他元數據(比如定義函數的代碼行)。

必須在編譯時把特定的調試信息添加到二進制應用程序中;更重要的是,必須訪問源代碼,才能把調試信息包含在編譯的應用程序中。如果無法識別函數名和變量,那么幾乎不可能調試程序。

跟蹤與調試的對比

系統管理員(和開發人員)常常希望發現正在運行的程序中的錯誤。例如,某個程序為什么造成了其他問題(比如內存和其他錯誤),應用程序的表現為什么不符合預期,它過去發生了什么情況。在這種情況下,調試應用程序的特定方面往往沒什么用。需要查明的實際上是操作系統如何執行應用程序。

在進行調試時,檢查的是應用程序中定義的各個函數的執行過程。調試主要關注應用程序本身,包括其中的函數和結構,通常會忽視應用程序向操作系統發出的系統調用和庫函數調用。調試能夠提供關于應用程序的大量信息,但是對于了解操作系統如何執行應用程序幫助不大。

在進行跟蹤時,監視應用程序和操作系統之間的交互,常常會檢查應用程序在執行期間調用的操作系統函數。

除了這些差異之外,跟蹤和調試之間的主要差異是,跟蹤不要求訪問源代碼,也不要求以任何特殊方式編譯應用程序。這意味著可以跟蹤操作系統附帶的或第三方廠商提供的應用程序。

通過跟蹤應用程序,可以查明以下方面的情況:

內存使用量和映射內存的調用

在執行期間打開和關閉的文件

對不同文件的讀和寫操作

為給定的應用程序裝載的庫

下面先研究一下 truss 的輸出,truss 是一種可以在 Solaris 和 AIX® 上使用的工具。

使用 truss 和 strace

在 Solaris 和 AIX 上可以使用 truss 工具,它能夠跟蹤應用程序中的系統調用和信號。可以在 Linux® 上使用的 strace 工具提供相似的功能。在不同的系統上,還有提供相似信息的其他工具,包括 ktrace (FreeBSD) 和 trace。

truss/strace 概述

truss 和 strace 工具提供相似的信息,但是命令行選項稍有差異。使用這兩種工具的標準方法都是把工具名放在要執行的命令前面。

例如,清單 3 給出 truss 對于本教程前面提到的 ageindays 程序的輸出。

清單 3. truss 的輸出

$ truss ./ageindays 24/1/1980 26/3/2009 execve("ageindays", 0x08047BBC, 0x08047BCC) argc = 3 mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, -1, 0) = 0xFEFB0000 resolvepath("/usr/lib/ld.so.1", "/lib/ld.so.1", 1023) = 12 getcwd("/root", 1013)= 0 resolvepath("/root/ageindays", "/root/ageindays", 1023) = 15 xstat(2, "/root/ageindays", 0x08047880) = 0 open("/var/ld/ld.config", O_RDONLY) = 3 fxstat(2, 3, 0x08047760)= 0 mmap(0x00000000, 144, PROT_READ, MAP_SHARED, 3, 0) = 0xFEFA0000 close(3)= 0 sysconfig(_CONFIG_PAGESIZE) = 4096 xstat(2, "/usr/lib/libc.so.1", 0x08046FA0) = 0 resolvepath("/usr/lib/libc.so.1", "/lib/libc.so.1", 1023) = 14 open("/usr/lib/libc.so.1", O_RDONLY)= 3 mmap(0x00010000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_ALIGN, 3, 0) = 0xFEF90000 mmap(0x00010000, 1413120, PROT_NONE, MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFEE30000 mmap(0xFEE30000, 1302809, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_TEXT, 3, 0) = 0xFEE30000 mmap(0xFEF7F000, 30862, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED| MAP_INITDATA, 3, 1306624) = 0xFEF7F000 mmap(0xFEF87000, 4776, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANON, -1, 0) = 0xFEF87000 munmap(0xFEF6F000, 65536)= 0 memcntl(0xFEE30000, 187632, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0 close(3)= 0 mmap(0x00010000, 24576, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFEE20000 munmap(0xFEF90000, 32768)= 0 getcontext(0x080475D0) getrlimit(RLIMIT_STACK, 0x080475C8) = 0 getpid()= 15691 [15690] lwp_private(0, 1, 0xFEE22A00)= 0x000001C3 setustack(0xFEE22A60) sysi86(SI86FPSTART, 0xFEF879BC, 0x0000133F, 0x00001F80) = 0x00000001 ioctl(1, TCGETA, 0x08046C20)= 0 fstat64(1, 0x08046B80) = 0 You have been alive 10654 days write(1, " Y o uh a v eb e e".., 31) = 31 You were born on 24/1/1980 which is a Thursday write(1, " Y o uw e r eb o r".., 47) = 47 _exit(134511508) 

在這兩個輸出中,每個輸出行對應于應用程序執行的一個函數調用,其中顯示函數的參數和函數調用的返回值。與調試示例不同,列出的每個函數調用都是系統或系統庫中的函數,因此表示調用的函數的更低層接口。例如,在應用程序中可能使用 C 或 C++ 中的 fpopen() 函數打開文件,但是這個函數實際上是更低層的 open() 函數的包裝器。

了解應用程序正在執行的操作并不需要了解每個函數的情況。輸出中的許多行與操作系統為裝載和執行程序所做的初始化相關。這兩個跟蹤輸出的基本結構是相同的:

調用 execve() 函數以啟動一個新程序。

裝載程序所需的庫。在 Solaris 輸出中,首先使用 resolvepath() 尋找庫,然后使用 open() 打開庫。對于 Linux,使用 stat() 檢查庫是否存在,然后使用 open() 打開它。

為進程保留和分配一些內存。其中一部分內存是為應用程序保留的堆棧空間,一部分用來保存程序,其他內存保存程序使用的變量。

最后,執行程序,調用 write() 函數輸出年齡和生日信息。

如果執行跟蹤并希望了解每個步驟的具體情況,可以使用 man 命令訪問每個函數的手冊頁。

識別應用程序啟動問題

在啟動應用程序時的一個典型問題是,程序無法正確地初始化,但是在終止時給出一個不完整或導致誤解的消息。對應用程序運行跟蹤常常可以揭示這個問題的根源。例如,清單 5 顯示一個測試應用程序運行失敗了。

清單 5. 應用程序失敗

$ ./errnoacc ERROR: Application failed to initialize 

錯誤消息并沒有提供關于應用程序為什么會啟動失敗的具體信息。在這里,問題是故意引入的,但是您使用的任何命令或應用程序都可能出現相同的問題,而錯誤消息沒什么幫助,有時候甚至沒有錯誤消息。

對應用程序運行跟蹤可能會提供一些線索(見清單 6)。

清單 6. 運行跟蹤

$ truss ./errnoacc execve("errnoacc", 0x08047B20, 0x08047B28) argc = 1 mmap(0x00000000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, -1, 0) = 0xFEFB0000 resolvepath("/usr/lib/ld.so.1", "/lib/ld.so.1", 1023) = 12 getcwd("/export/home/mc", 1014) = 0 resolvepath("/export/home/mc/errnoacc", "/export/home/mc/errnoacc", 1023) = 24 xstat(2, "/export/home/mc/errnoacc", 0x080477E4) = 0 open("/var/ld/ld.config", O_RDONLY) = 3 fxstat(2, 3, 0x080476C4)= 0 mmap(0x00000000, 144, PROT_READ, MAP_SHARED, 3, 0) = 0xFEFA0000 close(3)= 0 sysconfig(_CONFIG_PAGESIZE) = 4096 xstat(2, "/usr/lib/libc.so.1", 0x08046F04) = 0 resolvepath("/usr/lib/libc.so.1", "/lib/libc.so.1", 1023) = 14 open("/usr/lib/libc.so.1", O_RDONLY)= 3 mmap(0x00010000, 32768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_ALIGN, 3, 0) = 0xFEF90000 mmap(0x00010000, 1413120, PROT_NONE, MAP_PRIVATE|MAP_NORESERVE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFEE30000 mmap(0xFEE30000, 1302809, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_TEXT, 3, 0) = 0xFEE30000 mmap(0xFEF7F000, 30862, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED| MAP_INITDATA, 3, 1306624) = 0xFEF7F000 mmap(0xFEF87000, 4776, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANON, -1, 0) = 0xFEF87000 munmap(0xFEF6F000, 65536)= 0 memcntl(0xFEE30000, 187632, MC_ADVISE, MADV_WILLNEED, 0, 0) = 0 close(3)= 0 mmap(0x00010000, 24576, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON|MAP_ALIGN, -1, 0) = 0xFEE20000 munmap(0xFEF90000, 32768)= 0 getcontext(0x08047534) getrlimit(RLIMIT_STACK, 0x0804752C) = 0 getpid()= 15727 [15726] lwp_private(0, 1, 0xFEE22A00)= 0x000001C3 setustack(0xFEE22A60) sysi86(SI86FPSTART, 0xFEF879BC, 0x0000133F, 0x00001F80) = 0x00000001 open("/etc/shadow", O_RDONLY)Err#13 EACCES [file_dac_read] ioctl(1, TCGETA, 0x08046BB0)= 0 fstat64(1, 0x08046B10) = 0 ERROR: Application failed to initialize write(1, " E R R O R :A p p l i".., 40) = 40 _exit(0) 

問題出現在這一行上:open("/etc/shadow", O_RDONLY) Err#13 EACCES [file_dac_read]。

在這里,應用程序試圖打開一個文件,但是因為有文件權限保護這個文件,運行應用程序的用戶沒有訪問權。因為無法打開這個文件,應用程序終止并在進程中寫錯誤消息。

跟蹤正在運行的應用程序

希望跟蹤應用程序常常是因為應用程序已經啟動,而您希望查明應用程序為什么不工作了。與初始化示例一樣,應用程序提供的錯誤消息或其他信息常常沒有準確地指出問題。

試圖鎖定或訪問另一個進程正在使用的資源會使應用程序看起來凍結了,沒有響應。

strace 和 truss 都能夠 “連接 到正在運行的進程。連接到進程的跟蹤與從命令行運行進程的跟蹤相似,也產生程序正在執行的系統函數的列表。實際的跟蹤從跟蹤啟動時執行的函數開始;對于在執行期間 “掛起 的程序,跟蹤應該會顯示程序正在等待的函數。

要想跟蹤正在運行的程序,需要指定要跟蹤的進程的進程 ID (PID)。例如,在清單 6 中,跟蹤的程序已經停止,但是沒有報告錯誤。這里使用 ps 工具列出正在運行的進程(見清單 7)。

清單 7. 使用 ps 工具列出正在運行的進程

$ ps -ef|grep errlock  mc 15779 157470 18:26:59 pts/20:00 ./errlock  mc 157426800 18:26:36 pts/30:00 ./errlock  mc 15817 157840 18:28:44 pts/40:00 grep errlock  mc 157346800 18:25:00 pts/30:01 /usr/bin/eMacs-nox errlock.c $ truss -p 15779 fcntl(3, F_SETLKW, 0x08047AC4) (sleeping...) 

在輸出中可以看到,已經調用了 fcntl() 函數,它要在一個文件上設置鎖。在這里,這個函數會一直等待到成功地設置鎖,然后才繼續運行。不幸的是,另一個進程已經鎖住了這個文件,所以第二個應用程序必須等待第一個應用程序使用完文件并釋放鎖。

對于這種情況,truss 有點兒局限性:它無法指出要鎖住哪個文件,也無法指出當前鎖住了哪個文件,從而阻礙了第二個程序的執行。這是因為跟蹤過程是在已經調用了打開文件的函數之后啟動的。truss 和 strace 只跟蹤在它們執行期間調用的函數;它們無法查明已經調用的函數。

獲取堆棧跟蹤

可以看出,truss 對于監視整個程序很有用,但是對于監視已經啟動的程序可能有點兒局限性。如果使用基于 SVR4 的 Unix,比如 Solaris 或 AIX,那么 pstack 命令可能有幫助。

pstack 命令實際上屬于一組進程檢查命令,這些命令輸出正在運行的進程的相關信息。其他工具包括 pfiles(輸出進程使用的文件的列表)和 psig(顯示信號和信號處理函數的列表)。

在使用這些命令時,需要指定進程的 PID。pstack 命令輸出一個正在運行的進程的調用堆棧,顯示在進程到達當前函數之前調用的函數。例如,對正在等待被鎖住的文件的進程使用 pstack,會產生清單 8 中的輸出。

清單 8. 對正在等待被鎖住的文件的進程使用 pstack

$ pstack 15828 15828: ./errlock  feef0877 fcntl(3, 7, 8047ac4)  feedcd49 fcntl(3, 7, 8047ac4, 8050e74) + 91  08050f10 main (1, 8047b24, 8047b2c) + d8  08050cdc _start(1, 8047c08, 0, 8047c12, 8047c7d, 8047c8e) + 80 

在這里,它沒有提供我們需要的信息。現在試試 pfiles(見清單 9)。

清單 9. 使用 pfiles

$ pfiles 15856 15856: ./errlock  Current rlimit: 256 file descriptors 0: S_IFCHR mode:0620 dev:292,0 ino:989038936 uid:101 gid:7 rdev:24,3  O_RDWR|O_NOCTTY|O_LARGEFILE  /dev/pts/3 1: S_IFCHR mode:0620 dev:292,0 ino:989038936 uid:101 gid:7 rdev:24,3  O_RDWR|O_NOCTTY|O_LARGEFILE  /dev/pts/3 2: S_IFCHR mode:0620 dev:292,0 ino:989038936 uid:101 gid:7 rdev:24,3  O_RDWR|O_NOCTTY|O_LARGEFILE  /dev/pts/3 3: S_IFREG mode:0666 dev:182,65545 ino:198 uid:101 gid:10 size:0  O_RDWR  advisory write lock set by process 15828  /export/home/mc/lockdemo 

這些輸出就比較有用了。可以看到進程已經打開的文件稱為 lockdemo ,因為 truss 顯示正在等待文件鎖,所以可能是這個文件導致了問題。

truss 和 strace 都是被動的跟蹤。可以查看正在執行的函數,但是無法了解關于正在發生的情況的詳細信息,也無法更有針對性地指定要跟蹤的東西和跟蹤時要輸出的信息。

用 DTrace 進行動態跟蹤

Solaris、FreeBSD 和 Mac OS X 內置的 Dynamic Tracing (DTrace) 功能提供一個更加動態的跟蹤環境。與 truss 和相似的工具不同,可以使用 DTrace 檢查正在運行的程序的內部情況,而不只是查看系統調用。另外,可以使用 DTrace 編寫應用程序跟蹤腳本,從而定制在跟蹤過程中希望提取的信息。

標簽: Unix系統
主站蜘蛛池模板: 综合激情网站 | 国产又粗又黄又爽又硬的免费视频 | 97se.com| 香蕉国产 | 玩成熟老熟女视频 | 国产特级淫片免费看 | 在线免费观看国产视频 | 欧美激情亚洲综合 | 丰满少妇高潮惨叫正在播放 | 亚洲另类无码专区首页 | 欧美成人精品高清视频在线观看 | 久久麻豆精品 | 日韩一区二区三区在线视频 | 国产国产成人免费c片 | 日本少妇做爰奶水狂喷小说 | 久久久国产一区二区三区 | 免费特级黄色片 | 在线欧美精品一区二区三区 | 一本大道久久a久久综合婷婷 | 亚洲图片欧美在线看 | 乖女从小调教h尿便器小说 关秀媚三级 | av高清免费观看 | 欧美狠狠 | 国产欧美三区 | 男生女生羞羞网站 | 182tv在线观看免费午夜免费线路 | 蜜桃视频一区二区三区四区开放时间 | 国产精品va在线播放我和闺蜜 | 欧美性大交 | 亚洲人性生活视频 | 4455成人免费观看 | 无人在线观看免费高清视频的优势 | 日日鲁鲁鲁夜夜爽爽狠狠视频97 | 日韩一区二区视频 | 伊人久久综合 | 成人美女视频在线观看 | 做a爰小视频 | 国产成人愉拍精品久久 | 成人美女黄网站色大免费的 | 久久精品女人天堂av免费观看 | 色呦呦视频在线观看 | 国产乱来乱子视频 | 国产亚洲精品久久久久久牛牛 | 91色漫| 成人天堂视频理伦片 | 欧美高清在线一区 | 麻豆文化传媒精品一区观看 | 国产后进极品圆润翘臀在后面玩 | 欧美乱人伦人妻中文字幕 | a免费毛片 | 精品国产一区二区三区久久狼黑人 | 亚洲最新在线观看 | 四虎影院色 | av在线播放国产 | 日韩免费片 | 乱色欧美| wwwtianlulacom| 一区二区三区中文字幕 | 色就色欧美| 亚洲天堂av一区二区 | xxxxⅹxxxhd日本8hd | 婷婷丁香五月中文字幕 | 亚洲精品在线视频观看 | 国产精品99一区二区三区 | 日本高清一区二区三 | 欧美一级在线播放 | 欧美阿姨 | 国产精品亚洲五月天高清 | 天堂av2014| 超碰97人人射妻 | 柠檬福利视频导航 | 日本黄色片段 | 国产精品最新乱视频二区 | 羞羞涩涩视频 | 五月天激情啪啪 | 狂野欧美激情性xxxx | 国产午夜成人av在线播放 | 翘臀后进娇喘呻吟的少妇91 | 国产成人精品亚洲线观看 | 久久国产精品偷任你爽任你 | 欧美性猛交xxxx乱大交丰满 | 一本色道久久综合亚洲精品不 | 欧美综合自拍亚洲综合图片区 | 亚洲综合性网 | 国产精品18hdxxxⅹ在线 | 亚洲大尺度专区 | 2018天天操 | 欧美激情91 | 国产在线精品一区在线观看 | 香蕉97视频观看在线观看 | 欧美午夜理伦三级在线观看吃奶汁 | japanese一本色道久久 | 91国内精品自线在拍白富美 | 久久狼人亚洲精品一区 | 操操操操操操 | 热re99久久精品国产99热 | 自拍偷在线精品自拍偷99九色 | 日韩a√| 中文字幕日本免费毛片全过程 | 久久激情综合 | 慈禧一级淫片91 | 丝袜五月天 | 天天爽夜夜爽夜夜爽精品视频 | 18av在线播放 | 色噜噜在线观看 | a级在线播放 | 97精品国产97久久久久久免费 | 台湾佬自拍偷区亚洲综合 | 免费线上av | 强奷乱码中文字幕熟女一 | 日本一级少妇免费视频乌克兰裸体 | 色偷偷偷在线视频播放 | 全球av集中精品导航福利 | 欧美一区二区三区免费看 | 少妇交换浪荡h肉辣文视频 少妇交换做爰中文字幕 | 国产精品伦一区二区在线 | 日日鲁鲁夜夜狼狼视频 | 久久99亚洲精品久久久久 | www奇米影视com | 欧美成人一区二区三区 | 性网爆门事件集合av | 色婷婷av在线 | 老熟妇午夜毛片一区二区三区 | 2019nv天堂香蕉在线观看 | 各种少妇正面着bbw撒尿视频 | 日韩精品一区二区三区四区视频 | 日日做夜夜爽毛片麻豆 | 69热在线 | 我要看一级黄色毛片 | av不卡观看 | 欧美激情精品成人 | 亚洲看片网站 | 国产精品老女人 | 亚洲国产日韩精品二三四区竹菊 | 国产尤物视频 | 久久久无码中文字幕久... | 久久免费公开视频 | 米奇影视第四色 | 亚洲国产tv | 成人小视频免费在线观看 | 尤物国产在线 | 国产一区91精品张津瑜 | www.国产99| 国产在线国偷精品产拍免费观看 | 亚洲国产中文字幕在线视频综合 | 九色porny丨首页在线 | 久久久综合九色合综 | 亚洲成av人的天堂在线观看 | 一级做a爱片性色毛片www | 日韩免费看片 | 好男人www社区在线视频夜恋 | 国产精品免费久久久久影院仙踪林 | 99久久免费看精品国产一区 | 成年午夜性影院 | 亚洲综合一 | 精品国产乱码久久久久久108 | 在线观看色视频 | 91尤物视频在线观看 | 日本私人影院 | 天天射夜夜操 | 国产亚洲精品久久久优势 | 亚洲va欧美va人人爽春色影视 | 欧美老妇与禽交 | 大肉大捧一进一出好爽视频动漫 | 国产成人精品久久 | 妖精视频一区二区 | jizz欧美性3| 九色 porny 国产| 国产精品v亚洲精品v日韩精品 | 高潮av在线| 国产人成在线 | 欧美大片18 | 亚洲精品欧美日韩 | 国产一区亚洲二区三区 | 爆乳女仆高潮在线观看 | 日韩精品91偷拍在线观看 | 偷拍富婆做爰太猛视频 | 精品一区久久 | 少妇午夜啪爽嗷嗷叫视频 | 黄色毛片视频 | 欧美精品一二区 | 夜影影视剧大全在线观看 | 神马影院午夜伦理 | 性精品| 免费视频一二三区 | 久久精品九九精av | 亚洲激情在线视频 | 性欧美ⅴideo另类hd | 国产麻豆乱码精品一区二区三区 | 东方成人av | 国产在线观看你懂得 | 内地级a艳片高清免费播放 内谢老女人视频在线观看 嫩草99 | 亚洲一本在线观看 | 四虎成人精品 | 欧美日韩中出 | 一区视频 | 大陆性猛交xxxx乱大交 | 五月天婷婷视频 | baoyu123成人免费看视频 | 999久久久国产999久久久 | 国产艳妇av在线观看果冻传媒 | 亚洲成色777777女色窝 | 欧美精品中文字幕亚洲专区 | 日韩视频成人 | 手机在线看永久av片免费 | 亚洲精品国产成人 | 亚洲精品一区久久久久久 | 69视频网站 | 蜜桃精品成人影片 | 国产九色在线播放九色 | 精品a在线| 国产手机在线精品 | 久久精品一级片 | 黄色小视频在线免费看 | 久久亚洲网站 | 精品色图 | 亚洲玉足av久久影视 | 国产黄色免费视频 | 欧美精品免费一区二区三区 | 成人欧美一区二区三区在线 | 丰满少妇69激情啪啪无 | 日韩免费无码一区二区视频 | 暴力调教一区二区三区 | 全部免费毛片在线播放 | 性生交大片免费看女人按摩 | 96人xxxxxxxxx69| 解开乳罩喂领导吃奶 | 久久精品国产一区二区三区肥胖 | 免费无码成人av在线播放不卡 | 亚洲成a人片在线观看无码 97se亚洲精品一区 | 欧美疯狂做受xxxx高潮 | 2017狠狠干| 成人深夜在线 | 九色影视 | 国产 日韩 欧美 在线 | 国产精品无码成人午夜电影 | 成人影视在线看 | 黑人一区二区 | 久久aⅴ国产紧身牛仔裤 | 青青久久av北条麻妃海外网 | 亚洲热视频 | 亚洲精品一区二区久 | 一个人看的www片免费高清视频 | 国产激情片 | 国产精品一区三区 | 亚洲狠狠婷婷久久久四季av | 国产精品综合一区二区三区 | www.欧美日韩| 91九色视频| 在线观看免费一区 | 中文字幕视频免费观看 | 日本xxxx自慰xxxx | 亚洲成人免费观看 | 国产又粗又猛又爽又黄又 | 天天干干| 久久久www免费人成黑人精品 | 九九热com| 一个人看的www视频在线播放 | 日韩免费影视 | 一本一道久久a久久 | 国产精品视频在 | 中文字幕无码av激情不卡 | 91丨九色丨蝌蚪丨对白 | 亚洲天堂男人网 | 天堂а√中文最新版地址在线 | 少妇二级淫片免费放 | 国产欧洲色婷婷久久99精品91 | 丁香五月缴情综合网 | 一级淫片免费 | 小h片免费观看久久久久 | 日韩成人动漫在线观看 | 狠狠色噜噜狠狠狠狠米奇777 | 天天天天天天干 | 亚洲天堂影院 | 夫妻性生活a级片 | 色福利视频 | 五月天婷婷综合网 | 久激情内射婷内射蜜桃 | 香蕉av777xxx色综合一区 | 国产乱码77777777| 伊人久久大香线蕉av一区二区 | 国产熟女一区二区三区四区五区 | 国产实拍会所女技师在线观看 | 免费高清黄色 | 国产黄色免费观看 | 午夜亚洲国产 | 精品视频不卡 | 四虎av永久在线精品免费观看 | 国产成a人亚洲精v品无码 | 国产成人精品视频一区二区不卡 | 一个色的综合 | 国产china男男激情 | 性做久久久久久久久 | 国产精品福利影院 | 四虎在线视频 | 国产999精品久久久影片官网 | 91在线porny国产在线看 | 国产欧美一区二区三区视频 | 国产精品99久久久久久www | 草久久av| 久久久久91 | 亚洲激情成人 | 欧美在线性视频 | a级免费黄色片 | 黄色小视频在线观看 | 国产毛片18| 无码专区人妻系列日韩精品少妇 | 无码专区人妻系列日韩精品少妇 | 久久免费少妇高潮99精品 | 久久久一 | 最近中文字幕2019视频1 | 四虎国产精品永久地址998 | 四川少妇xxxx内谢欧美 | 美女一区二区三区 | 精品国产美女福到在线不卡 | 内射老阿姨1区2区3区4区 | 可以免费看的av毛片 | 亚洲美女av网站 | 国产一级淫片a免费播放口欧美 | 性xx十八spa按摩 | 亚洲人成人7777在线播放 | 精品欧美乱码久久久久久 | 日本a级片视频 | 国产麻豆精品久久一二三 | 黄色视屏网站 | 亚洲天堂久久新 | 无码aⅴ精品一区二区三区 45分钟免费真人视频 | 加勒比色综合久久久久久久久 | av导航在线 | 免费观看性欧美大片无片 | 又色又爽又黄18网站 | 一级黄色免费大片 | 日本黄色三级网站 | 在线欧美成人 | 日韩在线精品强乱中文字幕 | 亚洲一级黄色 | 麻豆视频国产 | 好吊色国产欧美日韩免费观看 | 中文字幕资源站 | 国产男女无套 | 最近2019中文字幕大全第二页 | 日韩一级中文字幕 | 99re6热在线精品视频播放 | 一区二区三区四区在线 | 国产一区二区三区视频网站 | 亚洲一区视频网站 | 国产成人高清 | 黄色777| 国产精品18p | 啪啪资源| 帮老师解开蕾丝奶罩吸乳网站 | 成人永久aaa | 黄色片在线观看免费 | www.欧美激情| 爱情岛论坛自拍亚洲品质极速福利 | 天天射av | 亚洲精品乱码久久久久 | 女同亚洲精品一区二区三 | 成人无码免费一区二区三区 | 亚洲一区二区在线免费观看 | 免费一级毛片在线观看 | 久久网页| 永久免费观看的毛片手机视频 | 97精品国产| 在线播放成人 | 乳女教师の诱惑juliamagnet | 欧美孕妇姓交大片 | 97人人模人人爽人人少妇 | 亚洲国产精品婷婷 | 欧洲中文字幕日韩精品成人 | 最新2020无码中文字幕在线视频 | 99久久er热在这里只有精品15 | 精品国产亚洲一区二区三区 | 国产成人av一区二区三区 | 天堂精品一区二区三区 | 亚洲色无码专区在线观看 | 欧洲老妇做爰xxxⅹ性视频 | 成熟女人特级毛片www免费 | 午夜精品久久久久久久91蜜桃 | 国产99久久久国产精品下药 | av解说在线 | 日本乱偷人妻中文字幕在线 | 日本五十熟hd丰满 | 毛片毛片毛片毛片毛片毛片毛片毛片 | 久久精品一二三区 | 蜜臀久久精品99国产精品日本 | 51国产黑色丝袜高跟鞋 | 老司机午夜在线 | a级大胆欧美人体大胆666 | 午夜影吧 | 国产一精品一av一免费 | 麻豆成人久久精品综合网址 | 中文字幕一区二区三区精彩视频 | 国产精品18久久久久久麻辣 | 特大黑人巨交吊性xxxxhd | 免费日韩中文字幕 | 国产三级做爰在线播放 | 两个人做羞羞的视频 | www99色| 亚洲精品乱码久久久久久按摩观 | 黑人巨茎美女高潮视频 | 韩国黄色精品 | 青草av.久久免费一区 | 精品婷婷色一区二区三区蜜桃 | 日本a级黄绝片a一级啪啪 | 成年精品| 91五月婷蜜桃综合 | 天天操人人 | 成人国产精品一区二区 | 日韩视频一区二区三区在线播放免费观看 | 国产精品人人爽 | 国产精品无码翘臀在线看 | 日本综合久久 | 欧美综合久久久 | 榴莲视频黄色 | 国产成人专区 | 亚洲日韩精品a∨片无码 | 欧美国产一级 | 欧美精品久久久久久久久大尺度 | 色综久久综合桃花网 | 色午夜 | 51ⅴ精品国产91久久久久久 | 又大又粗弄得我出好多水 | 国产美女免费 | 永久免费不卡在线观看黄网站 | 美日韩毛片 | 欧美亚洲国产视频 | 超碰人体| 国产精品成人一区二区三区夜夜夜 | 欧美一级日韩一级 | 国内国外精品影片无人区 | 国产精品不卡在线 | 免费无码成人av在线播放不卡 | 欧美亚洲天堂 | 内射中出日韩无国产剧情 | wwwcom日本| 制服丨自拍丨欧美丨动漫丨 | 一本一道人人妻人人妻αv 自拍日韩亚洲一区在线 | 国产乱码日产乱码精品精 | 成人免费网站黄 | 寂寞的日本美妇 | 人人草视频在线 | 九色porny丨首页入口在线 | 无码少妇精品一区二区免费动态 | 狂猛欧美激情性xxxx大豆行情 | 亚洲不卡网 | 亚洲国产成人一区二区在线 | 国产av熟女一区二区三区 | 波多野结衣在线播放视频 | 日本a在线 | 亚洲欧美视频一区 | 国产sm重味一区二区三区 | 性爱免费在线视频 | 免费公开在线视频 | 精品人妻伦九区久久aaa片 | 亚洲女同恋hd | 国产精品人妻一区二区高 | 91高清网站 | 亚洲日韩成人无码 | 久久99精品久久久秒播 | jizz高潮| 黄色网入口 | 欧美aaaaaaa| 欧美变态另类刺激 | 青草一区 | 一级不卡| 女人被男人躁得好爽免费视频 | 性xxxx视频 | 久久这里只有精品99 | 久久精品欧美一区二区三区麻豆 | 一级黄色片久久 | 久久中文字幕视频 | 在线免费看av的网站 | 色窝av| 91成熟丰满女人少妇尤物 | 69精品丰满人妻无码视频a片 | 免费观看交性大片 | 麻豆av福利av久久av | 欧美久久久久久久高潮 | 色综合成人 | 亚色中文网| 成人性生交大片免费看冫视频 | 两个人看的www视频免费完整版 | 久久69| 91插插插永久免费 | 国产成人精品日本亚洲专区 | 亚洲 美腿 欧美 偷拍 | 日本爽快片100色毛片 | 国产婷婷精品任我爽欧美 | 黄色小说在线观看视频 | 亚洲狠狠色丁香婷婷综合 | 黄av在线 | 欧美丰满老熟妇xxxxx性 | 午夜免费一区 | 台湾佬中文娱乐网址 | 国产精品乱码一区二区三区视频 | 叼嘿视频在线免费观看 | 国产精品一区二区欧美 | 免费国产又色又爽又黄的网站 | 黄色插插视频 | 97色伦97色伦国产欧美空 | 国产精品日本一区二区在线播放 | 精品国内自产拍在线观看视频 | 国产一区二区三区四区在线观看 | 国产乱人伦av在线无码 | 九九自拍偷拍 | av网站不卡 | 亚洲福利视频一区二区 | 国产综合久久久久久鬼色 | 99自拍网| 性色88av老女人视频 | 狠狠色丁香九九婷婷综合五月 | 无套内谢88av免费看 | 黄色影院久久 | 成人精品水蜜桃 | 成人自拍偷拍 | 日日噜噜噜夜夜爽爽狠狠视频寻花 | а√中文在线资源库 | 亚洲综合在线一区二区三区 | 性插视频在线观看 | 国产在线不卡一区二区三区 | 视频二区在线观看 | 肉丝美脚视频一区二区 | 国产露双乳喂奶在线观看 | 精品久久久久久久久久久久久久久久久 | 4hu最新网 | 久久久久爽爽爽爽一区老女人 | 国产精品一区亚洲二区日本三区 | 国产高清在线观看 | 中文字幕一本一二本迫 | 中文无码久久精品 | 人善交video高清 | 国产乱人伦偷精品视频免下载 | 啪一啪射一射插一插 | 亚洲国产成人久久精品软件 | 中文字幕无线码一区 | 自拍成人福利视频免费在线观看 | 日韩h在线观看 | 最新亚洲春色av无码专区 | 日韩av高清在线看片 | 极品国产白皙 | 日本久久高清 | 久久蜜桃av一区二区天堂 | 亚洲第一免费播放区 | 国产精品粉嫩jk国产呦系列 | 爆操欧美 | 欧美一级欧美三级 | 欧美成人h版在线观看 | 精品国产一区二区三区av爱情岛 | 国产高清女同学巨大乳在线观看 | 综合国产第二页 | 国产成人精品亚洲线观看 | 无码国产成人午夜电影在线观看 | 成人免费一区二区三区 | 最近中文字幕在线观看视频 | 91偷自产一区二区三区蜜臀 | 91精品国产乱码久久久久久久久 | 国産精品久久久久久久 | 麻豆人妻少妇精品无码专区 | 日本高清视频在线 | 一区二区三区久久久久 | 天天干免费视频 | 久久亚洲日韩精品一区二区三区 | 国产黄页| 色婷婷激情 | 他掀开裙子舌头进去69式 | 精品精品欲天堂导航 | 老熟妻内射精品一区 | 四虎5151久久欧美毛片 | 亚洲成a人片在线观看www | 欧美性xxxx狂欢老少配 | 国产在线精品一区二区 | 亚洲成人系列 | 黄色在线观看免费视频 | 日韩乱码人妻无码中文字幕 | 级r片内射在线视频播放 | 97久久综合 | 手机看片1024在线 | 69视频在线播放 | 丁香花在线观看免费观看图片 | 麻豆成人免费视频 | 精品国产第一区二区三区的特点 | 特黄特色的大片观看免费视频 | 成人一级黄色片 | 国产成人歌舞艳r舞 | 久久久久久久久久久小说 | 91免费看片 | 5678少妇影院| 秒拍福利视频 | 四虎精品永久在线 | 午夜小视频网站 | 中文字幕十一区 | 小毛片网站 | www.69av.com| 日韩久久一区 | 日本不卡一区二区三区视频 | 国产成人鲁鲁免费视频a | 久久亚洲综合网 | 9lporm自拍视频区九色 | 五月天久久婷婷 | 色屁屁xxxxⅹ免费视频 | 国产黄a三级三级三级看三级黑人 | 中出av在线| 无码人妻视频一区二区三区 | 人妻内射一区二区在线视频 | 国产精品久久久亚洲 | 中文字幕永久免费视频 | 巨胸喷奶水www久久久免费动漫 | 日日噜噜夜夜狠狠va视频v | 国产色多传媒网站 | 午夜亚洲国产理论片一二三四 | 日本精品视频一区二区三区四区 | 亚洲欧美一区二区三区久久 | 国产精品51麻豆cm传媒 | 国产精品久久久久久久白丝制服 |