精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Linux的進程優(yōu)先級NI和PR到底有什么區(qū)別

系統(tǒng) Linux
本文的目的是從Linux系統(tǒng)進程的優(yōu)先級為出發(fā)點,通過了解相關的知識點,希望大家對系統(tǒng)的進程調(diào)度有個整體的了解。其中,也對CFS調(diào)度算法進行了比較深入的分析。雖然top命令中的PR值和ps -l命令中的PRI值的含義是一樣的,但是在優(yōu)先級相同的情況下,它們顯示的值確不一樣。

[[166689]]

作者簡介

 

[[166690]]

鄒立巍,Linux系統(tǒng)技術專家。目前在騰訊SNG社交網(wǎng)絡運營部 計算資源平臺組,負責內(nèi)部私有云平臺的建設和架構規(guī)劃設計。曾任新浪動態(tài)應用平臺系統(tǒng)架構師,負責微博、新浪博客等重點業(yè)務的內(nèi)部私有云平臺架構設計和運維管理工作。

為什么要有進程優(yōu)先級?

這似乎不用過多的解釋,畢竟自從多任務操作系統(tǒng)誕生以來,進程執(zhí)行占用cpu的能力就是一個必須要可以人為控制的事情。因為有的進程相對重要,而有的進程則沒那么重要。

進程優(yōu)先級起作用的方式從發(fā)明以來基本沒有什么變化,無論是只有一個cpu的時代,還是多核cpu時代,都是通過控制進程占用cpu時間的長短來實現(xiàn)的。

就是說在同一個調(diào)度周期中,優(yōu)先級高的進程占用的時間長些,而優(yōu)先級低的進程占用的短些。

請大家真的不要混淆了系統(tǒng)中的這兩個概念:nice(NI)和priority(PR),他們有著千絲萬縷的關系,但對于當前的Linux系統(tǒng)來說,它們并不是同一個概念。

我們看這個命令:

 

大家是否真的明白其中PRI列NI列的具體含義有什么區(qū)別?

同樣的,如果是top命令:

 

大家是否搞清楚了這其中PR值NI值的差別?如果沒有,那么我們可以首先搞清楚什么是nice值。

什么是NICE值?

NICE值應該是熟悉Linux/UNIX的人很了解的概念了,它是反應一個進程“優(yōu)先級”狀態(tài)的值,其取值范圍是-20至19,一共40個級別。

這個值越小,表示進程”優(yōu)先級”越高,而值越大“優(yōu)先級”越低。

例如,我們可以通過NICE命令來對一個將要執(zhí)行的bash命令進行NICE值設置,方法是:

  1. [root@zorrozou-pc0 zorro]# nice -n 10 bash 

這樣我就又打開了一個bash,并且其nice值設置為10,而默認情況下,進程的優(yōu)先級應該是從父進程繼承來的,這個值一般是0。

我們可以通過nice命令直接查看到當前shell的nice值:

  1. [root@zorrozou-pc0 zorro]# nice 
  2. 10 

對比一下正常情況:

  1. [root@zorrozou-pc0 zorro]# exit 

退出當前nice值為10的bash,打開一個正常的bash,我們查看下其 Nice值:

  1. [root@zorrozou-pc0 zorro]# bash 
  2. [root@zorrozou-pc0 zorro]# nice 

另外,使用renice命令可以對一個正在運行的進程進行nice值的調(diào)整,我們也可以使用比如top、ps等命令查看進程的nice值,具體方法我就不多說了,大家可以參閱相關man page。

需要大家注意的是,我在這里都在使用nice值這一稱謂,而非優(yōu)先級(priority)這個說法。

nice值雖然不是priority,但是它確實可以影響進程的優(yōu)先級。

在英語中,如果我們形容一個人nice,那一般說明這個人的人緣比較好。什么樣的人人緣好?往往是謙讓、有禮貌的人。

比如,你跟一個nice的人一起去吃午飯,點了兩個一樣的飯,先上了一份后,nice的那位一般都會說:“你先吃你先吃!”,這就是人緣好,這人nice!但是如果另一份上的很晚,那么這位nice的人就要餓著了。

這說明什么?

越nice的人搶占資源的能力就越差,而越不nice的人搶占能力就越強。這就是nice值大小的含義,nice值越低,說明進程越不nice,搶占cpu的能力就越強,優(yōu)先級就越高(作者這個解釋太形象了,小編忍不住要手動點贊!!)。

在原來使用O1調(diào)度的Linux上,我們還會把nice值叫做靜態(tài)優(yōu)先級,這也基本符合nice值的特點,就是當nice值設定好了之后,除非我們用renice去改它,否則它是不變的。

而priority的值在之前內(nèi)核的O1調(diào)度器上表現(xiàn)是會變化的,所以也叫做動態(tài)優(yōu)先級

什么是優(yōu)先級和實時進程?

我們再來看看什么是priority值,就是ps命令中看到的PRI值或者top命令中看到的PR值。

本文為了區(qū)分這些概念,以后:

  • 統(tǒng)一用nice值表示NI值,或者叫做靜態(tài)優(yōu)先級,也就是用nice和renice命令來調(diào)整的優(yōu)先級;
  • 而實用priority值表示PRI和PR值,或者叫動態(tài)優(yōu)先級。
  • 我們也統(tǒng)一將“優(yōu)先級”這個詞的概念規(guī)定為表示priority值的意思。

在內(nèi)核中,進程優(yōu)先級的取值范圍是通過一個宏定義的,這個宏的名稱是MAX_PRIO,它的值為140。

而這個值又是由另外兩個值相加組成的,一個是代表nice值取值范圍的NICE_WIDTH宏,另一個是代表實時進程(realtime)優(yōu)先級范圍的MAX_RT_PRIO宏。

說白了就是,Linux實際上實現(xiàn)了140個優(yōu)先級范圍,取值范圍是從0-139,這個值越小,優(yōu)先級越高。nice值的-20到19,映射到實際的優(yōu)先級范圍是100-139。

新產(chǎn)生進程的默認優(yōu)先級被定義為:

  1. #define DEFAULT_PRIO (MAX_RT_PRIO + NICE_WIDTH / 2) 

實際上對應的就是nice值的0。

正常情況下,任何一個進程的優(yōu)先級都是這個值,即使我們通過nice和renice命令調(diào)整了進程的優(yōu)先級,它的取值范圍也不會超出100-139的范圍,除非這個進程是一個實時進程,那么它的優(yōu)先級取值才會變成0-99這個范圍中的一個。

這里隱含了一個信息,就是說當前的Linux是一種已經(jīng)支持實時進程的操作系統(tǒng)。

什么是實時操作系統(tǒng)?

我們就不再這里詳細解釋其含義以及在工業(yè)領域的應用了,有興趣的可以參考一下實時操作系統(tǒng)的維基百科。

簡單來說,實時操作系統(tǒng)需要保證相關的實時進程在較短的時間內(nèi)響應,不會有較長的延時,并且要求最小的中斷延時和進程切換延時。

對于這樣的需求,一般的進程調(diào)度算法,無論是O1還是CFS都是無法滿足的,所以內(nèi)核在設計的時候,將實時進程單獨映射了100個優(yōu)先級,這些優(yōu)先級都要高于正常進程的優(yōu)先級(nice值),而實時進程的調(diào)度算法也不同,它們采用更簡單的調(diào)度算法來減少調(diào)度開銷。

總的來說,Linux系統(tǒng)中運行的進程可以分成兩類:

  • 實時進程
  • 非實時進程

它們的主要區(qū)別就是通過優(yōu)先級來區(qū)分的。

所有優(yōu)先級值在0-99范圍內(nèi)的,都是實時進程,所以這個優(yōu)先級范圍也可以叫做實時進程優(yōu)先級,而100-139范圍內(nèi)的是非實時進程。

在系統(tǒng)中可以使用chrt命令來查看、設置一個進程的實時優(yōu)先級狀態(tài)。我們可以先來看一下chrt命令的使用:

 

我們先來關注顯示出的Policy options部分,會發(fā)現(xiàn)系統(tǒng)給各種進程提供了5種調(diào)度策略。

但是這里并沒有說明的是,這五種調(diào)度策略是分別給兩種進程用的,對于實時進程可以用的調(diào)度策略是:SCHED_FIFO、SCHED_RR,而對于非實時進程則是:SCHED_OTHER、SCHED_OTHER、SCHED_IDLE。

系統(tǒng)的整體優(yōu)先級策略是:

  • 如果系統(tǒng)中存在需要執(zhí)行的實時進程,則優(yōu)先執(zhí)行實時進程。
  • 直到實時進程退出或者主動讓出CPU時,才會調(diào)度執(zhí)行非實時進程。

實時進程可以指定的優(yōu)先級范圍為1-99,將一個要執(zhí)行的程序以實時方式執(zhí)行的方法為:

  1. [root@zorrozou-pc0 zorro]# chrt 10 bash 
  2. [root@zorrozou-pc0 zorro]# chrt -p $$ 
  3. pid 14840's current scheduling policy: SCHED_RR 
  4. pid 14840's current scheduling priority: 10 

可以看到,新打開的bash已經(jīng)是實時進程,默認調(diào)度策略為SCHED_RR,優(yōu)先級為10。如果想修改調(diào)度策略,就加個參數(shù):

  1. [root@zorrozou-pc0 zorro]# chrt -f 10 bash 
  2. [root@zorrozou-pc0 zorro]# chrt -p $$ 
  3. pid 14843's current scheduling policy: SCHED_FIFO 
  4. pid 14843's current scheduling priority: 10 

剛才說過,SCHED_RR和SCHED_FIFO都是實時調(diào)度策略,只能給實時進程設置。對于所有實時進程來說,優(yōu)先級高的(就是priority數(shù)字小的)進程一定會保證先于優(yōu)先級低的進程執(zhí)行。

SCHED_RR和SCHED_FIFO的調(diào)度策略只有當兩個實時進程的優(yōu)先級一樣的時候才會發(fā)生作用,其區(qū)別也是顧名思義:

SCHED_FIFO

以先進先出的隊列方式進行調(diào)度,在優(yōu)先級一樣的情況下,誰先執(zhí)行的就先調(diào)度誰,除非它退出或者主動釋放CPU。

SCHED_RR

以時間片輪轉(zhuǎn)的方式對相同優(yōu)先級的多個進程進行處理。時間片長度為100ms。

這就是Linux對于實時進程的優(yōu)先級和相關調(diào)度算法的描述。整體很簡單,也很實用。

而相對更麻煩的是非實時進程,它們才是Linux上進程的主要分類。對于非實時進程優(yōu)先級的處理,我們首先還是要來介紹一下它們相關的調(diào)度算法:O1和CFS。

什么是O1調(diào)度?

O1調(diào)度算法是在Linux 2.6開始引入的,到Linux 2.6.23之后內(nèi)核將調(diào)度算法替換成了CFS。

雖然O1算法已經(jīng)不是當前內(nèi)核所默認使用的調(diào)度算法了,但是由于大量線上的服務器可能使用的Linux版本還是老版本,所以我相信很多服務器還是在使用著O1調(diào)度器,那么費一點口舌簡單交代一下這個調(diào)度器也是有意義的。

這個調(diào)度器的名字之所以叫做O1,主要是因為其算法的時間復雜度是O1。

O1調(diào)度器仍然是根據(jù)經(jīng)典的時間片分配的思路來進行整體設計的。

簡單來說,時間片的思路就是將CPU的執(zhí)行時間分成一小段一小段的,假如是5ms一段。于是多個進程如果要“同時”執(zhí)行,實際上就是每個進程輪流占用5ms的cpu時間,而從1s的時間尺度上看,這些進程就是在“同時”執(zhí)行的。

當然,對于多核系統(tǒng)來說,就是把每個核心都這樣做就行了。而在這種情況下,如何支持優(yōu)先級呢?

實際上就是將時間片分配成大小不等的若干種,優(yōu)先級高的進程使用大的時間片,優(yōu)先級小的進程使用小的時間片。這樣在一個周期結(jié)速后,優(yōu)先級大的進程就會占用更多的時間而因此得到特殊待遇。

O1算法還有一個比較特殊的地方是,即使是相同的nice值的進程,也會再根據(jù)其CPU的占用情況將其分成兩種類型:CPU消耗型和IO消耗性。

典型的CPU消耗型的進程的特點是,它總是要一直占用CPU進行運算,分給它的時間片總是會被耗盡之后,程序才可能發(fā)生調(diào)度。

比如常見的各種算數(shù)運算程序。

而IO消耗型的特點是,它經(jīng)常時間片沒有耗盡就自己主動先釋放CPU了。

比如vi,emacs這樣的編輯器就是典型的IO消耗型進程。

為什么要這樣區(qū)分呢?因為IO消耗型的進程經(jīng)常是跟人交互的進程,比如shell、編輯器等。

當系統(tǒng)中既有這種進程,又有CPU消耗型進程存在,并且其nice值一樣時,假設給它們分的時間片長度是一樣的,都是500ms,那么人的操作可能會因為CPU消耗型的進程一直占用CPU而變的卡頓。

可以想象,當bash在等待人輸入的時候,是不占CPU的,此時CPU消耗的程序會一直運算,假設每次都分到500ms的時間片,此時人在bash上敲入一個字符的時候,那么bash很可能要等個幾百ms才能給出響應,因為在人敲入字符的時候,別的進程的時間片很可能并沒有耗盡,所以系統(tǒng)不會調(diào)度bash程度進行處理。

為了提高IO消耗型進程的響應速度,系統(tǒng)將區(qū)分這兩類進程,并動態(tài)調(diào)整CPU消耗的進程將其優(yōu)先級降低,而IO消耗型的將其優(yōu)先級變高,以降低CPU消耗進程的時間片的實際長度。

已知nice值的范圍是-20-19,其對應priority值的范圍是100-139,對于一個默認nice值為0的進程來說,其初始priority值應該是120,隨著其不斷執(zhí)行,內(nèi)核會觀察進程的CPU消耗狀態(tài),并動態(tài)調(diào)整priority值,可調(diào)整的范圍是+-5。

就是說,***優(yōu)先級可以被自動調(diào)整到115,***到125。這也是為什么nice值叫做靜態(tài)優(yōu)先級,而priority值叫做動態(tài)優(yōu)先級的原因。不過這個動態(tài)調(diào)整的功能在調(diào)度器換成CFS之后就不需要了,因為CFS換了另外一種CPU時間分配方式,這個我們后面再說。

什么是CFS完全公平調(diào)度?

O1已經(jīng)是上一代調(diào)度器了,由于其對多核、多CPU系統(tǒng)的支持性能并不好,并且內(nèi)核功能上要加入cgroup等因素,Linux在2.6.23之后開始啟用CFS作為對一般優(yōu)先級(SCHED_OTHER)進程調(diào)度方法。

在這個重新設計的調(diào)度器中,時間片,動態(tài)、靜態(tài)優(yōu)先級以及IO消耗,CPU消耗的概念都不再重要。CFS采用了一種全新的方式,對上述功能進行了比較完善的支持。

其設計的基本思路是:我們想要實現(xiàn)一個對所有進程完全公平的調(diào)度器。

又是那個老問題:如何做到完全公平?答案跟上一篇IO調(diào)度中CFQ的思路類似:

如果當前有n個進程需要調(diào)度執(zhí)行,那么調(diào)度器應該在一個比較小的時間范圍內(nèi),把這n個進程全都調(diào)度執(zhí)行一遍,并且它們平分cpu時間,這樣就可以做到所有進程的公平調(diào)度。

那么這個比較小的時間就是任意一個R狀態(tài)進程被調(diào)度的***延時時間,即:任意一個R狀態(tài)進程,都一定會在這個時間范圍內(nèi)被調(diào)度響應。這個時間也可以叫做調(diào)度周期,其英文名字叫做:sched_latency_ns。

CFS的優(yōu)先級

當然,CFS中還需要支持優(yōu)先級。在新的體系中,優(yōu)先級是以時間消耗(vruntime增長)的快慢來決定的。

就是說,對于CFS來說,衡量的時間累積的絕對值都是一樣紀錄在vruntime中的,但是不同優(yōu)先級的進程時間增長的比率是不同的,高優(yōu)先級進程時間增長的慢,低優(yōu)先級時間增長的快。

比如,優(yōu)先級為19的進程,實際占用cpu為1秒,那么在vruntime中就記錄1s。但是如果是-20優(yōu)先級的進程,那么它很可能實際占CPU用10s,在vruntime中才會紀錄1s。

CFS真實實現(xiàn)的不同nice值的cpu消耗時間比例在內(nèi)核中是按照“每差一級cpu占用時間差10%左右”這個原則來設定的。

這里的大概意思是說,如果有兩個nice值為0的進程同時占用cpu,那么它們應該每人占50%的cpu,如果將其中一個進程的nice值調(diào)整為1的話,那么此時應保證優(yōu)先級高的進程比低的多占用10%的cpu,就是nice值為0的占55%,nice值為1的占45%。那么它們占用cpu時間的比例為55:45。

這個值的比例約為1.25。就是說,相鄰的兩個nice值之間的cpu占用時間比例的差別應該大約為1.25。根據(jù)這個原則,內(nèi)核對40個nice值做了時間計算比例的對應關系,它在內(nèi)核中以一個數(shù)組存在:

多CPU的CFS調(diào)度是怎樣的?

在上面的敘述中,我們可以認為系統(tǒng)中只有一個CPU,那么相關的調(diào)度隊列只有一個。

實際情況是系統(tǒng)是有多核甚至多個CPU的,CFS從一開始就考慮了這種情況,它對每個CPU核心都維護一個調(diào)度隊列,這樣每個CPU都對自己的隊列進程調(diào)度即可。

這也是CFS比O1調(diào)度算法更高效的根本原因:每個CPU一個隊列,就可以避免對全局隊列使用大內(nèi)核鎖,從而提高了并行效率。

當然,這樣最直接的影響就是CPU之間的負載可能不均,為了維持CPU之間的負載均衡,CFS要定期對所有CPU進行l(wèi)oad balance操作,于是就有可能發(fā)生進程在不同CPU的調(diào)度隊列上切換的行為。

這種操作的過程也需要對相關的CPU隊列進行鎖操作,從而降低了多個運行隊列帶來的并行性。

不過總的來說,CFS的并行隊列方式還是要比O1的全局隊列方式要高效。尤其是在CPU核心越來越多的情況下,全局鎖的效率下降顯著增加。

***

本文的目的是從Linux系統(tǒng)進程的優(yōu)先級為出發(fā)點,通過了解相關的知識點,希望大家對系統(tǒng)的進程調(diào)度有個整體的了解。

其中,我們也對CFS調(diào)度算法進行了比較深入的分析。在我的經(jīng)驗來看,這些知識對我們在觀察系統(tǒng)的狀態(tài)和相關優(yōu)化的時候都是非常有用的。

比如在使用top命令的時候,NI和PR值到底是什么意思?類似的地方還有ps命令中的NI和PRI值、ulimit命令-e和-r參數(shù)的區(qū)別等等。當然,希望看完本文后,能讓大家對這些命令顯示的了解更加深入。

除此之外,我們還會發(fā)現(xiàn),雖然top命令中的PR值和ps -l命令中的PRI值的含義是一樣的,但是在優(yōu)先級相同的情況下,它們顯示的值確不一樣。

那么,你知道為什么它們顯示會有區(qū)別嗎?這個問題的答案留給大家自己去尋找吧!

責任編輯:武曉燕 來源: 高效運維
相關推薦

2021-09-06 10:45:18

XDRMDR

2024-02-26 07:36:09

lockJava語言

2022-10-27 19:32:20

切片golang數(shù)組

2022-09-14 09:45:15

指標標簽

2012-07-25 15:45:28

ERPSCM

2019-04-23 08:23:51

統(tǒng)計學機器學習人工智能

2023-07-19 21:54:02

小區(qū)扇區(qū)信號

2020-08-19 08:10:11

數(shù)據(jù)分析技術IT

2020-10-29 09:49:32

HarmonyOS鴻蒙安卓應用

2023-03-08 09:48:08

SpringWAR文件JAR文件

2021-04-26 05:36:59

物聯(lián)網(wǎng)

2022-08-26 01:41:42

GPUCPU架構

2022-09-08 18:38:26

LinuxWindowsmacOS

2024-04-12 00:00:00

localhost計算機機制

2022-08-16 07:32:03

RestfulSOAPRPC

2022-02-08 07:02:32

進程線程操作系統(tǒng)

2025-06-13 08:05:00

DevOps運維SRE

2022-11-09 23:27:31

無線Wi-Fi網(wǎng)絡

2018-07-20 14:00:51

LinuxmacOS內(nèi)核

2018-06-26 14:29:44

LinuxUnix不同
點贊
收藏

51CTO技術棧公眾號

国产在线视频第一页| 男女日批视频在线观看| 91麻豆一区二区| 亚洲午夜黄色| 亚洲日本aⅴ片在线观看香蕉| 不卡av免费在线| 亚洲奶水xxxx哺乳期| 久久久久久久精| 91久久大香伊蕉在人线| 国产精品久久久久久久久久久久久久久久久 | 国模精品系列视频| 中国特黄一级片| 久久99精品久久久久久欧洲站 | 成年人在线观看视频免费| 国产黄色小视频在线| 97精品久久久午夜一区二区三区| 国产精品视频一| 自拍偷拍欧美亚洲| 五月激情久久久| 亚洲欧洲一区二区三区在线观看| 性xxxxxxxxx| 欧美大片网站| 在线精品视频一区二区| 成品人视频ww入口| 69xxx在线| 久久精品这里都是精品| 俄罗斯精品一区二区| 亚洲一区在线观| 美女久久一区| 91福利视频网| 日本在线视频中文字幕| 中文精品久久| 日韩视频免费看| 成人精品999| 美女av一区| 精品美女在线观看| 亚洲欧美日韩中文字幕在线观看| 狠狠久久综合| 欧美综合视频在线观看| av免费中文字幕| 超碰资源在线| 亚洲mv在线观看| 欧美高清中文字幕| 性国产高清在线观看| 亚洲欧美综合另类在线卡通| 性欧美精品一区二区三区在线播放| 亚洲日本中文字幕在线| 成人动漫一区二区在线| 草莓视频一区| 蜜臀av在线观看| 丁香婷婷综合色啪| 国产精品一区而去| 丰满少妇被猛烈进入| 成人一区二区三区视频| 国产99视频精品免费视频36| 精品人妻一区二区三区换脸明星| 精品亚洲成a人| 1区1区3区4区产品乱码芒果精品| jizz中国女人| 国产成人精品三级| 国产精品久久九九| 亚洲av片在线观看| 国产色产综合色产在线视频| 亚洲草草视频| 激情影院在线观看| 亚洲精品videosex极品| 性高湖久久久久久久久aaaaa| 精品一性一色一乱农村| 婷婷综合五月天| 日日摸日日碰夜夜爽av| 电影亚洲一区| 在线电影一区二区三区| 9191在线视频| 日韩精品社区| 在线观看国产精品91| 小泽玛利亚一区二区免费| 欧美ab在线视频| 777精品视频| 免费黄色小视频在线观看| 日本不卡123| 3d精品h动漫啪啪一区二区| 国模无码一区二区三区| 久久婷婷久久一区二区三区| 亚洲日本无吗高清不卡| 羞羞视频在线免费国产| 精品国产精品自拍| mm131国产精品| 97se亚洲国产一区二区三区| 亚洲欧美在线一区二区| 极品美妇后花庭翘臀娇吟小说| 国产精品www994| 日韩av成人在线观看| 91国产免费视频| 懂色av一区二区三区免费看| 欧美日韩国产综合在线| √天堂8在线网| 一本色道久久加勒比精品| 九九热精品国产| 美女一区2区| 精品国产一区二区三区在线观看| 久久精品免费av| 蜜臀av在线播放一区二区三区| 91嫩草免费看| 91露出在线| 偷拍与自拍一区| 日韩肉感妇bbwbbwbbw| 国产一级成人av| 精品国内亚洲在观看18黄| 青青操免费在线视频| 国产最新精品精品你懂的| 女人一区二区三区| 97caopron在线视频| 欧洲亚洲精品在线| 亚洲激情 欧美| 羞羞答答成人影院www| 热久久这里只有精品| 亚洲精品97久久中文字幕无码| 中文字幕欧美激情一区| 国产成人无码精品久久久性色| 国产日韩在线观看视频| 国产亚洲欧美另类中文| 在线观看亚洲欧美| 成人性生交大合| 51xx午夜影福利| 亚洲国产伊人| 在线成人中文字幕| 亚洲av无码不卡| 久久夜色精品国产噜噜av | 久久都是精品| 韩国成人一区| 福利成人导航| 日韩欧美在线不卡| 日本在线一级片| 久久国产精品色婷婷| 色婷婷精品国产一区二区三区| 蜜桃av在线播放| 亚洲成人黄色在线| 精品无码免费视频| 成人少妇影院yyyy| 日韩国产小视频| 中文久久电影小说| 九九热精品在线| www.日韩高清| 洋洋av久久久久久久一区| 992tv人人草| 亚洲精品国产偷自在线观看| 91影视免费在线观看| 老司机精品影院| 91精品免费在线| 东方av正在进入| 国产经典欧美精品| av在线免费观看国产| 亚洲综合色婷婷在线观看| 欧美成人中文字幕| 亚洲精品字幕在线观看| 一区二区三区精品| 精品人妻在线视频| 亚洲每日更新| 欧美精品一区二区三区久久| 欧美va在线| 日韩在线不卡视频| 亚洲xxx在线| 五月天激情小说综合| 自拍视频一区二区| 日韩av中文在线观看| 亚洲国产高清国产精品| 亚洲日本中文| 久久久久国产一区二区三区| 日韩一区二区三区不卡| 色综合久久99| 三级全黄做爰视频| 成人av网站在线| 免费av网址在线| 色综合咪咪久久网| wwwxx欧美| 涩涩视频在线免费看| 伊人久久大香线蕉av一区二区| 中文 欧美 日韩| 一区二区免费在线| 天堂久久精品忘忧草| 激情丁香综合五月| 浮妇高潮喷白浆视频| 成人情趣视频网站| 91视频最新| 性欧美超级视频| 欧美麻豆久久久久久中文| 日韩在线观看视频一区| 欧美性xxxxxx少妇| 麻豆国产尤物av尤物在线观看| 91麻豆成人久久精品二区三区| 最近中文字幕一区二区| 好看的亚洲午夜视频在线| 日韩成人在线资源| 大香伊人久久精品一区二区| 国产精品久久久久77777| 亚洲奶水xxxx哺乳期| 亚洲天堂色网站| 亚洲第一色视频| 欧美少妇xxx| 日操夜操天天操| 亚洲视频香蕉人妖| 亚洲激情视频小说| 国产成人在线视频播放| 亚洲欧美激情网| 国产精品美女久久久浪潮软件| 亚洲成年人专区| 精品国产a一区二区三区v免费| 成人激情直播| 少妇高潮一区二区三区99| 2019亚洲日韩新视频| 蜜臀av.com| 女同视频在线观看| 上原亚衣av一区二区三区| 天堂中文在线官网| 欧美一区二区三区喷汁尤物| 国产又粗又猛又黄视频| 亚洲第一综合色| 国产成人av免费在线观看| 久久精品视频免费观看| 大尺度做爰床戏呻吟舒畅| 狠狠色综合色综合网络| 欧美黄色一级片视频| 亚洲精品综合| 久久精品xxx| 亚洲午夜精品一区二区国产| 午夜精品一区二区在线观看| 天海翼精品一区二区三区| 动漫一区二区在线| 日本在线成人| 91免费电影网站| 国产一区精品福利| 国产精品久久二区| 你懂得影院夜精品a| 日韩av在线发布| 久久久婷婷一区二区三区不卡| 911亚洲精品| 97超级碰碰| 美国十次综合久久| 亚洲资源在线看| 秋霞一区二区| 亚洲综合色激情五月| 成人网av.com/| 91久久久精品| 动漫一区二区三区| 亚洲一区二区三区视频播放| 99国内精品久久久久| 91九色视频导航| 欧美日韩黄网站| 成人羞羞视频免费| 红杏视频成人| 久久精品午夜一区二区福利| 亚洲精品aaaaa| 欧美二区在线看| 国产探花一区| 亚洲在线播放电影| 国产精品久久久久久久久久10秀 | 99久热re在线精品996热视频| 精品一区91| 国产a一区二区| 麻豆一区二区麻豆免费观看| 免费av在线一区二区| 九九久久婷婷| 一区二区三区av| 欧美日韩1区| 自慰无码一区二区三区| 欧美亚洲网站| 免费一区二区三区在线观看 | 日本韩国精品在线| 伊人亚洲综合网| 日韩一级大片在线| 欧美熟女一区二区| 亚洲色图av在线| 精品国产丝袜高跟鞋| 欧美激情精品久久久久久大尺度| 欧美激情网站| 国产精品一二三在线| 欧美视频精品全部免费观看| 国产一区二区黄色| 日韩成人a**站| 天堂а√在线中文在线| 亚洲一区区二区| 亚欧美在线观看| 成人av网址在线观看| 少妇人妻好深好紧精品无码| 亚洲激情网站免费观看| 97人人澡人人爽人人模亚洲| 欧美亚洲图片小说| 视频污在线观看| 色婷婷**av毛片一区| 国语对白在线刺激| 国产精品mp4| 亚洲国产一区二区三区网站| 欧美二区三区| 欧美日韩91| 伊人影院综合在线| 99国产精品久久久久久久久久久| 99精品全国免费观看| 亚洲成人黄色影院| 国产乱淫a∨片免费观看| 国产视频一区在线| 在线观看操人| 国产精品电影久久久久电影网| 日韩成人精品| 亚洲国产一区二区精品视频 | 日本在线精品视频| 亚洲一区二区三区日本久久九 | 欧美日韩精品| 男人搞女人网站| www.亚洲激情.com| 伊人在线视频观看| 欧美少妇bbb| 你懂的在线观看| 久久久久久久久网站| 91精品麻豆| 亚洲国产婷婷香蕉久久久久久99| 国产一级久久| 美女露出粉嫩尿囗让男人桶| 国产精品不卡在线观看| 成人av网站在线播放| 亚洲国产精品va在线| 日本大片在线播放| 成人免费黄色网| 久久国产亚洲精品| 日本一极黄色片| 99精品久久久久久| 日本一级黄色大片| 日韩免费电影网站| 怡红院在线播放| 成人免费福利视频| 99热精品久久| 老司机午夜性大片| 亚洲国产精品嫩草影院久久av| 日韩成人av一区| 2024最新电影在线免费观看| 国产日韩精品在线| 久久精品国产99久久| 999在线免费视频| 国产欧美日韩一区二区三区在线观看| 午夜毛片在线观看| 日韩电影在线观看中文字幕 | 欧美日韩在线看| 视频国产在线观看| 91wwwcom在线观看| 九九综合久久| 韩国一区二区av| 国产日产精品一区| 最近日韩免费视频| 在线视频免费一区二区| 成人看片网页| 亚洲视频在线二区| 黑人精品欧美一区二区蜜桃| 成人信息集中地| 欧美一级理论性理论a| 99在线播放| 精品久久精品久久| 翔田千里一区二区| 亚洲综合自拍网| 日韩欧美在线中文字幕| 国产视频三级在线观看播放| 国产成人欧美在线观看| 日本久久精品| 992tv人人草| 午夜影视日本亚洲欧洲精品| 免费一级毛片在线观看| 国产精品成av人在线视午夜片| 日韩啪啪电影网| 北条麻妃亚洲一区| 亚洲成人777| www.国产精品.com| 国产美女91呻吟求| 国内精品久久久久久久影视麻豆 | 四季av一区二区| 亚洲色图.com| 天天干天天插天天操| 国产精品第七影院| 中文字幕一区二区三区乱码图片 | 亚洲专区一二三| 色猫av在线| 91久久精品国产91性色| 亚洲国产高清一区二区三区| 中国毛片在线观看| 日韩一区二区在线看| 一区二区三区四区日本视频| 一区二区精品在线| 成人av电影免费在线播放| 亚洲精品毛片一区二区三区| 久久福利网址导航| 九九热爱视频精品视频| 日韩高清在线一区二区| 狠狠躁天天躁日日躁欧美| 日本高清在线观看wwwww色| 狠狠久久综合婷婷不卡| 老司机午夜精品| 97人人澡人人爽人人模亚洲| 日韩中文字幕在线视频| 欧美调教在线| 91国内在线播放| 欧美日韩在线第一页| 欧美xxxx性xxxxx高清| 日本10禁啪啪无遮挡免费一区二区 |