ARM架构中MPU对OS下任务和内存的保护机制
创作时间:
作者:
@小白创作中心
ARM架构中MPU对OS下任务和内存的保护机制
引用
CSDN
1.
https://blog.csdn.net/xiandang8023/article/details/140688754
MPU(Memory Protection Unit)是ARM架构中用于实现内存保护的重要组件,它通过定义内存区域的访问权限、缓存策略等机制,为操作系统提供了一种细粒度的内存管理方式。本文将详细介绍MPU的主要功能及其在多任务环境下的应用。
MPU的主要功能
确定MPU保护区域的起始地址(Base address)和结束地址(Limit address):结束地址是根据起始地址与给定的region大小决定的。
确定MPU区域的访问权限:
- 只读(Read-only):只能读取,不能写入。
- 可读写(Read-Write):可以读取和写入。
- 确定访问级别:
- 特权访问(Privileged-OS Kernel):操作系统内核级别的访问。
- 非特权访问(Unprivileged-TASK):用户任务级别的访问。
- 实现资源隔离和资源共享:
- 在没有使用MPU的情况下:内存仅根据MSP(主堆栈指针)和PSP(进程堆栈指针)分特权级和用户级。此时,特权级可以访问整个堆栈空间,而用户级任务之间无法互相访问对方的堆栈,只能访问分配给自己的堆栈内存,但用户级任务可以随意访问全局变量。
- 启用MPU后:OS会对每个用户任务的独立内存空间设置访问权限。例如,为了防止堆栈溢出,MPU的Size会大于TASK的堆栈Size,多的预留内存作为溢出缓冲。或者将静态区某些数据权限设置为仅供某个任务读写,其他任务只能读,AUTOSAR中RTE的数据Buffer就是这个设计原理,普通全局变量随意访问。对于多核涉及的共享数据,要单独设置region,flash里的代码段一般定义为仅可读。
- 确定MPU保护区域的缓存控制:
- 可缓存(Cacheability):确定哪些内存区域可以通过Cache访问。
- 可缓冲(Normal memory):确定哪些内存区域是通过Normal Memory访问的,内核直接访问芯片内存。
- 可多核共享(Shareability):主要用于多核之间数据共享,主要用于核间通信IPC在SMP(多核同构)或AMP(多核异构)架构中,如果开启共享(Shareability),等同于关闭Cache。
- 实时监测任务对内存的访问行为:一旦发现非法访问就会触发异常,如栈溢出,数组越界,任务越界访问动态分配的内存等。
MPU与MSP、PSP的区别
MSP和PSP主要关注的是栈空间的管理和使用,而MPU则是为了提供更细粒度的内存访问控制和保护机制。MPU通过硬件对划分的Region更细化权限控制,MSP和PSP 指针是 CPU 架构层面的特权级划分,MPU 机制是基于内存区域的访问控制。只能说给系统提供更加细致和可靠的内存保护功能。
MPU的缓存控制
Cortex-M7的缓存控制
Cortex-A7(含MMU)的缓存控制
Shareability的使用场景
主要用于多核之间数据共享,主要用于核间通信IPC在SMP(多核同构)或AMP(多核异构)架构中,如果开启共享(Shareability),等同于关闭Cache。
热门推荐
胸闷气短胸口堵得慌怎么回事,应该挂什么科
从母亲到队长:佟丽娅2025年三大新作展现演技新高度
国安队长造型引争议,佟丽娅浓妆遭观众吐槽
<真心英雄>佟丽娅造型引争议,过度美化影响角色真实感
《春风化雨》获8.7高分,佟丽娅演绎最接地气乡村教师
过年炖牛肉,就放这4种香料,牛肉出锅软嫩鲜香,不干不柴
猪肉馅怎么调才又鲜又嫩?4点要记住!
家常菜这样烧,才能给人不一样的味道!
收率高达82%!瑞典科学家开发医用塑料化学回收技术
中国日化及食品领域PET和HDPE硬包装物质流及再生前景分析
废塑料化学回收 | 六大主流技术现状、工艺特点详解
专家建议:这样饮食可有效预防上火
从《三国演义》看古代中国的战争文化
亮度、对比度、构图优化:手机摄影后期处理关键步骤
从RGB到色彩心理学:UI设计中的色彩应用全解析
科学育儿新趋势:母乳喂养+亲子互动
权威型育儿:科学育儿的秘密武器?
从草原公主到革命英雄:佟丽娅的荧幕形象转变
佟丽娅主演《真心英雄》:收视平平,演技获赞
老年人常饮牛奶与不饮,真有大差别?医生揭示实际情况
科学饮用奶制品,助力老年人走出亚健康
美国中产困境:6成家庭经济拮据,政策纾困引争议
餐前吃蔬菜最有效,专家详解降血糖五大方法
宇妥·云丹贡布:编撰《四部医典》的藏医药学大师
冷冻储存让鲑鱼更营养:-20°C冷冻干燥法详解
打造温馨梦幻家居的简单改造技巧,轻松提升家庭幸福感
掌握色彩搭配技巧,为家居空间注入活力与魅力,焕然一新!
全铝家居:打造现代健康生活的理想之选
江阴市居民养老待遇上调:基础养老金达310元,补助金涨至760元
《误杀3》定档2024跨年:肖央再演悬疑犯罪,揭开儿童拐卖黑幕