久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合

站長資訊網(wǎng)
最全最豐富的資訊網(wǎng)站

linux中的上下文是什么

在linux中,上下文又叫CPU上下文,是CPU運(yùn)行任何任務(wù)前,必須依賴的環(huán)境,包括CPU寄存器和程序計數(shù)器;而上下文切換就是先把前一個任務(wù)的CPU上下文(也就是CPU寄存器和程序計數(shù)器)保存起來,然后加載新任務(wù)的上下文到這些寄存器和程序計數(shù)器,最后再跳轉(zhuǎn)到程序計數(shù)器所指的新位置,運(yùn)行新任務(wù)。

linux中的上下文是什么

程序員必備接口測試調(diào)試工具:立即使用
Apipost = Postman + Swagger + Mock + Jmeter
Api設(shè)計、調(diào)試、文檔、自動化測試工具
后端、前端、測試,同時在線協(xié)作,內(nèi)容實時同步

本教程操作環(huán)境:linux7.3系統(tǒng)、Dell G3電腦。

1.什么是上下文?

Linux是一個多任務(wù)的操作系統(tǒng),它支持遠(yuǎn)大于CPU數(shù)量的任務(wù)同時運(yùn)行,當(dāng)然,這些任務(wù)實際上并不是真正的在同時運(yùn)行,而是系統(tǒng)在很短的時間內(nèi),將CPU輪流分配給他們,給用戶造成很多任務(wù)同時運(yùn)行的錯覺。

在每個任務(wù)運(yùn)行前, CPU 都需要知道任務(wù)從哪里加載,又從哪里開始運(yùn)行。也就是說,需要系統(tǒng)事先給他設(shè)置好 CPU 寄存器和程序計數(shù)器(Program Counter,PC)

  • CPU 寄存器:是 CPU 內(nèi)置的容量小、但速度極快的內(nèi)存

  • 程序計數(shù)器:是用來存儲 CPU 正在執(zhí)行的指令位置、或者即將執(zhí)行的下一條指令位置

綜上所述,我們就有答案了

什么是上下文:

我們通常說的上下文又叫CPU上下文,是CPU運(yùn)行任何任務(wù)前,必須依賴的環(huán)境,包括CPU 寄存器和程序計數(shù)器

上下文切換:就是先把前一個任務(wù)的 CPU 上下文(也就是 CPU 寄存器和程序計數(shù)器)保存起來,然后加載新任務(wù)的上下文到這些寄存器和程序計數(shù)器,最后再跳轉(zhuǎn)到程序計數(shù)器所指的新位置,運(yùn)行新任務(wù)。

2.上下文切換詳細(xì)介紹

根據(jù)CPU切換運(yùn)行任務(wù)的不同,又可以分為進(jìn)程上下文切換線程上下文切換中斷上下文切換

我們先了解下面2個上下文切換涉及的知識點(diǎn)系統(tǒng)調(diào)用、進(jìn)程運(yùn)行態(tài)

進(jìn)程的運(yùn)行態(tài):

Linux 按照特權(quán)等級,把進(jìn)程的運(yùn)行空間分為內(nèi)核空間用戶空間 。在這兩種空間中運(yùn)行的進(jìn)程狀態(tài)分別稱為內(nèi)核態(tài)用戶態(tài)

  • 內(nèi)核空間(Ring 0):具有最高權(quán)限,可以直接訪問所有資源(讀取文件,)

    • 分配內(nèi)存、IO操作、創(chuàng)建子進(jìn)程……都是內(nèi)核操作。這也表明,當(dāng)IO操作頻繁時,System參數(shù)會很高。

  • 用戶空間(Ring 3):只能訪問受限資源,不能直接訪問內(nèi)存等硬件設(shè)備,必須通過系統(tǒng)調(diào)用進(jìn)入到內(nèi)核中,才能訪問這些特權(quán)資源

    • 典型的用戶態(tài)空間程序有:Shells、數(shù)據(jù)庫、web服務(wù)器、PHP程序、Java程序……

在linux系統(tǒng)使用top命令查看cpu時,能看到user和system兩項,對應(yīng)的就是用戶態(tài)和內(nèi)核態(tài)占用的cpu資源

如上,我們的web服務(wù)是運(yùn)行在用戶態(tài)下的,對文件的io沒有權(quán)限,當(dāng)需要讀取文件時,就涉及到系統(tǒng)調(diào)用

系統(tǒng)調(diào)用:

從用戶態(tài)到內(nèi)核態(tài)的轉(zhuǎn)變,需要通過系統(tǒng)調(diào)用來完成。比如查看文件時,需要執(zhí)行多次系統(tǒng)調(diào)用:open、read、write、close等。系統(tǒng)調(diào)用的過程如下:

  • 把 CPU 寄存器里原來用戶態(tài)的指令位置保存起來;

  • 為了執(zhí)行內(nèi)核代碼,CPU 寄存器需要更新為內(nèi)核態(tài)指令的新位置,最后跳轉(zhuǎn)到內(nèi)核態(tài)運(yùn)行內(nèi)核任務(wù);

  • 系統(tǒng)調(diào)用結(jié)束后,CPU 寄存器需要恢復(fù)原來保存的用戶態(tài),然后再切換到用戶空間,繼續(xù)運(yùn)行進(jìn)程;

所以,一次系統(tǒng)調(diào)用的過程,其實是發(fā)生了兩次 CPU 上下文切換。

進(jìn)程上下文切換?

  • 進(jìn)程執(zhí)行終止,它之前順頌的CPU就會被釋放出來,這時就從就緒隊列中取出下一個等待時間片的進(jìn)程;

  • 當(dāng)某個進(jìn)程的時間片耗盡,它就會被系統(tǒng)掛起,切換到其他等待CPU的進(jìn)程運(yùn)行;

  • 某個進(jìn)程因為需要的系統(tǒng)資源比較大(比如內(nèi)存不足),這時候該進(jìn)程會被掛起,系統(tǒng)會調(diào)度其他進(jìn)程執(zhí)行;

  • 當(dāng)有優(yōu)先級更高的進(jìn)程(系統(tǒng)操作進(jìn)程)需要時間片,為了保證優(yōu)先級更高的進(jìn)程能夠執(zhí)行,當(dāng)前進(jìn)程會被掛起;

  • 如果當(dāng)前進(jìn)程中有sleep函數(shù),他也會被掛起;

線程的上下文切換?

對操作系統(tǒng)來說,線程是最小的執(zhí)行單元,進(jìn)程是最小的資源管理單元。說白了,所謂內(nèi)核中的任務(wù)調(diào)用,實際上的調(diào)度對象是線程;而進(jìn)程只是給線程提供了虛擬內(nèi)存、全局變量等資源。所以,對于現(xiàn)場和進(jìn)程,我們可以這么理解:

  • 當(dāng)進(jìn)程只有一個線程時,可以認(rèn)為進(jìn)程就等于線程。

  • 當(dāng)進(jìn)程擁有多個線程時,這些線程會共享父進(jìn)程的資源(即共享相同的虛擬內(nèi)存和全局變量等資源)。這些資源在上下文切換時是不需要修改的。

  • 另外,線程也有自己的私有數(shù)據(jù),比如棧和寄存器等,這些在上下文切換時也是需要保存的。

綜上,線程上下文切換有兩種情況:

  • 前后兩個線程屬于不同進(jìn)程,因為資源不共享,所以切換過程就跟進(jìn)程上下文切換是一樣的;

  • 前后兩個線程屬于同一個進(jìn)程,因為虛擬內(nèi)存是共享的,所以在切換時,虛擬內(nèi)存這些資源就保持不動,只需要切換線程的私有數(shù)據(jù)、寄存器等不共享的數(shù)據(jù)。

中斷上下文切換?

中斷處理會打斷進(jìn)程的正常調(diào)度和執(zhí)行。在打斷其他進(jìn)程時,需要將進(jìn)程當(dāng)前的狀態(tài)保存下來,中斷結(jié)束后,進(jìn)程仍然可以從原來的狀態(tài)恢復(fù)運(yùn)行。

中斷上下文切換并不涉及到進(jìn)程的用戶態(tài)。所以,即便中斷過程打斷了一個正處在用戶態(tài)的進(jìn)程,也不需要保存和恢復(fù)這個進(jìn)程的虛擬內(nèi)存、全局變量等用戶態(tài)資源。中斷上下文,其實只包括內(nèi)核態(tài)中斷服務(wù)程序執(zhí)行所必須的狀態(tài),包括 CPU 寄存器、內(nèi)核堆棧、硬件中斷參數(shù)等。

小結(jié)

根據(jù)Tsuna的測試報告,每次上下文切換都需要幾十納秒到數(shù)微妙的CPU時間,這個時間還是相當(dāng)可觀的。

不管是哪種場景導(dǎo)致的上下文切換,你都應(yīng)該知道:

  • CPU上下文切換,是保證Linux系統(tǒng)正常工作的核心功能之一,一般情況下不需要我們特別關(guān)注。

  • 但過多的上下文切換,會把CPU時間消耗在寄存器、內(nèi)核棧以及虛擬內(nèi)存等數(shù)據(jù)的保存和恢復(fù)上,從而縮短進(jìn)程真正運(yùn)行的時間,導(dǎo)致系統(tǒng)的整體性能大幅下降。

贊(0)
分享到: 更多 (0)
?
網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號
久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合
精品国产三区在线| 久久国产日韩| 亚洲欧美视频| 伊人成人在线视频| 精品一区欧美| 国产精品毛片一区二区在线看| 国产精品丝袜在线播放| 国产a久久精品一区二区三区| 国产精品www.| 国产亚洲第一伦理第一区| 日本久久二区| 国产精品免费看| 中国女人久久久| 国内自拍视频一区二区三区| 亚洲播播91| 久久精品国产亚洲夜色av网站| 亚洲在线观看| 麻豆91精品视频| 综合国产在线| 国产亚洲一区| 亚洲制服少妇| 久久av免费| 日韩欧美一区二区三区在线观看| 国产综合视频| 日韩一区二区三区四区五区| 午夜国产精品视频| 日韩一区二区三区精品| 正在播放日韩精品| 欧美日韩精品一区二区视频| 国产欧美亚洲精品a| 亚洲精品在线国产| 一区二区亚洲精品| 国产日韩1区| 久久国产精品成人免费观看的软件| 一区二区三区午夜视频| 在线精品小视频| 尤物精品在线| 日韩一区二区三区精品视频第3页| 综合一区av| 中文字幕免费一区二区| 伊人精品在线| 亚洲无线一线二线三线区别av| 在线精品视频一区| 久久中文欧美| 日韩久久一区二区三区| 欧美欧美黄在线二区| 欧美va天堂| 久久99高清| 日韩高清不卡一区| 国产欧美日韩精品一区二区三区| 日本少妇精品亚洲第一区| 日韩中文字幕亚洲一区二区va在线| 欧美亚洲精品在线| 日韩高清在线观看一区二区| 日韩av一二三| 久久青草久久| 亚洲精品成人一区| 国产欧美高清| 蜜桃精品在线| 亚洲综合精品四区| 国产精品一线| 狠狠爱www人成狠狠爱综合网| 国产毛片久久久| 怡红院精品视频在线观看极品| 国产一精品一av一免费爽爽| 99久久www免费| 国产精品22p| 亚洲欧美久久| 日韩电影免费网站| 亚洲精品伊人| 久久国产中文字幕| 欧美aa在线视频| 久久亚洲国产精品一区二区| 国产精品福利在线观看播放| 日韩av资源网| 日韩精品一二三四| 亚洲无线一线二线三线区别av| 国产精品久久久久久久久久白浆 | 精品久久美女| 亚洲18在线| 亚洲深夜影院| 国产亚洲一区二区手机在线观看| 国产精品白丝久久av网站| 亚洲三级国产| 欧美日韩精品一本二本三本 | 在线精品小视频| 精品成人18| 亚洲一区二区三区四区五区午夜 | 国内自拍视频一区二区三区| 日韩欧美美女在线观看| 亚洲欧美伊人| 色在线视频观看| 麻豆一区二区99久久久久| 亚洲精品无播放器在线播放| 一区三区视频| 久久国产日本精品| 精品福利久久久| 国产精品777777在线播放 | 亚洲精品日韩久久| 国产视频一区三区| 久久亚洲成人| 国产真实久久| 天堂av在线| 福利在线一区| 美女在线视频一区| 色综合视频一区二区三区日韩 | 石原莉奈在线亚洲三区| 伊人精品一区| 99久久婷婷| 精品日韩一区| 久久精品国产99国产精品| 国产精品.xx视频.xxtv| 国产剧情一区二区在线观看| 日韩欧美一区二区三区在线视频| 麻豆国产在线| 另类亚洲自拍| 亚洲欧美日韩一区在线观看| 精品一区在线| 午夜国产精品视频免费体验区| 91精品在线观看国产| 欧洲一区二区三区精品| 欧美13videosex性极品| 92国产精品| 久久激情一区| 日韩欧美精品一区| 亚洲成人二区| 天堂网在线观看国产精品| 亚洲国产日韩欧美在线| 黄页网站一区| 国产免费成人| 亚洲一级大片| 欧美日韩亚洲三区| 欧美精品97| 日韩成人a**站| 91精品啪在线观看国产18| 亚洲精品极品少妇16p| 另类国产ts人妖高潮视频| 亚洲精品日韩久久| 国产亚洲欧美日韩精品一区二区三区| 啪啪亚洲精品| 国产一区二区三区网| 欧美日韩尤物久久| 99综合视频| 日韩av一二三| 久久精品国产一区二区| 欧美久久天堂| 国产精品88久久久久久| 亚洲一区二区免费在线观看| 日韩av在线播放网址| 久久精品免费一区二区三区| 亚洲免费精品| 久久高清一区| 欧美福利一区| 日韩中文av| 天堂成人免费av电影一区| 欧美一区不卡| 日本视频中文字幕一区二区三区| 亚洲1区在线观看| 国产精品久久| 亚洲久草在线| 久久一区二区中文字幕| 日韩国产在线一| 国产一区二区高清| 亚洲bt欧美bt精品777| 久久精品欧洲| 成人av二区| 日本综合视频| 精品久久国产一区| 欧美精品一卡| 日本在线不卡视频一二三区| 精品国产亚洲日本| 午夜精品婷婷| 国产精品伊人| 久久精品影视| 日韩av一区二| 91精品久久久久久久久久不卡| 亚洲欧美久久精品| 国产精品麻豆久久| 亚洲专区视频| 国产精品毛片久久| 天海翼精品一区二区三区| 国产精品xx| 国产精品黑丝在线播放| 精品国产精品久久一区免费式| 麻豆精品蜜桃| 天堂精品久久久久| 日韩免费看片| 视频一区中文字幕精品| 久久夜夜操妹子| 国产探花一区在线观看| 日韩高清不卡| 欧美在线日韩| 不卡av一区二区| 免费一级欧美在线观看视频| 影院欧美亚洲| sm久久捆绑调教精品一区| 日韩不卡一区二区| 欧美日韩国产传媒| 国产福利一区二区三区在线播放| 激情丁香综合|