ARMv8 工作模式
ARMv8 沒(méi)有 Privilege level 的概念,取而代之的是 Exception level(異常級(jí)別),簡(jiǎn)稱為EL,用于描述特權(quán)級(jí)別,一共有 4 個(gè)級(jí)別:EL0、EL1、EL2 和 EL3,數(shù)字越大,級(jí)別越高,權(quán)限越大!這四個(gè) EL 級(jí)別對(duì)應(yīng)的應(yīng)用場(chǎng)合如下:
EL0:一般的應(yīng)用程序 EL1:操作系統(tǒng),比如 Linux EL2:虛擬化(Hypervisor),虛擬機(jī)管理器 EL3:最底層的安全固件,如 ARM Trusted Firmware(ATF/TF-A)
ARMv8 提供了兩種安全狀態(tài):Secure 和 Non-secure,也就是安全和非安全,Non-secure 也就是正常世界(NormalWorld)。我們可以在 Non-secure 運(yùn)行通用操作系統(tǒng),比如 Linux,在 Secure 運(yùn)行可信操作系統(tǒng),比如OP-TEE,這兩個(gè)操作系統(tǒng)可以同時(shí)運(yùn)行,這個(gè)需要處理器支持 ARM 的 TrustZone 功能。在 Normal world 和 Secure world下,ARMv8 個(gè) EL 等級(jí)對(duì)應(yīng)的內(nèi)容如圖所示:

在 ARMv8 的 AArch32 模式下,處理器模式如圖所示:

在 AArch32 模式下,EL0~LE3 對(duì)應(yīng) ARMv7 的不同工作模式:
EL0:對(duì)應(yīng) ARMv7 的 User 工作模式
EL1:對(duì)應(yīng) ARMv7 的 SVC、ABT、IRQ、IRQ、UND 和 SYS 這 6 中工作模式
EL2:對(duì)應(yīng) ARMv7 的 Hyp 工作模式
EL3:對(duì)應(yīng) ARMv7 的 Mon 工作模式
可以看出,只有 EL3 是用于安全監(jiān)視器的,所以 TF-A 主要工作在 EL3 下,在看 TF-A源碼的時(shí)候會(huì)看到大量的“EL3”字樣的文件或代碼。
-
嵌入式
+關(guān)注
關(guān)注
5186文章
20133瀏覽量
328407 -
Linux
+關(guān)注
關(guān)注
88文章
11622瀏覽量
217832 -
操作系統(tǒng)
+關(guān)注
關(guān)注
37文章
7325瀏覽量
128566 -
程序
+關(guān)注
關(guān)注
117文章
3836瀏覽量
84738
發(fā)布評(píng)論請(qǐng)先 登錄
ARM重新定義ARMv8新架構(gòu),ARMv8新架構(gòu)特性解說(shuō)
ARMv8架構(gòu)資料分享
ARMv8架構(gòu)概述
ARMv8 Vector table問(wèn)題該如何更好地去理解呢
NEON在armv8(arch64)下如何去使用呢
Armv7和Armv8系統(tǒng)中跟蹤的高級(jí)視圖詳解
如何使用CSAT調(diào)試Armv8平臺(tái)
ARM推新品:ARMv8首次支援64位元指令集
TRACE32支持ARMv8架構(gòu)
從軟件開(kāi)發(fā)的角度概述ARMv8處理器架構(gòu)中的虛擬化操作
ARMv8處理器體系結(jié)構(gòu)中的虛擬化功能
Armv8架構(gòu)及虛擬化介紹
ARMv7-A工作模式介紹
armv8 u-boot的啟動(dòng)介紹

ARMv8工作模式有哪些
評(píng)論