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

進入內核態(tài)究竟是什么意思?

系統(tǒng)
現(xiàn)代計算機里面,同時運行了很多程序,比如Office軟件、瀏覽器、QQ、還有你現(xiàn)在正在看這篇文章的微信,這些程序運行起來就是一個個的進程,每個進程都有各自的內存地址空間,為了防止大家越界,大打出手亂了規(guī)矩,得要有個管家來管理大家,這個管家就是操作系統(tǒng)。

 [[422147]]

知乎上有一個問題:

進入內核態(tài)究竟是什么意思?

暫且忘記這個問題,讓我們從另一個問題出發(fā),一步步引出這個問題的答案。

特權指令問題

現(xiàn)代計算機里面,同時運行了很多程序,比如Office軟件、瀏覽器、QQ、還有你現(xiàn)在正在看這篇文章的微信,這些程序運行起來就是一個個的進程,每個進程都有各自的內存地址空間,為了防止大家越界,大打出手亂了規(guī)矩,得要有個管家來管理大家,這個管家就是操作系統(tǒng)。

好了,不管是前面說的那些應用程序,還是操作系統(tǒng),本質上都是CPU去執(zhí)行的二進制程序指令吧,而一個CPU能夠執(zhí)行的所有指令都在它的指令集里面了。

試想一下,假如指令集中的所有指令都一視同仁,任何程序都可以使用這些指令,那會出現(xiàn)什么問題?

那操作系統(tǒng)的權威性如何保證?怎么管理這一堆進程,還不反了天了?因為誰都可以執(zhí)行這些指令,大家都是平起平坐啊!

所以,必須將指令集中的一部分比較敏感的劃出來,這部分只能讓操作系統(tǒng)來執(zhí)行,其他程序不能執(zhí)行,以此來捍衛(wèi)操作系統(tǒng)的地位!

哪些指令比較敏感?

涉及到操作系統(tǒng)管理計算機資源的指令就是敏感指令。

以x86架構的CPU為例,中斷的打開與關閉、外部設備的輸入與輸出、進程地址空間基地址CR3寄存器的修改、中斷描述符表IDT基地址寄存器的修改、全局描述符表LDT基地址寄存器的修改···這些都是敏感操作,是普通應用程序絕對不能碰的指令:

  1. cli 
  2. sti 
  3. in 
  4. out 
  5. lidt 
  6. lgdt 
  7. ··· 

那如何做到讓這些敏感指令操作系統(tǒng)能夠執(zhí)行,而普通程序又不能執(zhí)行呢?

CPU在執(zhí)行指令的時候又沒辦法區(qū)分這條指令是應用程序的還是操作系統(tǒng)的,它只是一個沒有感情的執(zhí)行機器,只會悶頭執(zhí)行···

為了解決這個問題,x86 CPU搞了個特權級出來,或者說是CPU提供了四個工作模式,從Ring0-Ring3,每一個模式又稱為一個環(huán),一共四個環(huán)。0環(huán)是最高權限模式,可以執(zhí)行所有指令。Ring3是最低權限模式,只能執(zhí)行指令集中的一部分指令。

也就是說,CPU搞了四個工作模式出來,只有工作在Ring0模式下,才能執(zhí)行上面的那些特權指令,在其他模式下如果要去執(zhí)行那些指令,CPU就會拋出異常!

有了CPU的這一硬件技術支持,問題就好辦了,我們可以讓CPU在執(zhí)行操作系統(tǒng)代碼的時候運行在Ring0模式,在執(zhí)行普通應用程序代碼的時候運行在Ring3模式,這樣就解決了特權指令的問題。

內核地址空間

但這里又回到之前那個問題了:CPU如何知道現(xiàn)在執(zhí)行的代碼是不是操作系統(tǒng)的呢?

一個最容易想到的解決辦法就是:把操作系統(tǒng)的代碼放在內存中一個特殊的區(qū)域,當CPU執(zhí)行的指令地址來自這個區(qū)域時,就切換工作模式到Ring0,離開這個區(qū)域后,就切換到其他模式。

光這樣還不夠,還得加一個措施:這個區(qū)域不能讓應用程序來訪問,否則誰都能來讀寫,那還了得?

所以,除了指令增加特權級以外,在內存的訪問上,也得加上特權級。

x86架構的CPU是基于分段式+分頁式相結合的內存管理方式,所以Intel倒騰了幾下,給不同的內存段限定了不同的訪問模式,并把它記錄到了段的描述符中。

在訪問內存的時候,CPU就會拿當前段寄存器中標示的權限和要訪問的目標內存所在段段訪問權限進行對比,符合要求才能訪問,否則也會拋出異常!

上面這一部分有一些抽象了,簡單來說,操作系統(tǒng)在內存中圈了一塊地,把自己的代碼放在這塊地中,并設置了訪問權限:閑人免進,非Ring0權限禁止入內。

隨后,操作系統(tǒng)又把自己圈的這塊地映射到了每一個進程的虛擬地址空間中,這樣一來,所有進程抬頭一看自己的進程地址空間,都會看到它了:好家伙,這一塊區(qū)域被操作系統(tǒng)占了,咱也不敢寫,咱也不敢看。

操作系統(tǒng)圈的這塊地,就是內核地址空間!一般位于進程地址空間中較高的區(qū)域,以32位下Windows為例,它是在0x80000000~0xFFFFFFFF這個區(qū)域。

我們把位于這個空間中的代碼叫做操作系統(tǒng)的內核代碼,有時候也簡稱內核。而把應用程序代碼所活動的區(qū)域叫做用戶地址空間。

進一步,我們常把CPU執(zhí)行內核代碼的模式稱為內核態(tài),把執(zhí)行用戶程序時的模式稱為用戶態(tài)。

CPU執(zhí)行代碼的過程,就是不斷游走于用戶態(tài)和內核態(tài)的過程。

進入和離開

現(xiàn)在還有最后一個問題:內核態(tài)的進入和離開怎么實現(xiàn)?

假如沒有任何約束,那普通應用程序,不是隨便執(zhí)行一條jmp指令就能跳進內核地址空間執(zhí)行了?

應用程序可以隨便進進出出,高興了就來一個內核一日游,那還不天下大亂了?

況且話說回來,內核所在的內存空間因為權限保護,應用程序也是沒辦法jmp過去的,前面不說了嗎:閑人免進!

那怎么辦呢?

CPU提供了專門的入口,用來從用戶態(tài)進入內核態(tài)。

這幾個入口是:

1、中斷:

當硬件設備有消息來了之后,會通過中斷通知CPU,比如你移動了鼠標,敲下了鍵盤,收到了一個數(shù)據(jù)包,收到了時鐘的滴答聲···

當中斷發(fā)生時,CPU會將當前執(zhí)行的上下文保存到棧中,轉入內核執(zhí)行中斷處理程序。

通過中斷進入內核,入口是記錄在中斷描述符表IDT中的,由操作系統(tǒng)在系統(tǒng)啟動的時候就安排好了。

2、異常:

當CPU執(zhí)行過程中發(fā)現(xiàn)一些異常情況,比如執(zhí)行除法指令的除數(shù)是0,訪問的內存地址無效,或者訪問的內存地址屬于特權頁面等這些情況,CPU都會觸發(fā)異常。

異常和中斷的流程有一些類似,遇到異常時,CPU也會將執(zhí)行的上下文保存在棧中,轉入內核執(zhí)行中斷處理程序。

通過異常進入內核的入口和中斷一樣,也是記錄在IDT中的,同樣是操作系統(tǒng)在系統(tǒng)啟動的時候就安排好了。

3、系統(tǒng)調用:

在系統(tǒng)編程中,我們經常會調用很多操作系統(tǒng)提供的API函數(shù),比如文件操作、內存操作、網(wǎng)絡操作等等,這些函數(shù)都是操作系統(tǒng)封裝出來的應用程序編程API,只是一個接口,真正的底層實現(xiàn)是位于內核中的系統(tǒng)調用函數(shù)。

應用層上的API通過CPU專門的指令(如sysenter/syscall)進入內核來完成對應的功能,進入內核后的入口同樣也是操作系統(tǒng)提前安排好了的。

總結

最后,讓我們回答最開始知乎的那個問題:進入內核態(tài)究竟是什么意思?

CPU為了進行權限管控,引入了特權級的概念,CPU工作在不同的特權級下能夠執(zhí)行的指令和能夠訪問的內存區(qū)域是不一樣的。

計算機在啟動之初,CPU運行在高特權級下,操作系統(tǒng)率先獲得了執(zhí)行權限,在內存中圈了一塊地,將自己的程序代碼放了進去,并設定了這一部分內存只有高特權級才能訪問。

隨后,操作系統(tǒng)在創(chuàng)建進程的時候,都會把自己所在的這塊內存區(qū)域映射到每一個進程地址空間中,這樣所有進程都能看到自己的進程空間中,有一塊叫“內核”的區(qū)域,這一塊區(qū)域是無法擅入的。

所謂的“進入內核態(tài)”是指:當中斷、異常、系統(tǒng)調用等情況發(fā)生的時候,CPU切換工作模式到高特權級模式Ring0,并轉而執(zhí)行位于內核地址空間處的代碼。

看完這篇,你明白進入內核態(tài)是怎么一回事了嗎?

看不懂沒關系,下面用一張圖來總結一下:

[[422148]]

怎么樣,這下懂了吧?

本文轉載自微信公眾號「編程技術宇宙」,可以通過以下二維碼關注。轉載本文請聯(lián)系編程技術宇宙公眾號。

 

責任編輯:武曉燕 來源: 編程技術宇宙
相關推薦

2014-07-28 08:28:38

Windows

2014-08-07 10:32:02

Windows微軟

2022-02-07 15:20:53

去中心化加密經濟學加密貨幣

2011-02-16 16:13:40

Debian

2017-11-29 10:50:54

機械硬盤SSD數(shù)據(jù)

2018-09-10 13:47:21

數(shù)據(jù)科學統(tǒng)計學決策

2019-05-27 15:30:44

Node.jsJavaScript前端

2015-09-29 09:47:14

2015-08-26 09:54:19

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

2009-07-30 14:43:30

認識BSM

2022-06-13 09:51:35

UWB超寬帶無線載波通信技術

2011-08-04 13:24:28

IT運維

2012-05-28 22:49:50

PureView

2025-06-25 14:18:36

LAMLAMsGUI

2020-07-08 08:09:08

邊緣計算邊緣云云平臺

2020-12-17 17:33:47

MLOps大數(shù)據(jù)數(shù)據(jù)

2021-08-09 05:19:08

Provider 前端前端代碼

2021-03-08 21:44:33

以太坊區(qū)塊鏈比特幣

2014-06-27 09:35:16

機器學習

2012-09-17 09:52:20

云計算云存儲公有云
點贊
收藏

51CTO技術棧公眾號

欧美激情一区二区三区久久久| 91麻豆精品国产91久久久久久久久| 极品日韩久久| av手机天堂网| 久久美女视频| 欧美sm美女调教| 黄色高清无遮挡| 国产激情在线观看| 91视频精品在这里| 91精品啪aⅴ在线观看国产| 精品无码m3u8在线观看| 国产一区99| 欧美大黄免费观看| 亚洲激情在线观看视频| 成年人国产在线观看| 欧美高清在线视频| 精品视频一区二区| 国产精品视频在线观看免费| 销魂美女一区二区三区视频在线| 日韩中文字在线| 亚洲av无码国产精品久久| 中文成人激情娱乐网| 欧美性生活大片免费观看网址| 熟女熟妇伦久久影院毛片一区二区| 日本天堂影院在线视频| 国产精品亚洲综合一区在线观看| 国产精品久久久久久久久久99 | 在线观看不卡的av| 日韩天堂av| 欧美美女18p| 日本女人性生活视频| 日本亚洲不卡| 亚洲二区在线播放视频| 九九九九九九九九| 成人黄页网站视频| 粉嫩av一区二区三区免费野| 国产女人18毛片| 色三级在线观看| 国产日韩欧美精品一区| 久久久久久久久久久久久久久久av | 亚洲一区二区三区无吗| 在线一区二区日韩| 亚洲天堂视频一区| 综合干狼人综合首页| 亚洲成人激情在线| 999久久久| 日韩欧美在线电影| av小说天堂网| 久久精品国产99国产| 国产福利精品在线| 日韩手机在线视频| 亚洲在线视频| 97av在线视频| 特级做a爱片免费69| 激情综合在线| 国内精品美女av在线播放| 欧美色图亚洲视频| 伊人久久大香线| 另类视频在线观看| 欧美性生交大片| 99视频精品全部免费在线视频| 在线性视频日韩欧美| 亚洲色图欧美色| 99久久99热这里只有精品| 色妞在线综合亚洲欧美| 亚洲怡红院在线观看| 亚州av乱码久久精品蜜桃| 精品国产网站地址| 久久中文免费视频| 伊人激情综合| 青青久久av北条麻妃海外网| 日本黄色一级视频| 免费人成精品欧美精品| 91精品免费看| 亚洲女同志亚洲女同女播放| 成人动漫av在线| 欧美一区二区三区精美影视| 无遮挡的视频在线观看| 亚洲欧美一区二区在线观看| 青青视频免费在线观看| 国产理论电影在线| 日韩欧美高清在线视频| 国产三级日本三级在线播放| 亚洲伊人精品酒店| 精品国产一区a| 麻豆精品免费视频| 99精品在线观看| 国内精品小视频| 伊人久久久久久久久久久久| 久久精品噜噜噜成人av农村| 91免费版网站在线观看| 五月婷婷丁香网| 国产精品嫩草99a| 免费看欧美黑人毛片| videos性欧美另类高清| 欧美日韩精品欧美日韩精品一 | 日韩精品视频在线观看视频| 手机在线观看av| 欧美欧美欧美欧美首页| 精品少妇人妻av一区二区三区| 奇米亚洲欧美| 九九精品在线播放| 老熟妇一区二区三区| 国产精品一区二区视频| 欧美久久久久久一卡四| 亚洲精品白浆| 欧美性三三影院| 2一3sex性hd| 亚洲国产精品久久久天堂 | 免费观看中文字幕| 吉吉日韩欧美| 精品国产精品网麻豆系列| 手机看片福利视频| 亚洲国产国产亚洲一二三| 国产精品日韩专区| 青梅竹马是消防员在线| 亚洲综合偷拍欧美一区色| 久久精品影视大全| 欧美日韩一本| 欧美日韩国产第一页| 中文字幕视频二区| av毛片久久久久**hd| 中国 免费 av| 深夜视频一区二区| 亚洲加勒比久久88色综合| 日韩欧美综合视频| 蜜臀久久久99精品久久久久久| 国产伦精品一区二区三区照片91| 色开心亚洲综合| 91国偷自产一区二区三区观看| 亚洲麻豆一区二区三区| 亚洲在线久久| 成人黄色影片在线| 91美女视频在线| 色婷婷国产精品久久包臀| 国产午夜在线一区二区三区| 亚洲成人最新网站| 成人激情视频在线播放| 91美女视频在线| 欧美日韩在线播| 91狠狠综合久久久久久| 日韩精品电影在线| 日韩经典在线视频| 精品亚洲美女网站| 亚洲欧美制服第一页| 91视频免费网址| 99久久久无码国产精品| 9久久9毛片又大又硬又粗| 大伊香蕉精品在线品播放| 久久久久久久国产精品| 精品久久国产视频| 亚洲精选免费视频| 女人扒开双腿让男人捅| 欧美视频官网| aa成人免费视频| 操喷在线视频| 日韩大片免费观看视频播放| 日本黄色片视频| 久久色视频免费观看| 国产免费一区二区三区视频| 久久成人av| 国产成人一区二区三区| av大片在线播放| 欧美电影一区二区三区| 在线观看美女av| 成人h精品动漫一区二区三区| 精品少妇在线视频| 午夜欧洲一区| 国产精品狼人色视频一区| 日本高清视频在线播放| 欧美一区二区私人影院日本| 超碰手机在线观看| aaa国产一区| 九热视频在线观看| 亚洲成av人片一区二区密柚| 97神马电影| 忘忧草在线影院两性视频| 亚洲欧洲国产一区| 国产又粗又长视频| 一二三区精品福利视频| 丰满大乳奶做爰ⅹxx视频| 三级精品在线观看| 穿情趣内衣被c到高潮视频| 东京久久高清| 国产成人亚洲精品| 三级资源在线| 亚洲欧美日韩一区二区在线| 国产精品久久久久久无人区| 亚洲一区二区欧美| 精品成人无码一区二区三区| 国产精品中文字幕一区二区三区| 成人黄色av片| 91综合网人人| 精品婷婷色一区二区三区蜜桃| 久久天堂av| 欧美黄色性视频| 99riav在线| 欧美精品一区二区三区高清aⅴ | 亚洲国产精品小视频| 人人妻人人爽人人澡人人精品| 亚洲另类在线一区| 天天躁日日躁aaaxxⅹ| 国产自产高清不卡| 欧美视频第三页| 午夜激情一区| 亚洲国产精品视频一区| 国产精品xxxav免费视频| 国产精品久久久久久久av大片| 国产精品探花在线| 日韩一区视频在线| 深夜福利免费在线观看| 日韩一区二区在线观看视频 | 欧美日韩成人一区二区三区| www.久久99| 国产精品美女久久久久久免费| 黄色成人在线网| 久久亚洲一区二区三区四区五区高| 男女视频在线观看| 精品久久久久久综合日本欧美| 中文字幕 视频一区| 狠狠做深爱婷婷久久综合一区| 欧美黑人性猛交xxx| 国产农村妇女毛片精品久久麻豆| 国产真实乱人偷精品| 国产一区 二区 三区一级| 香蕉视频网站入口| 久久成人国产| 久久成人免费观看| 欧美午夜不卡| 蜜臀av.com| 一个色综合网| 丰满女人性猛交| 久久久精品久久久久久96| 色阁综合av| 国产在线日韩精品| 欧美日韩喷水| 九九精品在线| 欧美日韩在线精品| 最新亚洲精品| 欧美日韩亚洲综合一区二区三区激情在线| 国产精品视频3p| 国产欧美日本在线| 影音先锋成人资源网站| 精品久久免费| 亚洲aⅴ日韩av电影在线观看| 欧美jizz18| 91精品综合久久久久久五月天| 91成人在线| 国产精品r级在线| 日韩制服一区| 国产乱肥老妇国产一区二| 黄色精品视频网站| 国产自产女人91一区在线观看| 羞羞视频在线观看一区二区| 国产色综合天天综合网 | 亚洲欧洲一区| 97国产在线播放| 香蕉精品999视频一区二区 | 性欧美大战久久久久久久免费观看| 夜夜春成人影院| 欧美日本亚洲| 日韩欧美字幕| 国产精品av免费观看| 亚洲成人中文| 国产成人a亚洲精v品无码| 久久国产一二区| 美女网站色免费| 国产麻豆日韩欧美久久| 中文字幕一区二区三区人妻在线视频 | 国产黄色片在线播放| 中文字幕亚洲二区| 成人午夜在线影视| 午夜欧美不卡精品aaaaa| 裤袜国产欧美精品一区| 国产精品女主播视频| 精品视频一区二区三区| 精品一区二区国产| 欧美精品一二| 欧美少妇一区二区三区| 99精品国产99久久久久久福利| 久章草在线视频| 久草这里只有精品视频| 少妇献身老头系列| 久久一区二区视频| 亚洲一级生活片| 午夜精品久久久久久久久久| 天天干,天天干| 日韩一区二区在线观看| 亚洲欧美综合在线观看| 色阁综合伊人av| av美女在线观看| 国产精品免费电影| 成人自拍在线| 亚洲成人自拍| 日韩亚洲在线| 在线观看岛国av| 久久在线观看免费| a级片在线观看免费| 色又黄又爽网站www久久| 国产精品国产三级国产aⅴ| 亚洲国产中文字幕久久网| av国产在线观看| 欧美一区二三区| 欧美高清一级片| 水蜜桃亚洲一二三四在线| 天天插综合网| 激情五月亚洲色图| 成人a区在线观看| 欧洲美女女同性互添| 一本色道a无线码一区v| 成人av无码一区二区三区| 中文字幕日韩av| 无遮挡在线观看| 国产精品播放| 91精品国产乱码久久久久久| 国产黄色在线免费观看| 成人免费毛片嘿嘿连载视频| 午夜精产品一区二区在线观看的| 亚洲精品你懂的| 国产成人无码一区二区在线播放| 日韩视频一区二区| 最新国产在线观看| 欧美在线一级va免费观看| 在线一区二区三区视频| 亚洲春色综合另类校园电影| 亚洲一区观看| 国产成人精品无码片区在线| 一区二区三区资源| 国产孕妇孕交大片孕| 在线视频欧美日韩| 午夜无码国产理论在线| 久久亚洲高清| 亚洲欧洲一区| 男人网站在线观看| 亚洲高清不卡在线| 精品人妻无码一区二区三区蜜桃一| www日韩中文字幕在线看| 成人四虎影院| 亚洲国产精品www| 日本欧美久久久久免费播放网| 亚洲精品理论片| 色综合久久综合中文综合网| 亚洲 欧美 激情 小说 另类| 性色av一区二区三区| 激情av综合| 男人天堂1024| 2024国产精品| 欧美一区二区三区网站| 精品视频中文字幕| 欧美日韩免费看片| 欧美高清视频一区| 久久在线精品| a天堂中文字幕| 91官网在线免费观看| 成人三级黄色免费网站| 国产精品电影一区| 欧美国产小视频| 日韩精品视频网址| 伊人性伊人情综合网| 亚洲精品国产一区二| 国a精品视频大全| 亚洲裸色大胆大尺寸艺术写真 | 老司机一区二区三区| 精品人妻少妇嫩草av无码| 色婷婷综合激情| √天堂资源地址在线官网| 91香蕉亚洲精品| 亚洲先锋成人| av黄色在线免费观看| 欧美午夜精品免费| 二区在线播放| 国产一区二区三区奇米久涩| 亚洲综合国产| 中文字幕黄色网址| 日韩一区二区三区三四区视频在线观看| 亚洲区欧洲区| 精品中文字幕人| 日本vs亚洲vs韩国一区三区二区| 亚洲AV成人无码网站天堂久久| 欧美一区二区在线免费播放| а_天堂中文在线| 青娱乐一区二区| 国产精品一区二区三区99| 国产成人无码精品亚洲| 亚洲系列中文字幕| 欧州一区二区三区| www一区二区www免费| 国产精品久久看| 性感美女福利视频| 国产男女猛烈无遮挡91| 黄色欧美成人| 99久久99久久精品免费看小说.| 欧美一级xxx| 美女写真久久影院| 国产资源第一页| 国产欧美久久久精品影院| 性一交一乱一乱一视频| 国产精品678| 国产欧美高清| 污污的视频在线免费观看|