日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

《嵌入式linux应用程序开发标准教程》笔记——7.进程控制开发

發布時間:2024/8/26 linux 66 豆豆
生活随笔 收集整理的這篇文章主要介紹了 《嵌入式linux应用程序开发标准教程》笔记——7.进程控制开发 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

  進程是系統資源的最小單元,很重要。

?

 7.1 linux進程的基本概念

  • 定義:一個程序的一次執行過程,同時也是資源分配的最小單元。程序是靜態的,而進程是動態的。
  • 進程控制塊:linux系統用進程控制塊描述進程,task_struct,在 include/linux/sched.h
  • PID,進程唯一標識;PPID,父進程的PID
#include <unistd.h>/* Get the process ID of the calling process. */ extern __pid_t getpid (void) __THROW;/* Get the process ID of the calling process's parent. */ extern __pid_t getppid (void) __THROW;

?

  進程相關的還有用戶和用戶組標識、進程時間、資源利用的函數,參考APUE.

  • 進程運行的狀態

?

  • ?進程的結構:主要包含數據段、代碼段、堆棧段
  • 進程模型:用戶態和內核態
  • linux啟動進程的兩種方式:?
    • 手動啟動:前臺啟動,最常見的是在終端里輸入命令,該命令的執行就是一個進程; 后臺啟動,用&,不影響終端,在終端后面默默運行。
    • 調度啟動:制定時間運行,有一些命令,at命令可以在指定時刻執行相關進程;cron命令可以自動周期性的執行相關進程。

  常用進程相關命令:

  

?

 7.2 linux進程編程

? 7.2.1 fork

  • 從已創建的進程中創建一個新的進程,新進程叫子進程,原進程叫父進程。
  • 子進程是父進程的復制,集成父進程的絕大部分內容,包括:整個進程的地址空間、進程上下文、代碼段、進程堆棧、內存信息、打開的文件描述符、信號控制設置、進程優先級、進程組號、當前工作目錄、根目錄、資源限制、控制終端等;
  • 子進程獨有的部分:進程號、資源使用、計時器等
  • fork的大體流程:父進程執行fork——>父進程復制出一個子進程——>父子進程從fork函數返回開始分別在兩個地址空間同時運行,通過返回值區分父子進程
  • fork的開銷比較大,復制這么多東西,想想都覺得累。有些unix系統創建了vfork()函數,vfork創建新進程時,不產生父進程的副本,允許父子進程訪問相同的物理內存而偽裝成拷貝父進程。但是子進程需要改變內存時(寫),才復制父進程,這就是“寫時復制”,linux的fork就是調用vfork函數實現的。
#include <sys/types> // pid_t #include <unistd.h>pid_t fork( void );
參數:
返回值:
  0:子進程
  >0:子進程pid,父進程
  -1:出錯
注意事項:
  fork調用一次,就創建一個子進程,所以if、else if等分支處理時,不能多次調用,應該調用一次,記下返回值,然后if else等使用此返回值。

?

?

/* 7-1,fork */#include <stdio.h> // printf #include <stdlib.h> // exit #include <unistd.h> #include <fcntl.h> // open,fcntl #include <sys/types.h>int main(int args, char *argv[]) {pid_t pid_rtn;pid_rtn = fork(); if( pid_rtn == 0 ){printf("\r\nChild thread, pid %d, ppid %d",getpid(),getppid());}else if( pid_rtn > 0 ){sleep(1); // 如果父進程先結束,則子進程會被init進程收養,用getppid時獲取的就不是創建他的父進程了printf("\r\nParent thread, pid %d, child %d",getpid(),pid_rtn);}else{ printf("\r\nfork err.");}printf("\r\nfinish.\r\n");exit(0); }

$ ./example
Child thread, pid 4087, ppid 4086
finish.

Parent thread, pid 4086, child 4087
finish.

如果父進程不睡1s,則運行結果如下:
$ ./example

Parent thread, pid 4121, child 4122
finish.
$
Child thread, pid 4122, ppid 2326
finish.

$ ps -A
*
2326 ???????? 00:00:01 upstart    // upstart就是ubuntu的init進程,對于父進程已經結束的子進程,會被這個進程“收養”
*

  7.2.2 exec函數族

  • 執行另一個程序,除了pid外,其他全被新的進程替換
  • 一般先fork,然后exec執行想執行的程序
  • exec注意事項:一定要加上錯誤判斷語句,exec很容易出錯,常見錯誤有:
    •   找不到文件或路徑,errno=ENOENT
    •   argv和envp忘記用NULL結束,errno=EFAULT;
    • ? ? ? 沒有對應可執行文件的運行權限,errno=EACCES
  • 6個函數中,真正的系統調用只有execve,其他都是庫函數,通過調用execve實現
#include <unistd.h>

int execl(const char *path, const char *arg, ...)   // list
int execv(const char *path, char *const argv[])    // vector
int execle(const char *path, const char *arg, ..., char *const envp[])  // enviroment
int execve(const char *path, char *const argv[], char *const envp[])
int execlp(const char *file, const char *arg, ...)
int execvp(const char *file, char *const argv[])

參數:
  path和file:查找方式,path完整的文件目錄路徑;file(p結尾的函數)只給出文件名,系統按照環境變量PATH指定的路徑查找;
  arg...和argv[]:參數傳遞方式,list和vector,這些參數必須以NULL結尾,以可執行程序命令本身開頭;
  envp:環境變量,e結尾,指定要執行的進程所使用的環境變量

返回值:-1 出錯

?

?

/* 7-2,exec */

#include <stdio.h> // printf
#include <stdlib.h> // exit
#include <unistd.h>
#include <fcntl.h> // open,fcntl
#include <sys/types.h>

int main(int args, char *argv[])
{
pid_t pid_rtn;

pid_rtn = fork();
if( pid_rtn == 0 )
{
execlp("ps","ps","-A","NULL");  // 第一個ps是文件名,后面是參數,輸入參數時,第一個參數是要運行的程序,跟在shell里輸入是一樣的,注意要用NULL結尾
}

printf("\r\nfinish.\r\n");
exit(0);
}

?

相當于執行了“ps -A”命令,運行結果:

PID TTY STAT TIME COMMAND
1 ? Ss 0:12 /sbin/init splash
2 ? S 0:00 [kthreadd]

......

?

?7.2.3 exit和_exit

  • 兩個函數會停止所有操作,清除PCB等數據結構;
  • 兩個函數有差別:
    •   _exit:直接停止運行, 清除進程使用的內存空間,清除內核中的數據結構;
    • ? ? ?exit = “清理IO緩存”+_exit, 清理IO緩存,指檢查文件的打開情況,把文件緩沖區中的內容寫回文件。linux里有“緩沖IO”操作,例如printf、fgets等,使用緩沖區,類似cache。
    • ?只使用exit()就可以了

進程調用exit()和_exit()后不會立即退出,而是進入僵死zombie狀態,變成僵尸進程,僵尸進程只在進程列表里保留一個位置,記錄該進程的退出狀態等供其他進程收集(一般是父進程用wait收集)。

#include <unistd.h>  // _exit
#include <stdlib.h>  // exit

void exit( int status );
void _exit( int status);

參數:
  status 可以返回本進程(調用exit的進程)的退出狀態,一般0表示正常,其他數值表示出錯,進程非正常結束;
  父進程用wait()系統調用接收子進程的返回值。

?

#include <stdio.h> // printf
#include <stdlib.h> // exit
#include <unistd.h>

int main(int args, char *argv[])
{
  printf("Start.\n");
  printf("content in buffer.");
  _exit(0);
}

$ ./example     // 在緩沖區里就沒有了,因為_exit不刷緩沖區
Start.

?

#include <stdio.h> // printf
#include <stdlib.h> // exit
#include <unistd.h>

int main(int args, char *argv[])
{
  printf("Start.\n");
  printf("content in buffer.");
  exit(0);
}

$ ./example      // 在緩沖區里的也刷出來了,exit干的
Start.
content in buffer.

?

【注意】

printf遇到“\n”換行符時自動從緩沖區中將記錄讀出?

  7.2.4 wait和waitpid

  •  wait阻塞等待1個子進程結束,如果該進程在阻塞時接到了一個指定的信號,則阻塞也可能終止。如果沒有子進程或者子進程已經結束,則wait會立即返回
  • ? ?waitpid比wait功能豐富,可提供非阻塞、作業控制、指定待等待進程等功能
#include <sys/types.h>
#include <sys/wait.h>

pid_t wait( int * status );
參數:
  status:返回子進程的退出狀態和異常終止狀態,若為NULL,則不獲取。可以通過一些linux特定的宏來測試具體狀態信息
       【重要】:進程退出有正常退出(子進程exit或者return),此時的狀態記為“正常退出狀態”;還有異常退出的情況,例如被信號中斷等,這時的狀態記為“異常終止狀態”。status可以反映這兩種狀態。          

        union wait
        {
          int w_status;
          struct
          {
            # if __BYTE_ORDER == __LITTLE_ENDIAN
            unsigned int __w_termsig:7; /* Terminating signal. */
            unsigned int __w_coredump:1; /* Set if dumped core. */
            unsigned int __w_retcode:8; /* Return code if exited normally. */
            unsigned int:16;
            # endif
          } __wait_terminated;   // 正常退出和異常終止,格式


          struct
          {
            # if __BYTE_ORDER == __LITTLE_ENDIAN
            unsigned int __w_stopval:8; /* W_STOPPED if stopped. */
            unsigned int __w_stopsig:8; /* Stopping signal. */
            unsigned int:16;
            # endif
          } __wait_stopped;   // 暫停,stop,格式
        };

           常用宏:            
           WIFEXITED(status),若為正常退出,則返回真。若為真,可用WEXITSTATUS(status)獲取exit返回的狀態;
           WIFSIGNALED(status),若子程序為異常終止,則返回真(被信號終止),可用WTERMSIG(status)獲取子進程終止的信號編號;可用WCOREDUMP(status)檢查是否產生core文件,產生時為真;
           WIFSTOPPED(status),如果子程序暫停,則為真,可通過WSTOPSIG(status),獲取使子程序暫停的信號編號
           WIFCONTINUED(status),若暫停后又繼續的子進程返回狀態,則為真,僅用于waitpid。

            #define WIFEXITED(status) (((status) & 0x7f)== 0)
            #define?WIFSIGNALED(status) (((signed char) (((status) & 0x7f) + 1) >> 1) > 0)
            #define?WIFSTOPPED(status) (((status) & 0xff) == 0x7f)

            #define?WEXITSTATUS(status)(((status) & 0xff00) >> 8)
            #define?WTERMSIG(status) ((status) & 0x7f)
            #define?WSTOPSIG(status) (((status) & 0xff00) >> 8)

          
返回值:
  成功:已結束運行(被等待的)的子進程的進程號
  失敗:-1

pid_t waitpid( pid_t pid, int *status, int options );
參數:
  pid: >0,等待進程ID=pid的子進程,不管別的;
     =-1,等待任何一個子進程,與wait()作用一樣;
     = 0,等待“ID==調用進程組ID”的任一子進程;
     <-1,等待“ID==pid絕對值”的任一子進程
  status:同wait()函數
  options:sya
     WNOHANG:不阻塞
     WUNTRACED:若實現某支持作業控制,則由 pid 指定的任一子進程狀態已暫停,且其狀態自暫停以來還未報告過,則返回其狀態
     0:同wait(),阻塞
  返回值:
     正常:已結束運行的子進程的進程號
     使用WNOHANG且沒有子進程:0
     調用出錯:-1

【注意】
1. 關于幾個測試退出狀態的特殊的宏

?

/* 7-4,waitpid */

#include <stdio.h> // printf
#include <stdlib.h> // exit
#include <unistd.h>
#include <sys/types.h> // pid_t
#include <sys/wait.h>

int main(int args, char *argv[])
{
  pid_t pid_fork,pid_wait;
  int status;

  pid_fork=fork();
  if( pid_fork == 0 ) // child
  {
    sleep(5);
    exit(0);
  }
  else if( pid_fork > 0 )
  {
    do
    {
      pid_wait = waitpid(pid_fork,&status,WNOHANG);
      if( pid_wait != pid_fork )
        printf("child thread %d is not over\r\n",pid_fork);
      else
        printf("child thread %d is over,status 0x%x\r\n",pid_fork,status);
      sleep(1);
    }
    while(pid_wait!=pid_fork);
  }
  else
  {
    printf("fork err code %d.\r\n",pid_fork);
  }

  exit(0);
}

?

$ ./example    

child thread 7575 is not over
child thread 7575 is not over
child thread 7575 is not over
child thread 7575 is not over
child thread 7575 is not over
child thread 7575 is over,status 0x0

?

$ ./example     // 子進程exit(-1)時,waitpid的獲取的值是0xff00,高位是exit的返回值,需要用到宏了
child thread 7605 is not over
child thread 7605 is not over
child thread 7605 is not over
child thread 7605 is not over
child thread 7605 is not over
child thread 7605 is over,status 0xff00

?

?

? 7.3 守護進程

 7.3.1 守護進程概念

    守護進程,也叫deamon進程,是后臺服務進程;系統引導載入時啟動,系統關閉時終止,獨立于控制終端;常用于周期性的執行某種任務或等待處理某些事件。守護進程已d結尾,例如crond、lpd等。

    控制終端:系統與用戶進行交流的界面稱為終端,每個從此終端開始運行的進程都會依賴這個終端,這個終端就是這些進程的控制終端。控制終端關閉時,相應的進程都會關閉。但是守護進程不受影響。

    守護進程不受終端、用戶和其他變化的影響,直到系統關閉時才退出。

? ?7.3.2 編寫守護進程

?步驟:

??7.3.2.1?創建子進程,父進程退出

   父進程退出后,子進程編程了孤兒進程,被init進程收養。 形式上做到了與控制終端的脫離。   

!!!7.3.2.2 在子進程中創建新會話

   先了解基本概念:進程組、會話組、會話期

   進程組:一個或多個進程的集合,每個進程組都有一個組長進程,進程組ID=組長PID

   會話組:一個或多個進程組的集合

   會話期:通常一個會話開始于用戶登錄,終止與用戶退出,在此期間該用戶運行的所有進程都屬于這個會話期。

? ? ? ??

    

setsid():創建新的會話,并擔任該會話組的組長。調用后起到3個作用:
  • 讓進程擺脫原會話的控制;
  • 讓進程擺脫原進程組的控制
  • 讓進程擺脫原控制終端的控制
總之,跟之前的控制終端、進程組、會話組都沒有關系了。使進程完全獨立出來,從而擺脫所有其他進程的控制

#include <sys/types.h>
#include <unistd.h>

pid_t setsid( void );
返回值:
  成功:該進程組ID
  出錯:-1

?

7.3.2.3 改變當前目錄為根目錄

  通常的做法是將守護進程的當前目錄設置為根目錄,用chdir()系統調用。

7.3.2.4 重設文件權限掩碼

  umask(0),基本思路是給最大權限。

7.3.2.5 關閉文件描述符

  父進程那繼承來的文件描述符,一般不用,浪費,關閉。 連基本的輸入輸出都沒用了,setsid時已經失去聯系了,可以關了。

/* 7-5,deamon */#include <stdio.h> // printf #include <stdlib.h> // exit #include <unistd.h> #include <sys/types.h> // pid_t #include <fcntl.h>int main(int args, char *argv[]) {pid_t pid_fork;int i;int fd;char buf[32]="The deamon info.\n";pid_fork = fork();if( pid_fork < 0 ){printf("fork err.\r\n");}else if( pid_fork > 0 ){exit(0);}// only child enter setsid(); chdir("/");umask(0);for( i=0;i<getdtablesize();i++ ) // 終端也關了,printf沒有效果了,需要用別的調試方法 close(i);if( fd=open("/tmp/log", O_RDWR|O_CREAT,0644) < 0 )printf("open file err\r\n"); while(1){write(fd,buf,sizeof(buf));sleep(1); }exit(0); }

?

7.3.3 守護進程的出錯處理

  printf不好使,咋辦?用linux提供的syslog服務,系統中有syslogd守護進程。不通版本linux的syslog日志文件的位置可能不通。

  

#include <syslog.h>

void openlog( char * ident, int options, int facility );
參數:
  ident:向每個消息加入的字符串,通常為程序的名稱;
  option:LOG_CONS,如果消息無法送到系統日志服務,則直接輸出到系統控制終端
       LOG_NDELAY:立即打開系統日志服務的連接。在正常情況下,直接發送到第一條消息時才打開連接
       LOG_PERROR:將消息也同時送到 stderr 上        LOG_PID:在每條消息中包含進程的 PID

  facility: 指定程序發送的消息類型
       LOG_AUTHPRIV:安全/授權信息
       LOG_CRON:時間守護進程(cron at
       LOG_DAEMON:其他系統守護進程
       LOG_KERN:內核信息
       LOG_LOCAL[0~7]:保留
       LOG_LPR:行打印機子系統
       LOG_MAIL:郵件子系統
       LOG_NEWS:新聞子系統
       LOG_SYSLOGsyslogd 內部所產生的信息函數傳入值
       LOG_USER:一般使用者等級信息
       LOG_UUCPUUCP 子系統

void syslog(int priority, char *format, ...)
參數: priority ,指定消息的重要性,       LOG_EMERG:系統無法使用
      LOG_ALERT:需要立即采取措施
      LOG_CRIT:有重要情況發生
      LOG_ERR:有錯誤發生
      LOG_WARNING:有警告發生
      LOG_NOTICE:正常情況,但也是重要情況
      LOG_INFO:信息消息
      LOG_DEBUG:調試信息
    format,同printf

void closelog( void )

?

  

  

?

轉載于:https://www.cnblogs.com/liuwanpeng/p/6605985.html

總結

以上是生活随笔為你收集整理的《嵌入式linux应用程序开发标准教程》笔记——7.进程控制开发的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

a黄色影院 | 日韩在线观看第一页 | 欧美 日韩 视频 | 色网站免费在线观看 | 久久在线精品 | 久久av福利| 这里只有精品视频在线观看 | 欧美日韩在线观看一区二区 | 在线免费观看视频 | 国产亚洲成av人片在线观看桃 | 日本成址在线观看 | 免费在线观看一区二区三区 | 欧美91精品久久久久国产性生爱 | 日韩精品视频在线免费观看 | 国产精品成人免费 | 亚洲精品在线观看视频 | 在线观看免费日韩 | 久久久久久久久久久精 | 欧美极品少妇xbxb性爽爽视频 | 91桃色免费视频 | 狠狠狠色狠狠色综合 | 人人看看人人 | 在线激情网 | 男女激情片在线观看 | 亚洲一区二区麻豆 | 中文字幕精 | 99久久999久久久精玫瑰 | 久久久91精品国产 | 69国产在线观看 | 天天色天天色天天色 | 欧美另类xxx| 国产精品视频地址 | 亚洲精品免费视频 | 久久人人97超碰精品888 | 亚洲久草网 | 天天干天天射天天爽 | 婷婷国产精品 | 国产99久久九九精品免费 | 在线亚洲小视频 | 天堂网中文在线 | 四虎永久免费网站 | 久久精品中文字幕一区二区三区 | 亚洲精品久久久久久久蜜桃 | www久久国产 | 中文字幕乱码视频 | 日韩xxxxxxxxx| 日韩成人免费观看 | 亚洲综合成人av | 免费福利视频网 | 久久精品这里都是精品 | 日韩在线不卡 | 爱情影院aqdy鲁丝片二区 | 国产成人一二片 | 91高清免费看 | 国产精品久久久久久久久久 | 日韩高清免费电影 | 怡红院av久久久久久久 | 一区二区三区中文字幕在线观看 | 中文字幕在线播放一区 | 在线观看视频你懂得 | 精品亚洲网 | www.久久久.cum | 91大神在线观看视频 | 综合天天久久 | 色婷婷在线视频 | 99精品视频精品精品视频 | 在线国产高清 | 激情综合色综合久久综合 | 色偷偷人人澡久久超碰69 | 国产伦精品一区二区三区无广告 | 日韩一区二区三区在线观看 | 日韩视频中文字幕在线观看 | 一区二区三区三区在线 | 国产成人精品在线播放 | 欧美久久久久久久久久久 | av经典在线 | 96看片| 欧美在线一 | 91九色精品女同系列 | 欧美日韩一级视频 | 亚洲老妇xxxxxx | 久久不射网站 | 天天操夜| 国产99久久精品一区二区永久免费 | 国产精品久久久久久久久免费看 | www.久久免费视频 | 亚洲电影网站 | 欧美日韩中文在线 | 国产无套精品久久久久久 | 片网站| 国产免费观看av | 久久官网 | 国产美女免费观看 | 国产福利一区二区在线 | 精品九九九 | 99精品国产99久久久久久福利 | 狠狠操狠狠插 | 日韩av手机在线观看 | 免费在线色电影 | 亚洲 中文 欧美 日韩vr 在线 | 在线观看国产91 | 精品一二三区视频 | 亚洲午夜精品久久久 | 99久久婷婷国产综合精品 | 国产福利精品视频 | 国产老妇av| 天天视频色版 | 天天操天天爱天天干 | 日av免费 | 天天干夜夜擦 | 久久人视频| 久久不卡国产精品一区二区 | 国产日本三级 | 国产精品九色 | 国产美女精品人人做人人爽 | 欧美另类网站 | 一区二区国产精品 | 中文字幕乱码电影 | 天天操福利视频 | 亚洲精品欧美视频 | 亚洲黄色免费电影 | 手机成人av在线 | 欧美小视频在线观看 | 国产精品无 | 日韩高清在线看 | 在线免费看黄网站 | 久久精品国产亚洲a | 久操中文字幕在线观看 | 亚洲最大的av网站 | 97色se| 国产色婷婷在线 | 免费精品国产 | 国产馆在线播放 | 日韩欧美高清一区二区三区 | 91精品麻豆| 国产手机视频在线 | 能在线观看的日韩av | 精品成人a区在线观看 | av免费看网站 | 国产又粗又猛又爽又黄的视频先 | 丁香激情五月 | 日韩美视频 | 欧美一级久久久久 | 爱色av.com| 999视频网 | 久久精品一二三区白丝高潮 | 国精产品满18岁在线 | 亚洲欧美综合精品久久成人 | 亚洲狠狠| 九九久久精品视频 | 国产精品一区二区三区在线看 | 久久精品之 | 精品国产一区二区三区四区在线观看 | 久久久91精品国产 | 亚洲理论影院 | 天天操天天操天天操天天 | 2019国产精品 | 在线观看亚洲专区 | 国产一二三四在线观看视频 | 日日夜夜爱 | 国产精品wwwwww | 婷婷在线不卡 | 久久激情五月丁香伊人 | 日韩成人黄色av | 日韩av中文 | 福利视频入口 | 色视频成人在线观看免 | 日本中文字幕免费观看 | 亚洲精品女人久久久 | 国产九色在线播放九色 | 亚洲精品久久久久久中文传媒 | 久草在线综合 | 久久夜色精品国产欧美乱 | 四虎成人精品永久免费av | 五月天丁香| 在线观看日韩av | 四虎www com | 亚洲视频在线视频 | 十八岁以下禁止观看的1000个网站 | 狠狠干网 | 久久五月网 | 久草精品视频在线看网站免费 | 亚洲九九爱| 91精品国 | 麻豆高清免费国产一区 | 白丝av免费观看 | 成人一区在线观看 | 国产午夜精品一区二区三区嫩草 | 日韩久久久久久久久久久久 | 日韩在线观看第一页 | 4hu视频 | 日韩一区二区三 | 久草久| 欧美一区二区三区不卡 | 国产精品网红直播 | 波多野结衣亚洲一区二区 | www.天天干.com | 最新精品国产 | 国产手机视频在线 | 色婷婷99 | 久久综合中文字幕 | 超碰97在线资源 | 国产精品麻豆视频 | 久久看视频 | 日本美女xx | 五月婷久久| 日韩理论片中文字幕 | 国产精品99视频 | 五月天激情在线 | 99久久99久国产黄毛片 | 国模精品一区二区三区 | 丁香婷婷激情网 | 国产欧美精品一区二区三区四区 | 国产视频在线观看一区 | 97超碰资源 | 亚州av网站| 日韩精品久久久久久久电影99爱 | 国产亚洲免费的视频看 | 久久久亚洲影院 | 日日添夜夜添 | 六月婷婷久香在线视频 | 亚洲国产精品一区二区久久hs | 在线免费av电影 | 国产精品美乳一区二区免费 | 蜜臀av网站| 综合黄色网 | 伊人欧美| 美女搞黄国产视频网站 | 亚洲视频电影在线 | 粉嫩av一区二区三区四区五区 | 中文字幕 国产视频 | 久久 国产一区 | 天天综合网天天综合色 | 日韩av午夜在线观看 | 久久久久久久久福利 | 丁香婷婷激情国产高清秒播 | 国产免费观看视频 | 欧美性生交大片免网 | 91精品视频观看 | 欧美最猛性xxxxx(亚洲精品) | 日韩电影在线观看一区二区三区 | 国产精品精 | 欧美另类xxxxx | 韩国中文三级 | 欧美另类视频 | 久久天天躁 | 最新日韩视频 | 国产精品永久免费观看 | 很黄很黄的网站免费的 | 欧美成人xxxxx | 999久久久免费精品国产 | 99精品视频免费观看视频 | 国产成人精品一区二区三区在线观看 | 黄色av影视 | 色鬼综合网 | 亚洲精品小视频 | 高清av影院| 91九色在线视频观看 | 欧美一区日韩精品 | 免费看一级特黄a大片 | 天天做天天看 | 青草视频在线 | 二区三区毛片 | 91插插视频 | 国产成人精品av在线 | www.久久99 | 日韩高清观看 | 美女视频黄免费 | 亚洲妇女av | 亚洲精品国产精品国产 | 久久免费片 | 国产日韩精品一区二区在线观看播放 | 国产小视频免费在线网址 | 亚洲国产精品999 | 丁香九月婷婷综合 | 精品久久久国产 | 四虎影视成人精品 | 婷婷成人亚洲综合国产xv88 | 青青河边草免费观看 | 国内精品久久久久久久久久清纯 | 久久福利综合 | 久久久免费毛片 | 国产高清视频免费在线观看 | 99 久久久久 | 日韩视频免费播放 | 日韩有码网站 | 国产婷婷| 亚洲国产经典视频 | 久久综合免费视频影院 | 日本久久久久久久久久久 | 超碰在线中文字幕 | 免费在线观看成年人视频 | 日本视频网 | 国产亚洲精品久久久久久移动网络 | 中文av网站 | 亚洲黄色软件 | 国产大陆亚洲精品国产 | 日本一区二区三区免费观看 | 91av在线视频免费观看 | 国产亚洲亚洲 | 精品亚洲二区 | 国产韩国精品一区二区三区 | 色免费在线 | 激情av五月婷婷 | 天天操夜夜摸 | 中文字幕在线观看网址 | 色综合天天综合网国产成人网 | 日日射天天射 | 日色在线视频 | 日韩在线视频精品 | 成人毛片网 | 欧美视频日韩视频 | 日韩,中文字幕 | 97**国产露脸精品国产 | 国产 日韩 欧美 在线 | 黄色免费网站下载 | 亚洲国产欧美在线看片xxoo | 久久久久久久久久久久亚洲 | 91看国产| 一区三区视频在线观看 | 999成人 | 五月天堂网 | 九9热这里真品2 | 五月婷综合网 | 97在线影院 | 精品国产一区二区三区男人吃奶 | 亚洲国产大片 | 在线精品亚洲一区二区 | 四虎4hu永久免费 | 国产在线精品一区二区 | 日韩电影在线看 | 99精品在线免费在线观看 | 一区二区视频在线免费观看 | 日韩精品在线一区 | 九九视频精品在线 | 午夜久久福利影院 | 国产精品永久久久久久久www | 日本久久精品 | 成年人网站免费在线观看 | 欧美国产高清 | 国产色在线 | 国产免费黄色 | 91探花在线视频 | 亚洲精品乱码久久久久 | 久久99热精品这里久久精品 | 中文字幕在线视频一区 | 丁香婷婷综合激情 | 四虎4hu永久免费 | 91av视频观看 | 91av视频导航 | 欧美日本中文字幕 | 中文字幕在线播出 | 日批视频在线观看免费 | 亚洲h在线播放在线观看h | 国产午夜精品一区 | 亚洲欧洲精品一区二区 | 91亚洲在线观看 | 三级黄色免费片 | 国产视频美女 | 中文字幕网站 | japanesefreesex中国少妇 | 国产日韩欧美在线观看 | 99精品视频在线播放观看 | 日韩在线免费视频 | 狠狠色丁香婷综合久久 | 色视频成人在线观看免 | 99人久久精品视频最新地址 | 91在线中文字幕 | 久久综合天天 | 黄色字幕网 | 日韩高清在线看 | 精品亚洲欧美无人区乱码 | 狠狠色丁香九九婷婷综合五月 | 91一区啪爱嗯打偷拍欧美 | www.狠狠干| 国产一区二区三精品久久久无广告 | 怡红院av久久久久久久 | 欧美另类一二三四区 | 在线精品播放 | 夜夜嗨av色一区二区不卡 | 一区二区三区在线观看中文字幕 | 91精品国产综合久久福利不卡 | 在线日韩中文字幕 | 国产一级片视频 | 国产精品成人av电影 | 久久www免费视频 | 亚洲电影免费 | 亚洲国产精品小视频 | 久久99网站 | 香蕉网在线观看 | 91精品久久久久久久久久入口 | 在线观看视频福利 | 欧美成人日韩 | 国产精品一区二区三区电影 | 日韩av成人在线观看 | 96亚洲精品久久久蜜桃 | 精品在线亚洲视频 | 欧美成人精品在线 | 4438全国亚洲精品观看视频 | 在线免费观看av网站 | 91精品国产自产老师啪 | 久久国产精品免费一区 | 国产免费视频在线 | 国产精品一区在线观看 | 久久手机免费观看 | 国产不卡av在线播放 | 国产99久久精品一区二区300 | 日韩三级视频 | 日韩免费av在线 | 国产亚洲视频在线 | 欧美高清视频不卡网 | 久草在线最新 | 免费日韩一区 | 四虎在线免费观看 | 一级片免费观看 | 国产一级一片免费播放放 | 国产亚洲婷婷免费 | 久草网视频在线观看 | 一区二区视频在线看 | 欧美日韩高清一区二区 国产亚洲免费看 | 国产一级高清 | 日韩欧美视频在线观看免费 | 91精品国产高清自在线观看 | 免费国产在线观看 | 国产视频97 | 日本精品一区二区在线观看 | 免费日韩电影 | 国产高清视频免费在线观看 | 色婷婷电影网 | www欧美xxxx | 狠狠的日日| 欧美日本不卡高清 | 五月天久久久久 | 色 免费观看 | 成人av网址大全 | 麻豆免费看片 | 高潮久久久久久 | 国产免费观看视频 | 欧美久久久久久久久久久久 | 五月天久久久 | 99九九热只有国产精品 | 精品久久视频 | 美女国内精品自产拍在线播放 | 97超级碰碰碰碰久久久久 | 中文字幕第一页在线播放 | 国产在线精品区 | 综合色狠狠 | 99精品色| 成人在线免费视频观看 | 成人免费电影 | www99精品 | 免费瑟瑟网站 | 久久成人免费视频 | 麻豆影视在线观看 | 久久国产99| 成人av影院在线观看 | 免费人人干 | 不卡中文字幕在线 | 狠狠狠色丁香婷婷综合激情 | 免费观看9x视频网站在线观看 | 午夜黄色| 日韩 精品 一区 国产 麻豆 | 国产免费观看久久 | 精品国产伦一区二区三区免费 | 欧美a性| 97精品国产97久久久久久免费 | 欧美日韩中文在线观看 | 国产亚洲精品久久久久久久久久久久 | 免费看的黄色的网站 | 国产福利一区二区三区在线观看 | 国产精品成人在线 | 精品久久久久久久久久 | 亚洲精品乱码 | 国产韩国日本高清视频 | 97超碰伊人 | 欧美日韩精品二区第二页 | 亚洲欧美日韩一二三区 | 91成人小视频 | 国产一级黄色免费看 | 又黄又刺激又爽的视频 | 国产精品美女久久久久久久 | av理论电影 | 欧美日韩中文字幕在线视频 | 精品国产精品国产偷麻豆 | 西西人体4444www高清视频 | 美女网站一区 | 国产精品成人免费 | 97视频亚洲 | 日韩欧美视频在线观看免费 | 久久狠狠一本精品综合网 | 久久国产欧美日韩精品 | 91女神的呻吟细腰翘臀美女 | 高清美女视频 | 在线观看精品黄av片免费 | 超碰97人| 精品久久国产一区 | 色在线高清 | bbbbb女女女女女bbbbb国产 | 天天射天天干天天操 | 精品伦理一区二区三区 | 国产一级免费播放 | 少妇啪啪av入口 | 激情综合啪 | 91精品国产九九九久久久亚洲 | 日韩在线观看视频在线 | 成片人卡1卡2卡3手机免费看 | 色婷婷婷 | 在线观看韩日电影免费 | 激情久久久久久久久久久久久久久久 | 天天草网站 | 激情五月婷婷激情 | 在线日韩亚洲 | 国产免费久久精品 | 亚州av一区 | 婷婷5月色 | 天堂网一区二区三区 | 日日干网 | 91亚洲免费 | 久久中文精品视频 | 日韩精品视 | 国产一区二区在线看 | 日本中文字幕在线免费观看 | 国产精品扒开做爽爽的视频 | 美女久久一区 | 成人av动漫在线观看 | 国产美女在线观看 | 日韩中文字幕视频在线 | 13日本xxxxxⅹxxx20 | 91亚色在线观看 | 麻豆影视在线免费观看 | 久久综合九色欧美综合狠狠 | 久久久久草 | 欧美日产一区 | 在线亚洲成人 | 日韩三级视频在线观看 | av福利资源 | 婷婷激情影院 | 91久久久久久久一区二区 | 97香蕉久久超级碰碰高清版 | 亚洲一区二区三区在线看 | 色婷婷狠| 中文字幕亚洲精品在线观看 | 六月天色婷婷 | 国产自制av | 久久久久久中文字幕 | 黄色录像av | 欧美福利久久 | 国产福利一区在线观看 | av观看在线观看 | 婷婷伊人五月天 | 久久试看 | 91九色视频导航 | 欧美国产精品一区二区 | 国产亚洲精品v | 日日骑 | 午夜精品剧场 | 在线成人看片 | 日韩一区在线免费观看 | 国产日韩欧美网站 | 日韩精品视频在线免费观看 | 国产精品福利午夜在线观看 | 中文字幕免费国产精品 | 色瓜 | 久久成人亚洲欧美电影 | 亚洲日本黄色 | 成人黄色电影免费观看 | 综合伊人久久 | 欧美日韩亚洲一 | 国产一级电影 | av中文字幕网站 | 91精品在线视频观看 | 日韩视频一区二区 | 黄色av电影 | 国偷自产中文字幕亚洲手机在线 | 久久亚洲福利视频 | 在线观看国产永久免费视频 | 99这里都是精品 | 精品美女在线观看 | 中文字幕在线观看免费观看 | 久久综合9988久久爱 | 免费又黄又爽的视频 | 日日夜夜狠狠干 | 成人日批视频 | 国产精品久久久久一区二区国产 | 久久久精品国产一区二区三区 | 天天操天操 | 亚洲欧美日韩精品久久奇米一区 | 国产一级在线看 | 成年人免费在线 | 久久99亚洲精品久久久久 | 亚洲成av人片在线观看www | 日本精品久久久一区二区三区 | 天天天干天天射天天天操 | 天天操夜夜做 | 91在线91拍拍在线91 | 久久精品国产亚洲精品 | 成人三级黄色 | 国产高清视频色在线www | 成人a视频片观看免费 | 天天操天天操天天干 | 99精品黄色片免费大全 | 国产精品一区二区久久精品 | 中文字幕xxxx| .国产精品成人自产拍在线观看6 | 97免费在线观看视频 | 成人高清在线观看 | 一区二区三区四区五区六区 | 日韩欧美视频一区二区三区 | 综合色综合 | 在线精品亚洲一区二区 | 婷婷激情综合网 | 精品人人爽 | 中文字幕 影院 | 亚洲一区二区高潮无套美女 | 五月激情婷婷丁香 | 亚洲精品午夜一区人人爽 | 国产精品国产三级国产不产一地 | 中文字幕 在线 一 二 | 久草视频手机在线 | 欧美一区二区在线刺激视频 | 日韩av在线看 | 亚洲成人av在线电影 | 伊人中文字幕在线 | 久久精品视频免费观看 | 亚洲欧洲久久久 | 国产在线观看91 | 久久综合国产伦精品免费 | 日韩黄色一区 | 日韩乱码中文字幕 | 中文字幕在线播放视频 | 婷婷丁香色综合狠狠色 | 亚洲精品乱码久久久久久蜜桃动漫 | 国产成a人亚洲精v品在线观看 | 青春草免费在线视频 | 五月婷婷六月丁香在线观看 | 国产在线国偷精品产拍免费yy | 91在线欧美| 久久亚洲综合国产精品99麻豆的功能介绍 | 色小说av | 日本视频精品 | 色婷婷www | 欧美成人a在线 | 久久国产精品色av免费看 | 久久国产精品久久w女人spa | 永久免费观看视频 | 亚洲欧美综合精品久久成人 | 西西444www高清大胆 | 久久精品久久精品久久39 | 国内精品久久久久影院优 | 精品国产久 | 成人黄色大片在线免费观看 | 国产精品破处视频 | 日本 在线 视频 中文 有码 | www.夜夜爱| 国内久久久久 | 色综合久久五月天 | 亚洲资源视频 | 婷婷久久精品 | 久久久国产精品电影 | 免费看黄网站在线 | 国产精品99视频 | 韩日色视频| 91正在播放 | 国产一区二区三区久久久 | 亚洲黄色片 | 日韩久久精品一区二区三区下载 | 亚洲h在线播放在线观看h | 91视频免费国产 | 日韩久久视频 | 久久99精品久久久久久三级 | 男女免费视频观看 | 91精品色| 欧美精品免费在线观看 | 中文字幕一区二区三区在线播放 | 色综合咪咪久久网 | 五月婷婷激情六月 | 成人久久影院 | 色久天| 精品国产伦一区二区三区观看方式 | 亚洲成人一二三 | 成人免费 在线播放 | 国产探花在线看 | 日韩欧美v | 91中文字幕一区 | 国产日韩高清在线 | 国产精品小视频网站 | 在线观看一区 | 成人h视频在线播放 | 国产精品毛片 | 精品无人国产偷自产在线 | 欧美另类成人 | 啪嗒啪嗒免费观看完整版 | 成人在线免费小视频 | 狠狠干狠狠插 | www.888av| 亚洲电影一区二区 | 日韩欧美在线国产 | 午夜精品久久久久久久久久久 | 久久免费一级片 | 久青草电影 | 丝袜美腿亚洲综合 | 国产一二三四在线观看视频 | 四虎在线免费观看视频 | 五月婷综合 | 亚洲一区二区三区在线看 | 伊人婷婷网 | aaa亚洲精品一二三区 | 欧美极度另类 | 国产日韩精品一区二区 | 91综合视频在线观看 | 97狠狠干| 成人观看视频 | 成人av高清在线观看 | 四虎影视www | 亚洲精品免费观看视频 | 成人影视片 | 亚洲一区日韩精品 | 精品国产一二三四区 | 国产只有精品 | 超碰在线cao | 亚洲另类视频在线观看 | 五月婷婷天堂 | 亚洲aⅴ在线观看 | 麻豆免费在线视频 | 久久精品亚洲综合专区 | 一区二区av | 91在线视频观看免费 | 国内精品视频免费 | 黄色免费大全 | 国产麻豆视频免费观看 | 在线观看日韩国产 | 国产网红在线观看 | 中文字幕在线观看视频网站 | 91资源在线免费观看 | 久久伊人操 | 午夜久久视频 | 午夜久久久久久久久久影院 | 日本中文字幕在线一区 | 精品久久久久久久久久国产 | 久久这里只有精品1 | 成人97视频一区二区 | 国产国产人免费人成免费视频 | 国产精品女人网站 | 在线中文字幕一区二区 | 在线成人小视频 | 欧美狠狠色| 在线观看免费成人 | 精品亚洲国产视频 | 久草在线视频国产 | 国产麻豆精品久久一二三 | 日本在线成人 | 国产精品黄色 | 欧美福利网址 | 国产丝袜 | 天天干天天操天天爱 | 国产不卡精品视频 | 久久伊99综合婷婷久久伊 | 日韩成人精品 | 丁香五婷| 天天摸天天舔 | 99热手机在线 | 欧美日韩综合在线观看 | 在线观看亚洲免费视频 | 亚洲成人资源 | 人人插人人射 | 亚洲精品字幕在线观看 | 97精品国产一二三产区 | 91人人澡| 久久96国产精品久久99软件 | 天天射成人 | 天天曰 | 天天草天天爽 | 欧美日韩中文在线视频 | 蜜臀久久99精品久久久酒店新书 | 天天看天天干 | 午夜.dj高清免费观看视频 | 中文字幕成人 | 精品一区免费 | 久久久久免费观看 | 国产精品久久久 | 在线日韩中文 | 97色婷婷成人综合在线观看 | 国产精品第2页 | 精品久久一| 成人一级电影在线观看 | 日韩在线电影一区二区 | 日韩国产高清在线 | 国产色网 | 激情欧美一区二区三区 | 日韩视频欧美视频 | 国产偷v国产偷∨精品视频 在线草 | 激情综合五月天 | 午夜精品剧场 | 毛片99| www亚洲国产 | 亚洲欧美国产精品18p | 日韩在线观看视频一区二区三区 | 欧美日韩三区二区 | 亚洲最新av在线网站 | 日韩四虎| 在线观看视频国产一区 | 亚洲精品久久久久中文字幕m男 | 日本精品一区二区三区在线观看 | 国产高清在线永久 | 天天色天天操综合 | 久草在线视频中文 | 中文字幕久久亚洲 | 波多野结衣小视频 | 国产色视频网站 | 国产精品一区二区三区免费看 | 激情五月婷婷综合网 | 色偷偷97| 97人人人| 久射网 | 成片免费观看视频大全 | 伊人狠狠| 91爱爱网址| 日韩素人在线观看 | 操老逼免费视频 | 久久国产精品久久w女人spa | 国产精品美女久久久久久久久久久 | 2019中文字幕第一页 | 国产精在线 | 日韩免费看 | 日韩成人黄色 | 婷婷六月综合亚洲 | 久久蜜臀av | 欧美一级专区免费大片 | 在线观看深夜福利 | 成年人免费观看在线视频 | 天天干,天天操 | 六月丁香六月婷婷 | 亚洲黄色免费观看 | 欧美日韩精品综合 | 中文字幕在线观看视频一区二区三区 | 久久免费看a级毛毛片 | 99九九热只有国产精品 | 亚洲最新精品 | 天天干天天操人体 | 久久国产精品区 | 在线免费国产 | 天天干天天操天天射 | 免费看v片| 91成人小视频 | 成人在线视频免费观看 | 欧美日韩一级视频 | 久艹视频免费观看 | 少妇18xxxx性xxxx片 | 激情小说久久 | 日韩免费视频在线观看 | 国产精品久久久久一区二区国产 | 国产一级二级三级视频 | 蜜桃av综合网 | 人人爽夜夜爽 | 日日夜色| 国产一区国产二区在线观看 | 久久99久久99精品 | 久久香蕉国产精品麻豆粉嫩av | 亚洲高清视频在线观看 | 日韩一级黄色大片 | 中文字幕五区 | 亚洲蜜桃在线 | 成人影音av| 精品亚洲视频在线观看 | 国产在线观看午夜 | 国产视频精品免费 | 国产精品综合久久久久久 | 欧美在线一二 | 久久久久成人精品 | 日韩大片免费在线观看 | 色亚洲激情 | 久久草在线精品 | 欧美日韩精品影院 | 亚洲高清不卡av | 国产福利a | 欧美日韩高清不卡 | 色天天| 激情五月五月婷婷 | 国产成人久久精品 | 久草免费在线视频 | 国产久草在线观看 | 国产久视频 | 亚洲伊人成综合网 | 日韩欧美v | 欧美日韩国产在线 | 精品国内自产拍在线观看视频 | 伊人看片| 免费成人在线观看 | 久久免费公开视频 | 欧美孕交vivoestv另类 | 五月香视频在线观看 | 99久久久久成人国产免费 | 亚洲色图美腿丝袜 | 午夜国产在线 | 99视频99| 久久乱码卡一卡2卡三卡四 五月婷婷久 | 91视频高清| 91高清视频免费 | 西西44人体做爰大胆视频 | 天天躁天天狠天天透 | 黄色大片免费播放 | 一区二区久久久久 | 日韩高清在线一区二区 | 91久久奴性调教 | 在线韩国电影免费观影完整版 | 国产精品黄色 | aaa免费毛片 | 在线草 | 最近中文字幕国语免费av | 黄色大片国产 | 91豆花在线观看 | 又色又爽又黄高潮的免费视频 | 欧美99热 | 很污的网站 | 欧美成人h版| 干天天| 九九av| 久久深夜福利免费观看 | 久久久久久蜜av免费网站 | 色婷婷激婷婷情综天天 | 97精品欧美91久久久久久 | av888av.com| 三级av片 | 久久精品视频在线 | 五月天丁香视频 | 天天做天天爱天天综合网 | av网站在线观看播放 | 亚洲午夜久久久久久久久电影网 | 九九精品在线观看 | 最新中文字幕在线播放 | 欧美最爽乱淫视频播放 | 婷婷六月丁香激情 | 在线观看国产日韩 | 超碰人人国产 | 国产精品高清在线观看 | 婷婷5月色 | 亚洲精品国产自产拍在线观看 | 免费看高清毛片 | 国产精品24小时在线观看 | 国内成人精品2018免费看 | 国产97在线观看 | 国产精品18久久久久久久久久久久 | 91高清在线看 | 国产在线视频在线观看 | 波多野结衣在线观看一区 | 最近免费中文视频 | 欧美日韩国产一区二 | 国产一级免费在线 | 伊人伊成久久人综合网小说 | 国产色婷婷精品综合在线手机播放 | 日本aaa在线观看 | 激情动态 | 91视频链接 | 色噜噜日韩精品一区二区三区视频 | 成人免费视频网址 | 婷婷 中文字幕 | 中文字幕五区 | 成人v| 亚洲电影毛片 | 欧美日韩国产伦理 | 国产精品12 | 日本黄色大片免费看 | www.黄色片网站 | 久久久婷| 国产一区影院 | 中文字幕国产一区二区 | 国产99久久精品一区二区300 | 精品久久网站 | 日韩欧美在线一区 | 中文字幕欧美日韩va免费视频 | 91免费看黄 | 久久精品中文字幕少妇 | 草久在线播放 | 国产麻豆果冻传媒在线观看 | 黄色中文字幕 | 精品国产网址 | 精品亚洲一区二区 | 欧美另类重口 | 国产精彩视频一区二区 | 精品国产一区二区三区不卡 | 亚洲国产wwwccc36天堂 | 日韩在线视频一区二区三区 | 日韩v欧美v日本v亚洲v国产v | av电影在线免费观看 | 99视频免费看 | 亚洲精品视频第一页 | 97超碰在线播放 | 婷婷在线网站 | 超碰在线个人 | 久久精品电影院 | 激情视频一区二区三区 | 99视频精品免费观看, | 美女在线观看网站 | 天天色宗合 | 超碰99人人 | 成人在线观看免费视频 | 中文字幕精品一区久久久久 | 免费瑟瑟网站 |