ARM基础(2):模式和特权等级(User/Thread mode和Privileged level)

article/2025/10/9 18:41:38

Cortex-M3处理器支持两种模式和两种特权级别。
如下图所示,当处理器运行于Thread mode时,它可以处于PrivilegedUser级别;而Handler mode下,只能处于Privileged级别。当处理器复位完毕后,处于Thread mode
在这里插入图片描述
User级别(Thread mode)下,访问系统控制区域(配置寄存器和调试组件)是阻塞的,对特殊寄存器的访问(如使用MSR指令)也是不允许的(访问APSR寄存器除外),否则会产生一个错误异常。

处于Privileged级别时,软件可以通过CONTROL寄存器将程序切换到User级别。当产生一个异常时,处理器会切换到Privileged状态,而退出异常时,则会恢复进入异常之前的状态。

用户程序不能直接通过写CONTROL寄存器将状态切换为Privileged状态,而必须通过异常处理程序更改CONTROL寄存器,以便在返回到Thread mode时将处理器切换到Privileged级别,如下图所示:
在这里插入图片描述
PrivilegedUser级别的存在可以让系统更加安全和更具鲁棒性。比如,当程序出错的时候,是修改不了NVIC的CONTROL寄存器的。另外,如果使能了MPU(内存保护单元),还可以阻止用户程序访问特权进程的内存区域。

在简单的应用中,不需要区分PrivilegedUser级别。在这种情况下,不需要使用User级别,也不需要更改CONTROL寄存器。我们可以将用户程序和内核的堆栈区分开来以避免可能的程序崩溃。比如,用户程序(Thread mode)使用PSP堆栈,而异常处理程序使用MSP堆栈。进入和退出异常处理程序时会自动切换这两个堆栈指针。
在这里插入图片描述
处理器的访问级别由CONTROL寄存器来定义,当其bit0为0时(Privileged mode),处理器模式将在异常发生时进行切换。
在这里插入图片描述
当bit0为1时(User mode),处理器模式和访问级别都会在异常发生时切换。
在这里插入图片描述
CONTROL寄存器的bit0仅在Privileged level可编程。对于一个User level的程序来说,要切换到Privileged mode,它必须触发一个异常(如SVC异常),并在处理程序中修改CONTROL[0]


Cortex-M系列开始出现了上面这些概念,而在ARM7中没有这些模式,这里来做一个对比:

Modes and Exceptions in the ARM7Corresponding Modes and Exceptions in the Cortex-M3
Supervisor (default)Privileged, thread
Supervisor (software interrupt)Privileged, Supervisor Call (SVC)
FIQPrivileged, interrupt
Interrupt request (IRQ)Privileged, interrupt
Abort (prefetch)Privileged, bus fault exception
Abort (data)Privileged, bus fault exception
UndefinedPrivileged, usage fault exception
SystemPrivileged, thread
UserUser access (nonprivileged), thread

http://chatgpt.dhexx.cn/article/TTnV6GBT.shtml

相关文章

【云原生 | Kubernetes 系列】K8s 实战 实施Pod 容器标准的两种方式

实施Pod 容器标准的两种方式 前言一、通过名字空间标签来要求实施 baseline Pod 容器标准1.1、使用 kubectl label 为现有名字空间添加标签1.2、应用到所有名字空间1.3、应用到单个名字空间 二、通过配置内置准入控制器实施 Pod 安全标准总结 前言 上一节学习了 PodSecurity &a…

privilege_role

本文章为网络笔记,看了warehouse老师的视频受益匪浅,更是感觉自己技术太过初级,特写了本笔记,方便以后反复学习! 如有任何不妥,请发邮件至102448567qq.com删除文章! 关于warehouse: …

docker --privileged=true 参数作用

大约在0.6版,privileged被引入docker。使用该参数,container内的root拥有真正的root权限。否则,container内的root只是外部的一个普通用户权限。privileged启动的容器,可以看到很多host上的设备,并且可以执行mount。甚…

docker--privileged

一、 privilegedtrue|false 介绍 true container内的root拥有真正的root权限。 false container内的root只是外部的一个普通用户权限。默认false privileged启动的容器 可以看到很多host上的设备可以执行mount。可以在docker容器中启动docker容器。 二、测试验证 2.1、未设…

(十二)docker --privileged

1. privileged参数作用 --privileged Give extended privileges to this container 大约在0.6版,privileged被引入docker。使用该参数,container内的root拥有真正的root权限。否则,container内的root只是外部的一个普通用…

TDL、CDL信道模型简述

主要参考:3GPP TR 38.811 TDL(Tapped Delay Line)抽头延时线模型 TDL模型主要针对多径时延参数和反映信道时变特性的多普勒参数进行研究,主要有TDL-A、TDL-B、TDL-B、TDL-D、TDL-E五种。其中前三者为NLOS传输的多径信道模拟&…

无线信道模型分类和建模方法介绍--附思维导图

目录 1 统计性模型(经验模型)1.1 模型分类(1)按衰落分类(2)按路径损耗和延迟拓展分类(3)按IO数量分类 1.2 建模方法(1)方法一分类(2)方…

【S-V信道】基于毫米波的5G通信S-V信道模型仿真

1.软件版本 MATLAB2021a 2.本算法理论知识 由于大气中存在一定含量的极化氧分子和水汽(如图3.1所示),因此毫米波在传输过程中容易被大气吸收,从而导致信号衰减,影响通信质量[13,14]。根据相关研究发现,在…

m无线通信信道matlab仿真,包括自由空间损耗模型,Okumura-Hata模型,COST231 Hata模型,SUI信道模型

目录 1.算法概述 2.仿真效果预览 3.MATLAB部分代码预览 4.完整MATLAB程序 1.算法概述 无线信道是移动通信的传输媒体,所有的信息都在这个信道中传输。信道性能的好坏直接决定着人们通信的质量,因此要想在有限的频谱资源上尽可能地高质量、大容量传输…

3GPP LTE/NR信道模型

LTE三种典型信道模型: EPA(Extended Pedestrian A):扩展步行信道模型 EVA(Extended Vehicular A):扩展车辆信道模型 ETU(Extended Typical Urban):扩展典型城市信道模型 EPA EVA ETU Excess tap delay [ns] Relative power…

无线通信与编码_MATLAB仿真实现Jakes信道模型_含仿真代码_瑞利衰落信道模型

1、Jakes模型简介 1.1 Rayleigh衰落信道 瑞利分布:当一个随机二维向量的两个分量呈独立的、均值为0、有着相同的方差的正态分布时,这个向量的模呈瑞利分布。 瑞利分布的概率密度函数如下: 瑞利衰落信道是一种无线电信号传播环境的统计模型…

MATLAB平台学习(9)信道模型

目录 应用场景 市内微小区(Urban-micro) 市区宏小区(Urban-macro) 郊区宏小区(Rural-macro) 室内热点(indoor-hotspot) EPA、EVA、ETU、HST 各种场景下的路径损耗 信道的建模…

S-V信道模型理解

Saleh和Valenzuela提出的S-V信道模型是基于大量室内信道测试构建的,更加符合室内真实路径的传播规律,可以用来进行信道建模与仿真。下图显示了具有多簇射线的S-V信道模型,该模型中多径以簇形式达到,其通过两个完全对立的泊松过程&…

MATLAB程序:S-V信道模型

绘制Saleh-Valenzuela信道模型 % plot_SV_model_ct.m%MIMO-OFDM Wireless Communications with MATLAB㈢ Yong Soo Cho, Jaekwon Kim, Won Young Yang and Chung G. Kang %?2010 John Wiley & Sons (Asia) Pte Ltdclear, close all b0021; % Power of 1st ray of 1st c…

2信道模型

信道模型 1概述1.1调制信道模型:1.2信道参数 2不考虑空间特性的信道模型2.1基本特性2.1.1多径2.1.2多普勒频移2.1.3快慢衰落 2.2传播预测模型2.3信道冲击响应2.3.1多普勒功率谱cost 2072.3.2多径时延的主要参数 2.4信道响应模型理论(这个part有点看不太懂) 3考虑空间…

两径信道与指数信道模型

产生一个两径信道和一个指数衰减的多径信道 clear,clf scale 1e-9;%纳秒量级 Ts 10*scale;%采样时间间隔为10ms,在这个程序中这个量也为指数信道路径间隔 t_rms 30 * scale;%RMS时延扩展为30ms num_ch 10000;%仿真信道个数 %两径信道模型 %产生并绘制理想的两径…

WINNER II信道模型与WINNER+信道模型概述

目录 1.WINNER II 2.WINNER 目前信道模型主要分为准确信道模型、随机信道模型、统计信道模型。其中随机信道模型集和其他两种模型的优点,成为主流的信道模型。随机模型中基于几何统计的随机信道模型(Geometry-based Stochastic Channel Models, GSCM)由于具有复杂…

无线信道模型

目录 1 信道 无线信道天线增益 2 信道模型2-1 瑞利衰落信道模型2-2 莱斯衰落信道模型2-3 AWGN信道模型2-4 适用条件对比 3 无线信道中的衰落3-1 大尺度衰落与小尺度衰落3-2 路径损耗3-3 多径传播3-4 四种小尺度衰落3-5 阴影效应 4 Hata模型4-1 简介4-2 适用条件4-3 传播损耗公式…

室外信道模型

一、FWGN信道模型 FWGN模型是最流行的户外信道模型之- - 。Clarke/Gans 模型是-种基本的 FWGN模型,根据如何在时域或频域实现多普勒滤波器,可以将 Clarke/Gans 模型修改为其他各种类型。 1. Clarke/Gans 模型 特点:移动台周围的散射分量是…

数字通信第六章——信道模型和信道容量

一、信道模型 描述信道常用的三个参数:输入X;输出Y;输入与输出间的条件概率 P ( y i ∣ x i ) P(y_i|x_i) P(yi​∣xi​)。如果 P ( y ∣ x ) ∏ i 1 m P ( y i ∣ x i ) P(y|x)\prod_{i1}^mP(y_i|x_i) P(y∣x)∏i1m​P(yi​∣xi​)&#…