ARM處理器模式

2021-06-04 03:00:39 字數 1249 閱讀 6266

cpsr暫存器

arm v4的cpsr暫存器(和儲存它的spsr暫存器)中的位分配如下圖所示。

處理器模式決定了哪些暫存器是活動的以及對cpsr訪問權。

處理器模式要麼是特權模式,要麼是非特權模式。

特權模式允許對cpsr的完全讀/寫訪問;

與些相反,非特權模式只允許對cpsr的控制域進行讀訪問,但允許對條件標誌的讀/寫訪問。

具體共有7種處理器模式。

6種特權模式(前5種也稱為異常處理模式):中止(abort)模式、中斷(interrupt request)、快速中斷

(fast interrupt request)模式、管理(supervior)模式(有的也稱超級使用者模式)、未定義(undefined)

模式、系統(system)模式。

1種非特權模式------使用者(user)模式。

當處理器訪問儲存器失敗時,進入資料訪問中止模式(abort);

中斷模式和快速中斷模式分別對arm處理器兩種不同級別的中斷作出響應;

處理器復位以後,進入管理模式,作業系統核心也通常處於這種模式;

系統模式是一種特殊的使用者模式,允許對cpsr的完全讀/寫訪問;

當處理器遇到沒有定義的指令或處理器不支援該指令時,進入未定義模式;

使用者模式執行應用程式。

摘自table 2.1. arm 處理器模式

處理器模式

體系結構

模式編號

使用者全部

0b10000

fiq - 快速中斷請求

全部0b10001

irq - 中斷請求

全部0b10010

超級使用者

全部0b10011

中止全部

0b10111

未定義全部

0b11011

系統armv4 及更高版本

0b11111

監控僅限安全擴充套件

0b10110

除使用者模式之外,所有其他模式統稱為特權

模式。 它們具有對系統資源的完全訪問許可權,並可隨意更改模式。

需要任務保護的應用程式通常在使用者模式下執行。 有些嵌入式應用程式可能完全執行在超級使用者模式或系統模式下。

進入除使用者模式之外的模式是為了處理異常或訪問特許資源。

摘自arm公司,見:

ARM處理器工作模式

arm處理器共有 7種工作模式,如表 3 1所示 表 3 1 arm 處理器工作模式 處理器工作模式 特權模式 異常模式 說明 使用者 user 模式 使用者程式執行模式 系統 system 模式 該組模式下可以任意訪問系統資源 執行特權級的作業系統任務 一般中斷 irq 模式 通常由系統異常狀態切...

ARM處理器模式切換

參考 arm體系的cpu有以下7種工作模式 1 使用者模式 usr 正常的程式執行狀態 2 快速中斷模式 fiq 3 中斷模式 irq 4 管理模式 svc 作業系統使用的保護模式 5 系統模式 sys 執行具有特權的作業系統任務 6 資料訪問終止模式 abt 資料或指令預取終止時進入該模式 7 未...

ARM處理器工作模式

arm有7種處理器模式,其由cpsr的 4 0 位決定。使用者模usr 正常程式動行的工作模式。只能讀cpsr不能寫 系統模式sys 與使用者模式共用一套暫存器。用於支援作業系統的特權任務模式,但它具有直接切換到其它模式的特權。管理模式svc 作業系統的特權任務模式。系統復位和軟體中斷時才進入這個模...