99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

95分操作系統(tǒng)實(shí)驗(yàn)報(bào)告拆解:從Linux信號(hào)機(jī)制到缺頁統(tǒng)計(jì)

95分操作系統(tǒng)實(shí)驗(yàn)報(bào)告拆解:從Linux信號(hào)機(jī)制到缺頁統(tǒng)計(jì) 簡介西南交通大學(xué)操作系統(tǒng)實(shí)驗(yàn)報(bào)告HXP評(píng)分A/95分是面向軟件工程專業(yè)學(xué)生、聚焦Linux環(huán)境與操作系統(tǒng)核心機(jī)制的課程實(shí)踐資料適合需要參考完整實(shí)驗(yàn)流程或撰寫同類報(bào)告的高校學(xué)習(xí)者。報(bào)告以兩個(gè)主線實(shí)驗(yàn)展開實(shí)驗(yàn)一從Linux界面、目錄結(jié)構(gòu)入手通過終端掌握cd、ls、ps、chmod等Shell命令并利用重定向與管道完成命令組合隨后用vi編輯C源程序經(jīng)gcc編譯、gdb調(diào)試熟悉Linux下的程序開發(fā)與排錯(cuò)方法。實(shí)驗(yàn)二重點(diǎn)剖析/proc虛擬文件系統(tǒng)通過編程讀取cpuinfo、version、stat、uptime、meminfo、loadavg、interrupts等內(nèi)核文件理解系統(tǒng)狀態(tài)與內(nèi)存管理。后續(xù)實(shí)驗(yàn)還涵蓋軟中斷通信、進(jìn)程調(diào)度和線程同步完整展示了從基礎(chǔ)操作到內(nèi)核觀測的實(shí)踐路徑。壓縮包僅含1個(gè)docx文檔共1.48MB報(bào)告帶清晰目錄結(jié)構(gòu)便于直接查閱或打印。該資源已有401人學(xué)習(xí)對(duì)準(zhǔn)備Linux實(shí)驗(yàn)、復(fù)習(xí)進(jìn)程調(diào)度或需要高分參考模板的同學(xué)具有較高借鑒價(jià)值。1. 一份95分的操作系統(tǒng)實(shí)驗(yàn)報(bào)告比代碼更重要的是過程記錄做操作系統(tǒng)實(shí)驗(yàn)最怕的不是寫不出代碼而是寫得出來卻說不清楚設(shè)計(jì)思路和實(shí)驗(yàn)現(xiàn)象。這份在某高校胡老師班拿到95分的實(shí)驗(yàn)報(bào)告覆蓋了Linux環(huán)境與C調(diào)試、軟中斷通信、進(jìn)程調(diào)度、線程同步、內(nèi)存管理、系統(tǒng)調(diào)用、缺頁統(tǒng)計(jì)七個(gè)實(shí)驗(yàn)正好是大多數(shù)高校操作系統(tǒng)課的核心實(shí)驗(yàn)矩陣。我拆完這份資源后最直接的感受是它值錢的地方不在那些現(xiàn)成的C代碼而在每份實(shí)驗(yàn)里“怎么描述現(xiàn)象、怎么解釋結(jié)果、怎么踩坑再爬出來”的記錄方式。如果你正在補(bǔ)實(shí)驗(yàn)報(bào)告、準(zhǔn)備課程設(shè)計(jì)素材或者想看看95分的學(xué)生是怎么組織實(shí)驗(yàn)文本的這份報(bào)告可以作為一份完整的參照模板。代碼可以重寫但那種對(duì)實(shí)驗(yàn)現(xiàn)象的觀察深度直接抄是抄不來的。2. 報(bào)告的骨架拆解七個(gè)實(shí)驗(yàn)覆蓋了Linux操作系統(tǒng)的哪些核心機(jī)制2.1 從目錄結(jié)構(gòu)看課程設(shè)計(jì)的完整鏈路這份報(bào)告從實(shí)驗(yàn)一到實(shí)驗(yàn)七鏈路設(shè)計(jì)有明顯遞進(jìn)關(guān)系。實(shí)驗(yàn)一和觀察Linux是基礎(chǔ)層解決的是“會(huì)不會(huì)用Linux”的問題——目錄結(jié)構(gòu)、基本Shell命令、gcc編譯、vim編輯、/proc文件系統(tǒng)的基本讀取實(shí)驗(yàn)二和三進(jìn)入進(jìn)程層用軟中斷通信和進(jìn)程調(diào)度理解“進(jìn)程是怎么被創(chuàng)建、通信和切換的”實(shí)驗(yàn)四到六延伸到線程同步、內(nèi)存管理和系統(tǒng)調(diào)用屬于并發(fā)與資源管理的范疇最后的缺頁次數(shù)統(tǒng)計(jì)實(shí)驗(yàn)則把視角拉到內(nèi)存管理的底層用/proc/stat讀取缺頁信息來驗(yàn)證理論。這個(gè)順序和你自己學(xué)校的實(shí)驗(yàn)安排大概率能對(duì)上。如果你們學(xué)校的實(shí)驗(yàn)順序不同也不用擔(dān)心報(bào)告的每個(gè)實(shí)驗(yàn)是相對(duì)獨(dú)立的你可以直接挑對(duì)應(yīng)的那章來看不必從頭按順序讀。我拆這份報(bào)告時(shí)是按“能直接用”的標(biāo)準(zhǔn)來篩選的——也就是說每個(gè)實(shí)驗(yàn)的代碼、編譯命令、實(shí)驗(yàn)結(jié)果描述方式都要能單獨(dú)抽出來復(fù)用到你自己的報(bào)告里。2.2 評(píng)分高的關(guān)鍵在哪個(gè)人聲明與問題記錄報(bào)告的序言后面緊跟一段“個(gè)人聲明”很簡短就說了一件事報(bào)告里用到的命令統(tǒng)一用粗體加下劃線標(biāo)注方便閱覽。這個(gè)細(xì)節(jié)看起來不起眼其實(shí)是給評(píng)閱老師的第一印象分。95分的報(bào)告通常不是每一個(gè)實(shí)驗(yàn)都完美但整份文檔的格式一致性、可讀性、以及問題記錄的誠實(shí)度拉高了整體評(píng)價(jià)。報(bào)告中每一章結(jié)尾幾乎都有“實(shí)驗(yàn)總結(jié)”部分里面寫的不只是成果還有具體的失敗記錄。比如實(shí)驗(yàn)一里寫了“配置沒有問題但網(wǎng)絡(luò)連接一直失敗”然后記錄了怎么查找博客、修復(fù)網(wǎng)絡(luò)順帶學(xué)習(xí)了三種網(wǎng)絡(luò)模式的區(qū)別。這種寫法比單純寫“我學(xué)會(huì)了Linux目錄結(jié)構(gòu)”有價(jià)值得多因?yàn)槔蠋熌軓奈淖掷锟吹秸鎸?shí)的動(dòng)手過程。你在寫自己的報(bào)告時(shí)建議每章末尾都留出一段“問題與解決”哪怕只寫兩條也比空泛的“通過本次實(shí)驗(yàn)我掌握了”要有說服力。2.3 環(huán)境選型用什么Linux跑這套實(shí)驗(yàn)最省事報(bào)告全程在虛擬機(jī)里完成涉及的環(huán)境工具包括vim、gcc、gdb、以及遠(yuǎn)程傳文件的xftp。從報(bào)告里觀察/proc/version的結(jié)果來看實(shí)驗(yàn)環(huán)境是Red Hat系列的Linux發(fā)行版內(nèi)核版本3.10.0。這個(gè)內(nèi)核版本對(duì)應(yīng)的系統(tǒng)通常自帶gcc 4.8.5對(duì)于實(shí)驗(yàn)中的fork、signal、pthread這些接口來說完全夠用。如果你現(xiàn)在要從零復(fù)現(xiàn)這套實(shí)驗(yàn)我建議直接用Ubuntu 20.04以上的發(fā)行版理由有兩點(diǎn)一是gcc版本更新編譯時(shí)的警告信息更友好二是apt安裝build-essential一條命令就能補(bǔ)齊工具鏈。當(dāng)然要是你們學(xué)校指定了某個(gè)實(shí)驗(yàn)環(huán)境以學(xué)校要求為準(zhǔn)。虛擬機(jī)的網(wǎng)絡(luò)模式報(bào)告里也提到了三種——橋接、NAT、主機(jī)模式并做了個(gè)人理解式的總結(jié)橋接容易IP沖突、NAT既能訪問外網(wǎng)又不暴露虛擬機(jī)、主機(jī)模式完全隔離。對(duì)于實(shí)驗(yàn)場景NAT是最省心的選擇。提示報(bào)告中有一段關(guān)于jiffies的理解——Linux內(nèi)核用全局變量jiffies記錄節(jié)拍時(shí)間開機(jī)時(shí)讀取RTC作為基準(zhǔn)這個(gè)思路和Windows的滴答計(jì)數(shù)是同一類機(jī)制。寫報(bào)告時(shí)能把這類課外延伸寫進(jìn)去是加分的。3. 軟中斷通信實(shí)驗(yàn)把信號(hào)機(jī)制落到兩份可復(fù)現(xiàn)的C代碼3.1 實(shí)驗(yàn)要求與信號(hào)機(jī)制的關(guān)系軟中斷通信實(shí)驗(yàn)是這份報(bào)告里代碼價(jià)值最高的部分。實(shí)驗(yàn)要求分兩種場景場景一是父進(jìn)程創(chuàng)建兩個(gè)子進(jìn)程然后通過Ctrl\發(fā)送SIGQUIT給父進(jìn)程由父進(jìn)程再向兩個(gè)子進(jìn)程發(fā)送自定義信號(hào)終止它們場景二是父進(jìn)程創(chuàng)建子進(jìn)程、子進(jìn)程再創(chuàng)建孫進(jìn)程信號(hào)到達(dá)后按孫進(jìn)程、子進(jìn)程、父進(jìn)程的順序依次終止。要理解這個(gè)實(shí)驗(yàn)先要分清兩個(gè)概念SIGQUIT和信號(hào)16/17。SIGQUIT是終端組合鍵Ctrl\產(chǎn)生的信號(hào)默認(rèn)動(dòng)作是終止進(jìn)程并生成核心轉(zhuǎn)儲(chǔ)而信號(hào)16和17在Linux下沒有標(biāo)準(zhǔn)定義屬于用戶自定義信號(hào)實(shí)驗(yàn)里用它來模擬父子進(jìn)程間的“軟中斷”通信。流程就是父進(jìn)程收到SIGQUIT后調(diào)用kill函數(shù)向子進(jìn)程發(fā)送16/17信號(hào)子進(jìn)程收到后設(shè)置wait_mark為0退出等待循環(huán)。3.2 第一個(gè)場景父進(jìn)程創(chuàng)建兩個(gè)子進(jìn)程的代碼這是報(bào)告里實(shí)驗(yàn)二的第一個(gè)核心代碼我重新組織了注釋和說明讓它更便于你直接編譯運(yùn)行#include stdio.h #include stdlib.h #include signal.h #include unistd.h void waiting(); void stop(); int wait_mark; int main() { int p1, p2; while ((p1 fork()) -1) ; // 創(chuàng)建子進(jìn)程p1失敗則忙等重試 sleep(1); if (p1 0) // 父進(jìn)程分支 { printf(parent process is %d \n, getpid()); while ((p2 fork()) -1) ; // 創(chuàng)建子進(jìn)程p2 if (p2 0) // 仍然是父進(jìn)程分支 { wait_mark 1; signal(SIGQUIT, stop); // 注冊(cè)SIGQUIT處理函數(shù) waiting(); // 等待用戶按下Ctrl\ kill(p1, 16); // 給p1發(fā)送信號(hào)16 kill(p2, 17); // 給p2發(fā)送信號(hào)17 wait(0); // 回收子進(jìn)程 wait(0); printf(\n parent process %d is killed!\n, getpid()); exit(0); } else { // 子進(jìn)程p2分支 printf(child P2 process %d is created by %d \n, getpid(), getppid()); signal(SIGQUIT, SIG_IGN); // 忽略SIGQUIT wait_mark 1; signal(17, stop); // 注冊(cè)信號(hào)17處理函數(shù) waiting(); lockf(1, 1, 0); printf(\n child P2 process %d is killed by parent %d , getpid(), getppid()); lockf(1, 0, 0); } } else { // 子進(jìn)程p1分支 printf(child P1 process %d is created by %d \n, getpid(), getppid()); signal(SIGQUIT, SIG_IGN); // 忽略SIGQUIT wait_mark 1; signal(16, stop); // 注冊(cè)信號(hào)16處理函數(shù) waiting(); lockf(1, 1, 0); printf(\n child P1 process %d is killed by parent %d , getpid(), getppid()); lockf(1, 0, 0); } return 0; } void waiting() { while (wait_mark ! 0) ; // 忙等直到wait_mark被信號(hào)處理函數(shù)置0 } void stop() { wait_mark 0; }這份代碼的核心邏輯不復(fù)雜但有三個(gè)地方需要特別說明。第一是fork后的分支判斷。fork()返回0表示當(dāng)前在子進(jìn)程中返回正整數(shù)表示當(dāng)前在父進(jìn)程中返回-1表示創(chuàng)建失敗。代碼里用了while循環(huán)包裹fork目的是防止進(jìn)程數(shù)達(dá)到系統(tǒng)上限時(shí)創(chuàng)建失敗忙等重試直到成功。sleep(1)放在第一個(gè)fork后面是為了讓子進(jìn)程有時(shí)間完成后續(xù)的signal注冊(cè)避免父進(jìn)程信號(hào)發(fā)過去時(shí)子進(jìn)程還沒準(zhǔn)備好。第二是signal(SIGQUIT, SIG_IGN)這一段。子進(jìn)程必須忽略SIGQUIT否則用戶按下Ctrl\時(shí)父子進(jìn)程會(huì)一起被系統(tǒng)殺死就看不到實(shí)驗(yàn)要求的“父進(jìn)程轉(zhuǎn)發(fā)信號(hào)終止子進(jìn)程”這個(gè)現(xiàn)象了。父進(jìn)程負(fù)責(zé)接收SIGQUIT子進(jìn)程只接收來自父進(jìn)程的信號(hào)16或17這是整個(gè)實(shí)驗(yàn)的信號(hào)流向設(shè)計(jì)。第三是lockf的使用。兩個(gè)子進(jìn)程都可能在waiting()退出后調(diào)用printf輸出結(jié)束信息如果不加鎖兩個(gè)進(jìn)程的輸出會(huì)交錯(cuò)在一起終端顯示亂掉。lockf(1, 1, 0)是對(duì)標(biāo)準(zhǔn)輸出加寫鎖lockf(1, 0, 0)是解鎖保證一個(gè)進(jìn)程的輸出是原子的。3.3 編譯與運(yùn)行驗(yàn)證編譯命令很簡單gcc直接編譯即可gcc -o sig_test1 sig_test1.c ./sig_test1程序啟動(dòng)后會(huì)輸出父進(jìn)程和兩個(gè)子進(jìn)程的PID然后卡住——這是父進(jìn)程在waiting()里忙等。此時(shí)按下Ctrl\終端會(huì)顯示^\隨后看到兩個(gè)子進(jìn)程依次打印被終止的信息最后父進(jìn)程打印退出信息。需要提醒的是代碼里的信號(hào)編號(hào)16和17在部分新版本Linux上可能已經(jīng)被系統(tǒng)占用。signal(16, stop)在某些架構(gòu)上可能注冊(cè)失敗。如果你在運(yùn)行的發(fā)行版上遇到“這個(gè)信號(hào)無法使用”的情況可以把16和17換成SIGUSR1和SIGUSR2這是系統(tǒng)保留給用戶程序使用的標(biāo)準(zhǔn)信號(hào)語義上更規(guī)范。這是我拆這份報(bào)告后建議你做的一個(gè)改進(jìn)點(diǎn)。3.4 第二個(gè)場景三層進(jìn)程父、子、孫的終止順序第二段代碼做的是三進(jìn)程傳遞關(guān)鍵點(diǎn)在于子進(jìn)程既接收父進(jìn)程的信號(hào)又轉(zhuǎn)發(fā)信號(hào)給自己的子進(jìn)程。流程是父進(jìn)程收到SIGQUIT后向子進(jìn)程發(fā)信號(hào)16子進(jìn)程的信號(hào)處理函數(shù)執(zhí)行wait_mark0子進(jìn)程從waiting()退出后再向?qū)O進(jìn)程發(fā)信號(hào)16等孫進(jìn)程結(jié)束后自己再退出。這樣從用戶視角看按下Ctrl\依次看到孫進(jìn)程、子進(jìn)程、父進(jìn)程的結(jié)束信息。這段代碼我再貼一次核心結(jié)構(gòu)因?yàn)楹芏嗳藭?huì)在“誰的wait_mark先被置0”這個(gè)問題上繞暈// 父進(jìn)程分支 wait_mark 1; signal(SIGQUIT, stop); waiting(); kill(p1, 16); // 向子進(jìn)程發(fā)送信號(hào)16 wait(0); // 等待子進(jìn)程退出 // 子進(jìn)程分支 signal(SIGQUIT, SIG_IGN); signal(16, stop); waiting(); kill(p1, 16); // 子進(jìn)程向?qū)O進(jìn)程發(fā)送信號(hào)16 wait(0); // 等待孫進(jìn)程退出 // 孫進(jìn)程分支 signal(SIGQUIT, SIG_IGN); signal(16, stop); waiting(); // 打印結(jié)束信息退出這段代碼里最容易忽略的是每個(gè)進(jìn)程在waiting()退出后的執(zhí)行順序。子進(jìn)程的kill(p1, 16)調(diào)用和孫進(jìn)程的waiting()退出之間存在一個(gè)時(shí)間窗。因?yàn)閷O進(jìn)程在收到信號(hào)16后才會(huì)把wait_mark置0所以子進(jìn)程kill之后必須調(diào)用wait(0)阻塞等待孫進(jìn)程結(jié)束。如果不加wait(0)子進(jìn)程會(huì)立刻繼續(xù)執(zhí)行printf和exit終端上看到的順序就可能變成“子進(jìn)程先結(jié)束、孫進(jìn)程再結(jié)束”和實(shí)驗(yàn)要求不符。4. 進(jìn)程調(diào)度與線程同步從報(bào)告看驗(yàn)證環(huán)節(jié)的設(shè)計(jì)思路4.1 調(diào)度實(shí)驗(yàn)的驗(yàn)證思路FCFS與RR不能只看代碼報(bào)告里的實(shí)驗(yàn)三是進(jìn)程調(diào)度實(shí)驗(yàn)實(shí)驗(yàn)步驟寫得比較簡略大致是創(chuàng)建工程后驗(yàn)證FCFS先來先服務(wù)與RR時(shí)間片輪轉(zhuǎn)兩種策略。很多同學(xué)做這個(gè)實(shí)驗(yàn)時(shí)有一個(gè)誤區(qū)代碼跑出結(jié)果就算做完。但從這份95分報(bào)告的風(fēng)格來看驗(yàn)證環(huán)節(jié)比代碼本身更值得花心思。FCFS和RR的區(qū)別要落到你畫的進(jìn)程執(zhí)行順序圖上。假設(shè)有三個(gè)進(jìn)程到達(dá)時(shí)間分別是0、1、2服務(wù)時(shí)間分別是4、3、2FCFS下進(jìn)程按到達(dá)順序執(zhí)行總完成時(shí)間依次是4、7、9RR下如果時(shí)間片為2進(jìn)程輪流占用CPU執(zhí)行順序會(huì)完全不一樣。報(bào)告里沒有貼具體的進(jìn)程數(shù)據(jù)但你在復(fù)現(xiàn)時(shí)應(yīng)該自己構(gòu)造好這樣一組數(shù)據(jù)并在報(bào)告里畫出調(diào)度時(shí)序圖。調(diào)度實(shí)驗(yàn)的代碼通常是模擬實(shí)現(xiàn)和內(nèi)核里的真實(shí)調(diào)度器沒有直接關(guān)系。報(bào)告里的做法是在用戶態(tài)用C語言實(shí)現(xiàn)一個(gè)調(diào)度器的模擬框架定義PCB結(jié)構(gòu)體、就緒隊(duì)列、時(shí)間片計(jì)數(shù)器然后按不同策略跑同一組進(jìn)程數(shù)據(jù)輸出完成時(shí)間、周轉(zhuǎn)時(shí)間、帶權(quán)周轉(zhuǎn)時(shí)間。這個(gè)模擬過程的價(jià)值在于你能直觀看到RR策略下短進(jìn)程沒有被長時(shí)間阻塞、但上下文切換次數(shù)上升了這個(gè)典型 trade-off。4.2 線程同步實(shí)驗(yàn)鎖定與信號(hào)量的標(biāo)準(zhǔn)寫法實(shí)驗(yàn)四是線程同步實(shí)驗(yàn)按報(bào)告的目錄結(jié)構(gòu)看實(shí)驗(yàn)內(nèi)容圍繞線程的同步互斥展開。線程同步和進(jìn)程同步最大的區(qū)別在于線程共享同一地址空間不需要像進(jìn)程那樣通過信號(hào)或管道來傳遞數(shù)據(jù)直接用共享變量配合鎖、信號(hào)量或條件變量就能完成。這里有一個(gè)常見的翻車點(diǎn)用while循環(huán)包裹wait操作是推薦寫法但很多人會(huì)隨手寫成if。兩者的區(qū)別是if只在被喚醒時(shí)檢查一次條件而while會(huì)在每次被喚醒后重新檢查條件是否仍然滿足。多線程環(huán)境下可能發(fā)生虛假喚醒或者多個(gè)消費(fèi)者被同時(shí)喚醒后只有一個(gè)能拿到資源如果沒有用while重新檢查條件就會(huì)產(chǎn)生數(shù)據(jù)不一致。這個(gè)級(jí)別的分析寫進(jìn)實(shí)驗(yàn)報(bào)告是明顯加分的內(nèi)容。4.3 內(nèi)存管理與缺頁統(tǒng)計(jì)實(shí)驗(yàn)/proc是觀測窗口實(shí)驗(yàn)五是內(nèi)存管理實(shí)驗(yàn)通過/proc文件系統(tǒng)觀察系統(tǒng)的meminfo、loadavg、interrupts、filesystem等信息實(shí)驗(yàn)七是缺頁次數(shù)統(tǒng)計(jì)核心是讀取/proc/stat里的缺頁相關(guān)字段。這兩個(gè)實(shí)驗(yàn)的關(guān)鍵是理解/proc下每個(gè)文件對(duì)應(yīng)的內(nèi)核數(shù)據(jù)來源。比如/proc/meminfo里的MemTotal、MemFree、Buffers、Cached字段直接反映了系統(tǒng)物理內(nèi)存的使用分布/proc/stat里的pgfault和pgmajfault字段前者是普通缺頁次數(shù)包含從頁面緩存中恢復(fù)的后者是主要缺頁次數(shù)需要磁盤I/O兩者之間的差距能反映內(nèi)存回收和頁面緩存的效率。讀取這些數(shù)據(jù)的C程序本質(zhì)上就是打開文件、讀字符串、按空格解析、打印輸出。報(bào)告里強(qiáng)調(diào)“不能粘貼運(yùn)行結(jié)果”意思是必須用自己的代碼去讀取然后對(duì)數(shù)值做解釋。你要是自己寫的話一個(gè)典型的解析流程是#include stdio.h #include stdlib.h #include string.h int main() { FILE *fp; char line[256]; unsigned long pgfault 0, pgmajfault 0; fp fopen(/proc/stat, r); if (!fp) { perror(open /proc/stat); return -1; } while (fgets(line, sizeof(line), fp)) { if (strncmp(line, pgfault, 7) 0) { sscanf(line, pgfault %lu, pgfault); } else if (strncmp(line, pgmajfault, 10) 0) { sscanf(line, pgmajfault %lu, pgmajfault); } } fclose(fp); printf(pgfault: %lu\n, pgfault); printf(pgmajfault:%lu\n, pgmajfault); return 0; }這段代碼做的事情很直接打開/proc/stat文件逐行讀取用strncmp匹配以pgfault和pgmajfault開頭的行sscanf提取數(shù)值最終打印。實(shí)測時(shí)發(fā)現(xiàn)pgfault的數(shù)值增長很快而pgmajfault的增長相對(duì)緩慢這就是頁面緩存命中率的體現(xiàn)——大部分缺頁都能從用戶空間的頁面緩存里恢復(fù)不需要真正發(fā)起磁盤I/O。注意/proc/stat里的pgfault和pgmajfault是系統(tǒng)累計(jì)值不是某個(gè)進(jìn)程的缺頁數(shù)。想要統(tǒng)計(jì)指定進(jìn)程的缺頁次數(shù)需要讀取/proc/[pid]/stat里的minflt和majflt字段這個(gè)區(qū)別寫報(bào)告時(shí)容易搞混。報(bào)告中實(shí)驗(yàn)七是按“系統(tǒng)缺頁次數(shù)”做的所以用/proc/stat是對(duì)的。5. 避坑指南六個(gè)能讓你重寫報(bào)告的常見問題5.1 fork代碼從Windows復(fù)制到Linux后無法編譯現(xiàn)象在Windows的IDE里寫好C代碼復(fù)制進(jìn)Linux后用gcc編譯報(bào)錯(cuò)fork undeclared或signal not declared。原因Windows的C標(biāo)準(zhǔn)庫沒有UNIX的POSIX接口fork、signal這些函數(shù)是Linux系統(tǒng)調(diào)用Windows環(huán)境下IDE的庫根本不包含它們代碼里雖然寫了#include unistd.h和#include signal.h但編譯器找不到對(duì)應(yīng)實(shí)現(xiàn)。解決直接在Linux虛擬機(jī)里用vim編寫或粘貼代碼然后在Linux的終端里完成編譯。如果你實(shí)在習(xí)慣用Windows編輯器寫代碼用xftp之類的工具傳進(jìn)虛擬機(jī)再編譯但不要把Windows下的編譯錯(cuò)誤當(dāng)成Linux下的行為來排查。報(bào)告中提到的xftp傳文件方式對(duì)于傳大量小文件確實(shí)比反復(fù)復(fù)制粘貼省事。5.2 按下Ctrl\沒有反應(yīng)程序繼續(xù)卡住現(xiàn)象程序運(yùn)行后按Ctrl\終端沒有任何反應(yīng)進(jìn)程不退出。原因兩種情況最常見。第一種是子進(jìn)程沒有忽略SIGQUIT導(dǎo)致Ctrl\直接終止了所有收到該信號(hào)的進(jìn)程你還沒看到輸出終端就回到Shell了第二種是父進(jìn)程注冊(cè)了SIGQUIT處理函數(shù)但waiting()里的wait_mark變量被編譯器優(yōu)化了。解決確認(rèn)子進(jìn)程分支里調(diào)用了signal(SIGQUIT, SIG_IGN)父進(jìn)程分支里調(diào)用了signal(SIGQUIT, stop)。如果確認(rèn)沒錯(cuò)把wait_mark聲明為volatile int防止編譯器把它優(yōu)化到寄存器里導(dǎo)致信號(hào)處理函數(shù)改了值、主循環(huán)卻感知不到。這是比較隱蔽的坑通常在開啟-O2優(yōu)化后暴露。5.3 兩個(gè)子進(jìn)程的輸出信息混在一起現(xiàn)象實(shí)驗(yàn)一里P1和P2的結(jié)束信息同時(shí)出現(xiàn)在終端字符交錯(cuò)在一起無法辨認(rèn)。原因兩個(gè)子進(jìn)程同時(shí)從waiting()退出同時(shí)調(diào)用printf輸出到標(biāo)準(zhǔn)輸出。printf雖然有行緩沖但多個(gè)進(jìn)程同時(shí)操作同一文件描述符沒有原子性。解決用lockf對(duì)標(biāo)準(zhǔn)輸出加文件鎖。lockf(1, 1, 0)對(duì)文件描述符1stdout加寫鎖lockf(1, 0, 0)解鎖。同一時(shí)刻只有一個(gè)進(jìn)程能持有鎖輸出就變成原子操作了。這也是報(bào)告中代碼里lockf出現(xiàn)的原因在復(fù)現(xiàn)或講解時(shí)不要省略它。5.4 gdb調(diào)試時(shí)斷點(diǎn)不生效現(xiàn)象用gdb設(shè)置斷點(diǎn)后運(yùn)行程序斷點(diǎn)沒有被命中程序直接在終端跑完了。原因最常見的情況是編譯時(shí)沒有加-g參數(shù)。gdb依賴調(diào)試符號(hào)表來關(guān)聯(lián)源代碼行號(hào)和機(jī)器指令地址沒有調(diào)試信息斷點(diǎn)自然無法設(shè)置。解決編譯時(shí)使用gcc -g -o test test.c。如果還需要更多調(diào)試信息可以用gcc -g3 -O0-g3包含宏定義信息-O0關(guān)閉優(yōu)化避免調(diào)試時(shí)變量被優(yōu)化掉。另外如果你用的是Code::Blocks這類IDE調(diào)試要確認(rèn)項(xiàng)目的編譯選項(xiàng)里開啟了“生成調(diào)試信息”這一項(xiàng)。5.5 缺頁統(tǒng)計(jì)實(shí)驗(yàn)結(jié)果不穩(wěn)定現(xiàn)象連續(xù)兩次運(yùn)行缺頁統(tǒng)計(jì)程序打印出的數(shù)值差異巨大甚至第二次運(yùn)行比第一次運(yùn)行數(shù)值還小看起來不合理。原因/proc/stat里展示的是從系統(tǒng)啟動(dòng)以來的累計(jì)值每次讀取都是一個(gè)更大的數(shù)字不會(huì)變小。但如果你讀取的是某個(gè)特定進(jìn)程的/proc/[pid]/stat字段進(jìn)程每次運(yùn)行的minflt和majflt都會(huì)不同因?yàn)樗鼈內(nèi)Q于程序運(yùn)行時(shí)的訪問模式、是否有文件I/O、系統(tǒng)的頁面緩存命中率等因素。差異大是正常的關(guān)鍵在你怎么解讀。解決報(bào)告里寫結(jié)果時(shí)不要只寫一個(gè)時(shí)間點(diǎn)的靜態(tài)值而是連續(xù)采樣幾次記錄數(shù)據(jù)的變化趨勢再結(jié)合當(dāng)前系統(tǒng)的負(fù)載情況做解釋。比如連續(xù)讀取5秒內(nèi)pgfault的增長量可以估算系統(tǒng)每秒的缺頁頻率這個(gè)頻率如果在穩(wěn)定區(qū)間波動(dòng)就能證明程序的觀測方法是有效的。5.6 報(bào)告里貼了大量代碼卻沒有結(jié)果解讀現(xiàn)象實(shí)驗(yàn)報(bào)告里代碼占了整頁實(shí)驗(yàn)結(jié)果只貼了一張截圖沒有任何文字說明。原因這是最常見的丟分點(diǎn)。老師評(píng)實(shí)驗(yàn)報(bào)告不是看你會(huì)不會(huì)復(fù)制代碼而是看你能不能解釋代碼行為和實(shí)驗(yàn)現(xiàn)象。一張沒頭沒尾的截圖換誰都看不懂你想表達(dá)什么。解決至少寫三部分內(nèi)容。第一運(yùn)行環(huán)境的簡要說明包括Linux版本、內(nèi)核版本第二輸入數(shù)據(jù)是什么比如調(diào)度實(shí)驗(yàn)中三個(gè)進(jìn)程的到達(dá)時(shí)間和服務(wù)時(shí)間第三輸出結(jié)果怎么解讀比如為什么P2在RR策略下比FCFS策略下完成得更早這個(gè)現(xiàn)象反映了什么調(diào)度特性。這也是這份95分報(bào)告里做得最好的地方——每個(gè)實(shí)驗(yàn)結(jié)果后都有一小段“結(jié)果分析”單獨(dú)解釋圖中現(xiàn)象發(fā)生的原因。6. 驗(yàn)證方法論把一份課堂報(bào)告變成你自己的能力憑證拿到這份資源后怎么判斷你已經(jīng)“吃透”了而不是“抄完”了我習(xí)慣用一組快速驗(yàn)證來檢測你可以照著過一遍。第一項(xiàng)驗(yàn)證是軟中斷實(shí)驗(yàn)的改造能力。原代碼用信號(hào)16和17做通信你把它改成用SIGUSR1和SIGUSR2重新編譯運(yùn)行確認(rèn)三種進(jìn)程的終止順序和原來一致。能改得動(dòng)說明你理解了信號(hào)編號(hào)只是觸發(fā)標(biāo)識(shí)真正決定行為的是每個(gè)進(jìn)程注冊(cè)的處理函數(shù)。第二項(xiàng)驗(yàn)證是/proc讀取程序的擴(kuò)展能力。寫一個(gè)與報(bào)告功能等價(jià)但代碼結(jié)構(gòu)完全不同的C程序比如用一次性fread讀取整個(gè)/proc/stat文件再解析而不是fgets逐行掃描。能改用另一種方式實(shí)現(xiàn)相同功能說明你對(duì)文件I/O和字符串解析有判斷力而不是只會(huì)背模板。第三項(xiàng)驗(yàn)證是敘述視角的轉(zhuǎn)換。把報(bào)告里的一段實(shí)驗(yàn)結(jié)果用自己的話重新描述一遍不要看原文。如果寫出來的文字仍然包含以下要素輸入條件、執(zhí)行過程、輸出結(jié)果、原因分析說明你已經(jīng)掌握了實(shí)驗(yàn)報(bào)告的基本結(jié)構(gòu)。這個(gè)能力比代碼本身更通用后面的課程設(shè)計(jì)、畢業(yè)設(shè)計(jì)都能復(fù)用。我自己拆這種課程資源時(shí)有個(gè)習(xí)慣永遠(yuǎn)先看失敗記錄和問題記錄再看成功代碼。因?yàn)榇a只能說明一個(gè)版本的功能而問題記錄能讓你避開未來可能踩的同一個(gè)坑。這份報(bào)告里記錄的網(wǎng)絡(luò)連接問題、Windows與Linux環(huán)境差異、jiffies概念的理解恰恰是實(shí)際操作中真正會(huì)浪費(fèi)半天時(shí)間的點(diǎn)。從那以后我每次拿到類似的課程資源都強(qiáng)制自己先摘出“遇到的問題”那一頁再?zèng)Q定要不要花時(shí)間看代碼。希望這份拆解也幫到你至少可以少走一段彎路。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
狠狠草狠狠草| 久色| 97操操| 色婷婷成人| 色六月丁香婷婷狠狠干| 婷婷精品综合| 99欧美热| 人人操av| 五月婷婷激情综合网| 6080av| 欧美啪啪网| 日韩av在线电影| 日韩抽插操逼| 色婷婷av在线观看| 五月婷婷欧美| 香蕉伊人综合| 99在线观看精品视频| 深爱五月日韩| 欧美激情综合色综合| 91丨九色丨高潮丰满日本| 欧美性猛交99久久久久99按摩| 婷婷综合五月天激情| 久久天堂色| 亚洲热久久| 色婷婷丁香五月天| 99色在线视频| 九九热啪啪| 五月天欧美激情| 久久九九@| 黑人糟蹋人妻HD中文字幕| 五月激情婷婷六月| 婷婷色狠狠| 亚洲AV免费在线| 亚洲啪| 色五月综合网| 99热官网| 另类小说色婷婷| 婷婷五月天亚洲五码| 狠狠狠人妻| 丁香婷婷五月激情| 丁香五月婷婷啪| 九九精品碰| 91操操| 日韩黄色电影| 伊人玖玖精品| 五月天激情小说| 综合久久五月天| 久久九九在线视频| 久久久久久久久人妻| tingtingzonghewang| 秋霞免费三级片| 99a级片| 久久丁香综合精品综合| 色丁香在线视频| 99re这里只有精品99| 女人天堂久久| 丁香六月久久| 婷婷久久午夜网| 激情综合五| 99re免费在线视频| 色色五月天婷婷| 亚洲成人网在线观看| 色婷婷色五月综合| 欧美婷婷丁香五月社区| 丁香婷婷综合激情五月色,开心五月丁香花综合网,激情综合五月亚洲婷婷,五月天 | 99国产精品久久久久久久久久久 | 婷婷丁香五月天亚洲| 丁香女人五月天| 婷婷伊人网| 五月天伊人综合| 伊人玖玖综合| 亚洲色久| 久久网思思| 狠狠色情婷婷| 婷婷五月天第三页| 久久婷婷六月综合综合| 99re8这里只有精品99re8热视频| 丁香五月久久| 欧美成综合在线观看| 激情婷婷激情在线不卡| 综合色99| 性一交一乱一交A片久久四色| 日韩啪啪网| 色噜噜综合网| 日本A片一区| 欧美日韩中国| 这里只有精品亚洲| 色爱终和网| 丁香五月婷婷欧美成人色图| 99婷婷国产最新视频| 国产超碰在线| 丁香六月婷婷激情| 9月色婷婷| 欧洲区自拍| 五月丁香婷婷成人网| 六月丁AV| 狠狠做六月爱婷婷综合aⅴ| 久草 天堂| 激情五月,色五月| 春色激情第四色| 国产精品热搜丁香五月婷婷| 婷婷五月天激情文学| 亚洲综合五月天婷婷| 香蕉AV777XXX色综合一区| 九九丁香社区欧美激情| 丁香六月综合激情| 99九九精品视频推荐| www.久久| 亚洲小电影在线观看黄999| 中文字幕视频在线播放| 日日夜夜婷婷| 黑人糟蹋人妻HD中文字幕| 色婷婷精品视频在线播放| 天天操加勒比| 97色色综合| 色婷婷丁香| 久热只有精品| 色婷婷色综合激情91| 五月天婷综合网站| 丁香美女五月天婷婷| 五月天综合色| 色婷婷久久综合久色综| 99精品大片| 婷婷色导航| 亚洲av无码精品色午夜| 五月婷婷在线播放| 亚洲网站观看视频| 五月婷婷在线视频免费观看| 色情丁香五月婷婷精品| 伊人大蕉香| 99re这里只有精品免费| 99精品热| 日本久久婷| 色狠狠色噜噜噜a天堂一区| 丁香五月日韩| 91色操| 日本九九热| 激情内射p| VA色婷婷| 久操人妻| 99热6这里只有精品| 丁香五月激情啪啪啪| 激情综合五月天| 久久婷婷五月综合色和| 久久婷婷五月天丁香| 天天操天天爱天天日| 99久视频| 热99免费在线| 五月天婷婷网站888| 久久日本wwww色| 亚洲色婷婷99一9|| 人人操日| 久久婷婷五月天激情新地址| 丁香五月激情婷婷| 开心五月丁香综合久久| 99这里只有精品|v| 丁香六月天AV| 日韩限制级大尺度黑料泄密大尺度视频一区二区在线观看 | 美女爆乳18禁www久久久久久| 99色看这里只有精品| 97资源碰碰在线| 久久婷婷五月综合伊人| 日本欧美啪啪| 激情久久五月天| 色五月激情综合| 激情第四色| 日日操夜夜操中国无码| 亚洲日韩欧美综合VA| 日韩限制级大尺度黑料泄密大尺度视频一区二区在线观看 | 色五月丁香五月| 操91综合网| 色国产五月| 五月婷婷激情综合网| 丁香五月婷婷天堂大香蕉| 激情丁香五月天图片| 亚洲黄网在线| 人人干人人操人人摸| 丁香五月婷婷老师网站| 久久免费操| 色婷婷88| 欧美性猛交AAAA片黑人 | 国产婷婷综合| 丁香婷婷五月人体| 九九视频这里只有精品| 可以直接看的av网站| 色五月婷婷7777| 人人人操B超碰| 精品国婬伦V无码久久久| 欧美成人精品老美女噜噜噜| 涩涩激情五月婷婷| 91精品婷婷国产综合久久| 色五月天堂| 99网| 综合图片色色| 99热这里只有精品268| 婷婷激情五月| 色情丁香五月婷婷精品| 亚洲激情综合五月婷婷啪啪| 久久永久视频| 五月久久综合| A色色| 婷婷九色| 日欧一片内射VA在线影院| 丁香五月丁香伊人| 久热这里只精品| 夫妇交换刺激做爰| 黄色片区子| 91AV婷婷| 久久这里只有精品视频15| 五月婷婷婷丁香播| 五月丁香WWW| av婷婷丁香| 色吧五月婷婷| 亚洲精品激情| 先锋男人99资源| 久色88| 成人av播放| 丁香五月激情啪啪| 日本三级日本黄色| 午夜成人片400| www.天天干| 丁香花操逼| 另类视频在线| 色九九九九| 99热成人精品| 精品久久99| 婷婷天天五月天| 五月天伊人久久久久| 91狠狠色丁香婷婷综合久久| 99久久精品国产色欲| 日本狠狠色| 人人射人人高潮| 亚洲综合久| 五月丁香综合网| 96丁香六月婷婷蜜桃综合久久| 日本人妻丁香婷婷久久寝取熟女五月| 五月丁香啪啪激情| 色欲久久久久久综合网综合网| 国产人妻人伦精品一区二区| 五月婷激情| 天天操天天操天天操天天操天天操| 婷香五月网在线| 97婷婷在线视频| 专区无日本视频高清8| 五月婷婷色影院| 成人免费va| 久热这里精品免费| 五月激情视频网| 丁香五月综合激情啪啪| 色婷婷AV在线| 伊人9在线| 九月停停| 精品导航在线x不卡| 极品少妇XXXX精品少妇偷拍 | 丁香婷婷五月天激情四射| 丁香五月综合网亚洲综合欧美狠狠| www.久久爱.c n| 婷婷色综合| 在线日韩视频| 婷婷成人视频| 综合婷婷久久| 日日.c| 色欲av伊人久久大香线蕉影院| 激情丁香五月激情婷婷| 五月丁香六月综合激情网| 亚洲网站在线鸭子av| 色欲九区| 欧美激情丁香五月| 激情精品久久| 五月婷婷色情| 99热这里只有精品3| 激情色视频| 亚洲AV成人在线| 人人摸人人操人人爽| 182.t午在线观看| 天天色天天日| 国产XXXX搡XXXXX搡麻豆| 国内外色色色色色成人视频| 亚洲无AV在线中文字幕| 九九成年视频| 超碰免费人妻| 天天人人天天爽| 五月婷婷就去色| 亚洲丁香五月美女| 天天操B| 伊人久久大香网| 99热乎| 开心久久xxx色| 五丁香激情综合| 五月丁香视频在线观看| 新伍月婷婷| 久久精热| 极品人妻VideOssS人妻| JAPANRCEP老熟妇乱子伦视频 | 天天色99| 79精品在线视频| 96性爱视频| 精品亚洲VA网站| 五月丁香欧美综合| 538在线精品| 波多野结衣成人作品在线| 日本在线观看91| 色网站9| 五月婷婷亚洲综合在线| 日木狠狠干| 丁香色啪综合| 五月网网站| 日日日日日| 亚洲中文乱字字幕在线永久| AV操一操| 国产成人VA| 五月婷婷影| 综合五月婷婷| 伊人激情AV一区二区三区| 精品九九九久| 欧洲亚洲免费视频9| 婷婷五月天激情在线观看 | 亚洲成人在线综合| 69er小视频| 日日骑夜夜撸| 亚洲秘 无码一区二区三区妃光/1| 可以看的av网站| www.久99| 天天色伊人| 五月丁香综合网| 91超碰人人操| 97色婷婷五月天| 米奇影视资源婷婷狠狠色激情欧美五月丁香 | www激情| 日本44久久在线| 大香蕉五月天婷婷| 婷婷综合在线| 三日本无码| 色优久久| www.91在线观看| 九九色综合九九色| 久久婷婷五月天激情四射| 五月婷庭丁香在线| 色噜噜婷婷| 婷婷天堂视频| 色99网| 激情99| 久久ri精品视频| 无码网| 久久九九爽| 婷婷久久欧美| 五月开心深深爱激情综合| 99精品免费视频| 91精品婷婷国产综合| 无遮挡国产高潮视频免费观看| 国产激情AV| 色五月综合激情| 嫩草AV久久伊人妇女超级A| 狠狠爱婷婷| 夜夜操夜夜操| 六月色丁香婷婷| 激情五月天综合网站网站网站| 伊人久久大香线蕉av一区| 一本大道熟女人妻中文字幕在线| 欧美天天草人人草| 99这里都是精品| 国产99久久久| 天天爽天天爽| 亚洲婷婷月丁香五月| 99亚洲精品视频| 91操片| 免费啪啪亚州视频| 青草网在线观看| 久久伊人大香蕉| 五月婷婷欧美| 色婷婷丁香五月| 五月综合视频在线| av亚洲国产小电影| 天天日日爽| 国产99久| 天天做天天爽| 在线中文av| 操99| 婷婷五月天日本国产| 久操操| 色综合狠狠色| www.色五月| 91久久电影| 国产成人+亚洲+欧洲| 97se在线视频| 色六月婷婷| 99爱爱| 日本五月婷| 丁香色五月直播| 五月丁香六月婷| 这里只有精9| AV在线不卡播放| 亚洲色婷婷视频| 色色综合热| 久久人妻视频| 亚洲婷婷五月天综合| 情欲禁地| 丁香五月天社区| 国产9色在线/日韩| 国产熟妇的荡欲午夜视频| 好好干av| 婷婷伊人网| 五月天激情小说网| 五月丁香成人视频| av 一区三区四区| 一二线视频 另类| 五月婷婷69| www,久久久| 五月丁香啪| 亭亭五月天成人| 91互操| 99成人| 国产精品久久久久久五月天加勒比| www.日本91| 91干| 久久天堂女人| AV九九| 这里只有精品久| 7777久久亚洲中文字幕| 九九热AV| 夜夜夜叫天天天做| 色婷操逼| 婷婷天堂站| 人妻性爱| 六月丁香综合| 俺去婷婷 丁香| 五月激情视频| 久久性爱视频网站| 天天舔天天摸天天射| 欧美A A A A A| 婷婷99中文字幕| 日本成人噜噜| 久久黄色网扯| 色婷婷综合在线| 少妇性按摩无码中文A片| 六月丁香婷婷尤物| 26uuu青青| 色97啪啪| 五月天久久久| 人人草人人看| 色永久| 思思视频这里是精品| 99热99草97| 丰满人妻妇伦又伦精品国产 | 丁香五月综合激情久久潮喷| 中文字幕婷婷9月天| 激情伊人五月天| 99热九九热| 色五月在线| 99久在线精品99re8| 日本不卡一区二区三区| 激情综合久久| 激情五月婷婷五月| 97精品综合| 99热精品无码| 超碰只有精品在线| 色五月婷婷成人| 久久伊人五月天| 五月天成人在线视频网站| 呦呦v线| 日本人妻A片成人免费看片| 九九九九九999999| 国产精品久久久久久久久久| 99精品成人无码A片观看金桔| 操啊操av| 免费视频这里只有精品| 五月丁香黄色| 婷婷激情五月综合基地| 狠狠香蕉| 99婷婷| 操逼毛片国语对白| 337p大胆噜噜噜噜噜91Av| 日韩精品一区二区亚洲AV观看| 久久97久久99久久综合欧美| 99热在线观看免费精品| 激情五月天色播| 六月丁香婷婷五月| 五月天综合视频| 人人干人人操人人摸| www色婷婷com| 91日日日| 激情五月丁香婷婷| 天堂成人A片永久免费网站| 丁香六月激情综合| 成人丁香| 九九99久久| 这里只有精品视频| 老美AA片| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 激情五月天情色| 人人操婷婷| 亚洲123区高清入口| www.9色色色| 狠干综合| 99re6热在线精品视频播放速度| 丁香久月| 婷婷第六色| 天天草狠狠擦| 亚洲热综合| 8区视频在线| 久9热| 日日操夜夜擼| se.久久视频在线观看| 六月久久婷婷| 婷婷色五月亚洲| 亚洲人人操BD| 色九网| 免费观看大片视频 丁香婷婷 六月欧美| 久久激情天堂| 久久精品99国产精品日本| 久久精品无码一区| 97在线刺激| 婷婷爱综合| 天天做天天爱天天摸| 丁香五月天人体| 深爱五月日韩| 婷婷五点亚洲| 成人丁香五月| 五月婷婷综合网| 超碰久热| 国产成人AV在线播放| 激情精品久久| 五月天狠狠色| 五月天成人综合| 日韩AV免费| 天天日天天添| 日韩aaa| 狠狠狠狠狠狠| 亚洲99精品九九在线| 啪啪激情网| 天天操天爱综合| 九九操操| 岛囯综合激情网| 亚州精品色情无码A片| 牛牛碰免费| 97干综合网| 午夜不卡久久精品无码免费 | 久这里只有精品99| 五月色婷婷激情| 91精品久久久久久| 九九久久精品國產| 五月丁香色狠狠干大屄| 久久AV电影| 九九精品免费| 99热新网址| 台湾佬天天日丁香婷婷五月天| 五月天综合色| 激情玖玖综合网| 开心 五月 综合| 在线视频激情网站| 69人人操人人爽| 性小说五月天| 丁香六月综合| 99碰视频| 五月丁香六月激情欧美综合| 久久久久久久久月丁| 99视频这里只有免费精品| 婷婷五月色综合| 五月激情在线| 久久视频66| 久热99热| 国产avapp 网| 色女人久久| 综合激情在线观看| 五月综合婷婷开心网| 综合色色色| 超碰91av| 天天日 天天草| 五月色综合| 成人免费在线电影| 99这里有精品| 另类激情五月| 色婷婷在线播放| 99re久热只有精品6在线直播.com| 五月婷在线播放| 色婷婷成人色网| 99热这里只有精品一| 欧美交换配乱吟粗大25P| 另类视在线| 开心婷婷五月| 国产激情AV| 9色视频在线| 97婷婷狠狠| www.黄色片-久久成人国产精品在线播放-999AV | 久9热| 亚洲av成人在线| 99re视频在线播放| 无码操B| 97色色-99久久| 日韩在线一级| 五月丁香激情四射综合| 99综合视频| 美女亚洲五月丁香| 丁香成人五月天| 色婷婷婷av | 另类色网| 丁香五月亚洲综合丝袜| 99热这里只有精品86| 丁香五月婷婷99| 色情久久久| 婷婷丁香视频在线观看免费| 九九色婷婷五月天| 激情五月丁香亭亭| 色色综合热| 五月婷婷之综合激情| 9热在线观看| 91丨九色丨大屁股| 五月丁香久久呀| 任你干嘛免费视频播放| 人人视频人人干人人做| 婷色五月| 91九色PORNY肉丝在线| 天天插综合| 亚洲精品亚洲人成人网| A短视频免费在线观看| 色五月天激情| 日日噜噜夜夜狠狠久久丁香五月| 婷婷五月天视频免费在线观看| 丁香六月婷婷开心| 九九热123| 丁香五月综合| 伊人狠狠狠综合| 五月天久久网站| 大香蕉啪啪| 六月激情婷婷综合| 97精品人人A片免费看| 丁香五月成人论坛| 久久久五月婷婷| 亚洲A片成人无码久久精品青桔| 五月婷婷开心亚洲无| 校花娇喘呻吟校长陈若雪视频 | 九九热这里| 欧美日本国产欧美日本韩国99| 久久99久久99精品免视看婷婷| 丁香六月高清视频| 91精品久久久久久| 色色五月天婷婷| ,99视频久久| 婷色视频| 啪啪日热| 亚洲色色色| 丁香涩涩爱| 丁香五月婷婷亚洲色图| 99在线资源| 亚洲黄色操逼| 五月丁香啪| 538在线精品| 亚洲五月天天| 丁香色五月婷婷17C| 日韩在线成人电影| 97福利视频| 思思热久久久在线| 五月婷伊人| 97在线日本| 伊人激情AV一区二区三区| www.99久久久| 在线视频99| 五月天 另类图片| 丁香密臀AV激情网| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 久久婷网| 五月Huangsewang| 超碰免费99| 伊人深爱综合| 99热九九在线| 色五月情| 五月天啪啪| 天天做天天爱天天玩| 狠狠草综合网| 国产精品久久久60086| 五月丁香视频在线观看| 久这里只有精品99| 色五月婷婷综合在线| 热久久婷婷| 久久九九一區| 97在线/日本| 丁香伊人五月色婷婷五十路 | 久久五月丁香综合| 天天久久婷婷| 色色五月丁香婷婷综合| 国产91在线视频| 无码99| 色色色地址| 日本天堂免费99| 99在线免费视频| 色五月婷婷综合在线| 激情综合国产| 99热精品一| 丁香五月激情无码视频| 婷婷五月丁香网| 开心激情网在线| 日日噜狠狠色综合久| 99热激情| 久久人人九九| 97人人操人人| 五月婷婷色五月| 婷婷五月在线视频| 99热爆在线| 丁香五月欧美婷婷| 色婷婷精| 夜夜大香蕉婷婷丁香| 久久视频婷婷视频| 天堂爱爱| 六月丁AV| 大香蕉啪啪| 久久人妻精品| 五月色亭丁香| 超碰色热| 久久综合影院| 久久亚洲色导航| 久久性爰视频这里只有精品| 色丁香五月婷婷| 五月天另类小说久久小说网| 99热这里| 噼里啪啦在线观看免费完整版视频| 超碰在线人妻| 97婷婷久久丁香| 亚洲乱码日产精品BD| 97视频91| 精品国产一区二区三区四区阿崩| 人操人| 超碰在线视屏| 99惹精品视频| 久久9视频欧美| 亚洲精品久久久无码| 永久天堂日本| 五月婷婷丁香啪啪| 亚洲狠狠干| 丁香五月天综合| 97午夜一区二区| 丁香五月天在线观看视频| 五月丁香婷婷伊人| 天天色播| 91jiuseshunv| 99热国产国产| 97婷婷狠狠| 丁香五月天久久| 久久婷婷综| 婷婷综合六月| 99热免费| 色噜噜97视频在线观看| 亚洲精品久久久久久久久久吃药| 99狠狠色| 亚洲情综合五月天| 久久女婷| EEUSS鲁片一区二区三区| 国产乱子轮XXX农村| 无码激情AAAAA片-区区| 激情六月丁香| 五月丁香五月综合欧美| 91|疯狂丨高潮丨对白| www.色综合.com| 丁香久久五月天视频在线观看| 碰97久久| 超级碰碰视频无码| 六月天六月婷| 婷婷五月天影院| 91精品国产日韩91久久久久久国模| 99色热视频| 午夜一区| 丁香婷婷大香蕉| 99热这里全都是精品| 青青草青青草五月天| 天堂综合久| 九九视频这里有精品| 成人精品视频99在线观看免费| 九九99免费视频| 激情五月激情综合网| 丁香九色不卡aaa| 色性日本| 996er热| 国产精品色婷婷久久久精品| 狠狠干思思热| 色色五月婷婷狠狠| 五月综合婷婷网| 人人操插| 91人人爽人人操| 亚洲激情综合免费| 99色嘟嘟精品网站| 色操b| 色色五月丁香| 超碰超碰在线| 久久色情| 丁香婷婷色五月| 色综合久久五月天| 99噜噜噜| 激情婷婷久久| 99热e| 婷婷五月天免费视频| 天啪天啪天啪天啪| 天天骑天天操| 97日在线视频| 综合激情站| 色久一| 性色天| 亚洲综合草草| 婷婷色五月丁香六月欧美啪| 91九色中文字幕女在线观看| 在线观看av网站| 91婷婷色| 激情五月五月婷婷| 99热这里只有精品国产免费| 成人中文网| 五月丁香综合啪啪| 俺也去色| 丁香六月婷婷激情综合| 99热网站| 狠狠肏综合网| 色婷婷精| 亚洲成人中心| 俺也去在线久久精品23欧美综合视频网站,丰满人妻一区二区三区在线视频53,丰满 | 天天爽日日爽夜夜爽| 极品人妻VIDEOSSS人妻| 综合综合网| 精品九九网| 99在线热| 伊人碰碰婷婷| 五月天色丁香| 久久视频九九视频| 欧美久人人| 欧洲亚洲精品| 九九热再线九九视频免费在线观看| 少妇出轨做爰高潮A片| 天天做天天爱天天要| 色婷婷国产精品综合在线观看| 婷婷亚洲天堂| 播五月婷婷开心| 99久久国产综合精品五月天喷水\| 蜘蛛女侠2003满天星免费观看| av超碰在线| 亚洲AV网站| 男人综合网| 久久狠婷婷| 婷婷五月婷婷五月| 69久久99精品久久久久婷婷| 久操热| 丁香六月无码播放| 99精品丁香五月| 亚洲精品99| 色99综合视频| 另类图片色五月| 六月丁花香啪啪激情欧美| 天天夜天天色天天| 九九色色网| 亚洲综合色成丁香五月色| 五月丁香婷婷AV| 色婷婷丁香六月| 99热每日| 五月丁香婷婷综合网| 狠狠擼综合| 久久99精品久久久久久噜噜| 亚洲成人在线在线| 狠狠狠色激情综合适合| 五月丁香婷婷激情在线视频| 天天se在线视频| 射婷婷中文字幕| 久久婷婷亚洲| 九九热在线观看视频网站| www.色五月.com| 色9999综合久久| 色婷婷小说| 亚洲免费av在线| 国产色网站| 色婷婷综合久久| 色啪网| 无套内射极品大美女| 九热视频| 黑人熟妇一区二区三区| 99热超碰人| www激情| 99视频在线观看网址| 婷婷爱综合| 色婷在线视频| 色香蕉婷婷| 中文字幕按摩做爰| 亚州操人在线视频| 日韩狠狠色| 婷婷伊人网| 成人丁香婷婷五月天| 五月天婷婷色播综合在线| 超碰人人操在线| www.lchjjc.com| 日本精品人妻无码77777| 亚洲精品大片| 久久三级视频| 少妇达人正片在线播放_ikun_福利吧| 五月亭亭六月色| 九热免费视频| 懂色av蜜臀av粉嫩av永陈冠希| 日本婷婷色| 成人αV视频免费观看| 亚洲综合五月天婷婷| 五月婷婷开心亚州在线| 五月婷婷m| 狠狠色情婷婷| 婷婷丁香六月激情综合| 激情综合无码| av在线资源| 91九色精品女同系列| 91九色无码日韩| 91九色视频在线观看| 丁香五月大香蕉AV| www.玖玖九| 免費观看aV在线网址| 曰韩五月丁香色婷婷无码| 性爱久久| 久婷婷婷| 成人午夜无码视频| 97人人草| 99亚洲天堂| 五月激情小说| 欧美特大片黄| 九九99精品| 99精品国产在热久久| 久久婷婷视频| 国产日韩欧美| 激情五月婷婷老师| 色吊操色妞| 五月婷婷综合网| 91碰碰碰| 超碰免费人人| 蜜臀久久99精品久久久久久酒店| 激情五月天天| 狠狠久久婷| Caoub青青超碰| 9婷婷内射| 中文字幕视频在线播放| 久久婷网| 五月丁香激情片| www.五月天婷婷姐姐| 五月天久久丁香| 97欧美在线| 狠狠99| 五月天开心网| 久久久久久久久久8888| 伊人热在线大香蕉| 婷婷性爱视频在线| 日本啪啪天堂| 激情久久天天| 色婷婷亚洲婷婷在线观看| 97人人操人人爽| 91久热| 欧美日韩成卜| 婷婷伊人75| 成人天天爽| 丁香六月无码| 激情综合五月天| 激情五月婷婷视频一区二区三区| 99精品热| 婷婷WWW久久| 亚洲精品中文字幕成人片| 97干在线| 天天色天天干天天插| 夜夜操夜夜操| 97碰碰人人| 婷婷视频在线| 色综合色五月| 亚洲人人操BD| 99热综合| 日韩精品一曲二曲三曲四曲五曲| 日本九九网| 青草青草久热这里只有精品| av性爱在线| 人妻视频在线| 91男同视频| 色噜噜狠狠色综| 日日夜夜狠狠操| 91操人| 天堂伊人干| 亚洲欧洲一二| 丁香开心深爱| 婷婷六月啪啪| 国产精品99久久久久久久女警| 久久久久久9热不雅视频| Caop在线| 五月丁香六月欧美| 久久九九色| 九九热视频精品999| 91中文在线| 色婷婷五月天偷拍| 国产亚洲精品久久久久久久久动漫| 久久狠狠干| 怡红院视频| 91人在线观看| 综合欧美五月婷婷| 91视频精品99| 丁香五月婷婷综合91| 丁香五月天精品| 亚洲无码yw| 91av视频| 日本精品干| 五月婷人妻| 五月婷婷综合视频| 亚洲爆乳无码精品AAA片蜜桃| 久久蜜臀婷婷| 狠狠干五月丁香| 99热精品在线| 日韩人妻无码专区| 丁香五月色欲| 91色性感五月婷婷丁香| 美妞av| 婷婷午夜丁香| www.综合久久.com| 亚洲视色| 99热97美女| 精品久久久久久久人妻| 国外亚洲成AV人片在线观看| 久久婷婷五月国产激情综合片| 欧美婷婷日本| 日美三级| 插插插色综合网| 精品久久99| 伊人春天av| 天天色播| 五月丁香综合网色欲| 婷婷五月天av| 丝袜熟女一区二区三区| 五月天综合| 日本天天操| 亚洲AV无码影院| 97人人爱人人操| 日本色爽| se99热久久一本| 丁香色情五月综合网站| 五月婷婷久草| 男人综合网| 日本熟妇乱妇熟色A片蜜桃| 99热在这里只有免费精品| 成人va在线播放| 色狠狠激情五月| 五月婷婷六月丁香| 五月停停直播| 久久精彩免费视频| 情色五月天网站| 五月香婷婷| 亚洲va日| 婷婷丁香日韩五月| 另类综合婷婷五月天欧美视频| 亚洲性爱AV| 激情五月视频在线婷婷| 久久五月婷综合网| 激情六月婷婷| 9久9久| 99er热精品视频| 婷婷大乡焦噜噜| 婷婷综合五月天亚洲综合| 久久婷婷激情久久| 激情综合九月| 九九99视频精品| 成人免费黄色短视频| 日韩色五月| 欧美在线看| 激情AV| 玖久精品视频9| 亚洲成人九九九| 色五月综合在线| 六月婷久久| 九色PORNY9l原创自拍| 久久机只有这里精品| 狠狠色噜噜色狠狠狠综合色| 99re视频在线播放| a69在线视频| 开心深爱激情网| 噜噜噜噜在线| 呦呦v线| 久久久国产精品黄毛片| 思思热高清在线观看| 97碰超级人人看| 免费无码毛片一区二区A片| 天天久综合| 日本99视频| 色欲久久99精品久久久久久| 97极品在线| 色综合天天网| 色综合久久综合| 激情综合五月丁香| 六月丁香婷婷在线波多| 97操碰碰无码视频| 99久视频| 色97综合婷婷天天色| 69人人操人人爽| 欧美人妻一区二区| 99热亚洲精品66| 大香蕉天堂色| 五月天激情视频| 久久er+| 久久精品婷婷五月丁香| 极品少妇XXXX精品少妇偷拍| 色综合另类| 天天天天天操| 久久九区| 亚洲视频在线网| 99这里只有精| 99久在线精品99re8热| 人妻内射麻豆视频| 色99在线看| wwwav大香蕉| 伊人五月天在线| 婷婷亚洲五月| 五月天久久www| 亚洲超级碰| 久久六月婷婷| 开心五月深爱五月| 综合婷婷五月丁香在线观看| 人妻系列久久久久久久久久久| 大伊香蕉玖玖爱| 懂色av粉嫩AV蜜臀AV| 99视频自拍| 丁香花五月天激情| 婷婷激情视频| 久狠日av| 91尤物九色在线| 婷婷五月色播天| 九九热re99re6在线精品| 九九热视频免费| 五月婷婷与六月丁香图片激情| 影音先锋AV资源男人站| 久久草大香蕉| 99亚洲天堂| 五月丁香六月婷婷久久肏| 日韩在线五月天婷婷| 国产精品大香蕉| 精品九九久久| 国产精品久久久爽爽爽麻豆色哟哟| 大香蕉AV在线| 婷婷午夜天| 超碰99热| www.com五月天| 99亚州综合精品成人网| 这里只有精品99视频| 九色综合网| 91聚色综合网| 91嫩草国产线观看亚洲一区二区| 91男女视频在线观看| 色婷婷99| 91一起操| 婷婷伊人久久| 亚城区在线| 五月天婷婷爱丁香中文字幕| 色99亚洲| 999热在线视频| 九九色色网| 亚洲美女高潮久久久久久69| 日本三久久| 五月丁香无码| 五月天婷婷色五月天| 99热国品免费| 在线另类视频| 欧美日本VA| 欧美天天爽| 五月天成人手机在线视频| 999热在线观看视频| 五月丁香六月婷| 五月丁香婷婷综合| 嫩草AV久久伊人妇女超级A| 熟女人妻一区二区三区免费看| 九月婷婷久久| 99在线精品视频| 久碰视频| 婷婷日韩| 玖玖婷婷婷丁香五月| 久久99综合网| 婷婷综合| 五月婷无码| 六月丁香VA| 久热99热| 天天日夜夜爽。| 可以直接看的av| 精品色| 日本久久性| 五月丁香啪啪网| 天天干天天拍| 久久视9精| 六月激情网| 99超超碰| 久热免费视频| 激情综合一| 99ree6| 色99免费视频中文| 欧美色色色色色色色| 99综合激情久久精品久久| 婷婷激情四射| 1000部毛片A片免费观看| www五月婷婷88导航| 五月天丁香啪啪啪啪| 五月久久婷婷丁香| 亚洲啪视频| 丁香五月综合在线| 五月亭亭性| 色五月天在线观看| 一起草AV入口| 六月婷婷视频| 成人一级片| 色婷婷综合网站| 天天射天天射一道本日本社区 | 五月丁香六月婷婷亚洲| 狠狠狠狠狠狠色| 日日干夜夜干| 婷婷综合另类| 精a品a视a频| 五月婷婷co.m| A久久| 五月丁香综合| 另类图片五月激情| 伊人久久艹| 丁香六月天之亚州热女| 9|无码久久久久久| 伊人网色婷婷五月天| 久久精品视频99| 天天搞天天色综合| 色婷婷久久综合中文久久一本| 思思久久99热只有频精品66| 色五月自偷自拍婷婷婷婷| 91偷拍视频| 色婷婷www| 日本天天色| 久久免费丁香| 小视频一区| 激情五月天婷婷丁香| 色综合色色色色色色综合| 久思思热视频在线观看| 五月天婷婷丁香基地在线观看| 国产精品第一国产精品| 久久五月激情综合| 婷婷五亚洲| 日本天天色| 欧美123区免| 2025最新亚洲激情在线| 婷婷99视频精品| 96丁香婷婷九月蜜桃综合久久| 丁香五月自拍| 五月天色五月| 国产精品成人网址| 热无码A∨| 天天干天天干天天操| 探花搜索结果 - 黄上黄| www.狠狠干com| 五月天激情四射| 操操日韩| 九九综合久久| 成人做爰高潮A片免费视频 | www.超碰在线| 丁香五月婷婷啪啪| 激情综合五月色在线| 97人人操人人干| 激情婷婷九月| 九九色综合九九色| 一本色道久久综合狠狠躁一二三| 五月天色狠狠| 狠狠99| 丁香六月激情综合网| 色综合天天天天做夜夜| 婷婷六月香| 国产精品A片| AA片在线观看视频在线播放| 思思色播| 91九色网| 亚洲国产色婷婷| 九九RE视频在线精品| 99色在线观看| 精品无吗va视频免费观看| 欧美A片在线视频免费观看| 五月天自拍视频| 久久黄色片| 五月天婷婷乱| 婷婷99视频全集高清|