目態與管態操作系統
多數計算機系統將CPU執行狀態分爲目態(用戶態)與管態(內核態),CPU的狀態屬於程序狀態字PSW的一位,CPU交替執行操做系統程序和用戶程序。設計
1. CPU設計中的目態、管態指針
目態指非特權狀態,代碼的執行被硬件限定,如不能讀寫其餘進程的私有存儲空間(程序的用戶空間)以及操做系統的內核空間。blog
管態又叫特權態、系統態或內核態。CPU在管態下能夠執行指令系統的全集,操做系統在管態下運行。進程
x86結構擁有四種級別,級別最高的是ring 0,也就是核心態。級別最低的是ring 3,也就是用戶態。ring 1和ring 2設計成供驅動程式使用,但通常不多使用。內存
2. 操做系統設計中的目態、管態it
內核禁止在目態下的應用程序寫入系統配置文件、殺掉其餘用戶的進程、重啓系統等。 操做系統中的用戶態與用戶權限等級不是一個概念,普通用戶、管理員(root)或者超級用戶(superuser)開啓的程序均可能運行在用戶態和內核態。操做系統中的用戶態代碼運行在CPU的用戶態,實現了從硬件上對非法程序的隔離禁止控制。與CPU設計中的用戶態相比,操做系統對用戶態有更加複雜的權限設定,好比在Unix系統中,運行在用戶態的代碼,不能偵聽1024如下的端口號,以假裝成常見的服務,而超級用戶運行的代碼則有權這樣作。程序在目態下執行特權指令,硬件將發生中斷,由操做系統得到控制,特權指令被禁止執行,這樣能夠防止用戶程序有意或無心的破壞系統。 內存管理
用戶空間與內核空間class
操做系統採用虛擬內存管理方式,將內部存儲器映射爲高地址段內核空間和低地址段用戶空間兩個部分。程序,在內核空間中運行稱爲內核態,在用戶空間中運行稱爲用戶態。配置