成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Linux為什么區分內核空間和用戶空間?

系統 Linux
程序如果要被CPU執行,就得編譯成CPU可以執行的指令,一大堆的程序就變成了一堆的指令。

一個操作系統它也是一堆程序組成的,可以想象CPU的指令是很多的,但是這么多的指令中,有些指令涉及到系統底層的東西,如果有些指令錯用或者使用不當是非常危險的,比如清內存、設置時鐘、修改用戶訪問權限、分配系統資源等等,可能導致系統崩潰。

CPU將這些指令進行了分類,分為特權指令和非特權指令,不讓所有程序都能使用所有指令,如果所有程序都能使用,那系統崩潰就會變得非常常見了。

操作系統的核心是內核,它是獨立于普通的應用程序,負責管理系統的進程、內存、設備驅動程序、文件和網絡系統,決定著系統的性能和穩定性,所以一定要保證內核的安全。

為了保護內核的安全,操作系統一般都限制用戶進程不能直接操作內核,在32位操作系統總的地址空間4G(2^32 = 4GB),實現這個限制的方式就是操作系統將總的地址空間分為兩個部分,對于Linux操作系統:

1. 高位的1G空間(0xC000 0000 - 0xFFFF FFFF)分配給內核,稱為內核空間,內核程序運行在內核空間,對應的進程就處于內核態(管態)。

2. 另外3G空間(0x0000 0000 - 0xBFFF FFFF)分配給用戶使用,稱為用戶空間,用戶程序運行在用戶空間,對應的進程處于用戶態(目態)。

引用之前寫的一篇文章(你該知道你寫的程序的內存布局)的圖

總之,有1G的內核空間是每個進程共享的,剩下的3G是進程自己使用的。

在內核態下,CPU可以執行指令系統的全集,也就是說內核態進程可以調用系統的一切資源,但是特權指令只能在內核態下執行,它不直接提供給用戶使用,用戶態下只能使用非特權指令,也就是說用戶態進程只能執行簡單運算,不能直接調用系統資源。

那么CPU如何知道當前是否可以使用特權指令?

有一個標志寄存器,又稱程序狀態字寄存器PSW(Program Status Word),有一個標志位來標識處理器當前處于哪一個狀態,比如0是處于用戶態,1是處于內核態,有了這個狀態就能判斷該使用什么指令。

Linux操作系統通過區分內核空間和用戶空間的這種設計,將操作系統代碼和用戶程序代碼分開,這樣即使在某一個應用程序出錯,也不會影響到操作系統,再說,Linux操作系統是多任務系統,其它應用程序不也還能運行。

現代操作系統基本上都是分內核空間和用戶空間的做法,來保護操作系統自身的安全性和穩定性,這也是區分內核空間和用戶空間的本質。


責任編輯:華軒 來源: 今日頭條
相關推薦

2021-01-14 09:37:20

內核空間用戶

2021-01-08 05:59:39

Linux應用程序Linux系統

2017-08-24 11:00:56

Linux用戶空間內核空間

2021-03-22 11:43:07

Linux運維Linux系統

2016-08-10 12:52:31

2012-05-21 17:02:19

Linux審計

2009-09-07 09:20:34

2010-05-13 09:45:26

Linux地址空間

2009-12-17 15:18:47

2009-12-07 09:31:23

Linux系統調用表地址

2009-10-22 13:06:00

Linux磁盤管理

2018-05-18 08:43:27

Linux內存空間

2023-02-13 15:03:33

JDKJavaHotSpot

2019-08-26 19:24:55

Podman容器Linux

2022-03-03 18:39:01

Harmonyioremap鴻蒙

2019-01-29 10:10:09

Linux內存進程堆

2019-07-10 12:40:29

Linux虛擬地址空間物理地址空間

2023-04-13 08:09:35

操作系統虛擬地址內存

2023-09-28 07:34:23

JDK廢棄永久代元空間

2009-11-02 18:03:25

Oracle用戶表空間
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 午夜性色a√在线视频观看9 | 美女福利网站 | 天天躁日日躁狠狠的躁天龙影院 | 久久伊| 91在线视频播放 | 亚洲在线观看视频 | 国产精品亚洲成在人线 | 精品久久国产 | 一a一片一级一片啪啪 | 国产免费一区二区三区 | 亚洲三级av | 国产美女在线观看 | 国产第一页在线观看 | 亚洲一区二区三区免费观看 | 亚洲午夜av久久乱码 | 欧美黄色性生活视频 | 欧洲亚洲一区二区三区 | 99精品国产一区二区三区 | 91社区在线观看高清 | 日韩av在线免费 | 欧美亚洲国产一区二区三区 | 欧美久久一区二区 | 观看av| 国产精品久久久久久久一区探花 | 亚洲一区电影 | 毛片韩国 | aaa在线观看| 本道综合精品 | 亚洲国产成人精品久久久国产成人一区 | 日本一区二区高清不卡 | 欧美激情欧美激情在线五月 | 放个毛片看看 | 一区二区免费看 | 亚洲精品电影 | 欧美日韩精品一区二区三区蜜桃 | 91精品久久久久久久久久入口 | 免费在线色| 欧美aⅴ| 欧美日韩精品免费 | 中文字幕成人av | 国产一区视频在线 |