
我选择【线上课程】STM32MP2 RIF , Day1心得:学习到1.0_资源隔离的概念 • 系统隔离的思想 • 解决什么问题? 实现什么目标? • 从SoC系统的整体看隔离的概念 • 系统架构,CPU的状态,软件系统,访问权 限划分 • 总线信号携带的访问权限和访问类型信息 • 总线从设备对访问权限信号的处理➔ 不同的 访问权限域(security domain) • STM32MP2 RIF Overview • CID 与Security Domain • RIF配置与访问控制的总体概念 • RIF主设备管理(RIMU) • RIF从设备管理(非RIF感知) • 外设配置与管理(RISUP) • 存储器配置与管理 • legacy: RISAL • Block based: RISAB • Full: RISAF • RIF感知设备(RIF aware components) • GPIO • HPDMA/LPDMA • RCC, PWR • FMC … |
系统隔离解决什么问题?有什么用处?
• 信息安全:抵御逻辑攻击,降低软件漏洞带来的风险
• 隔离与访问权限控制
• 内核区分不同运行状态,不同部分的软件具有不同级别的访问权限
• 资源带有不同访问属性设置,可以控制系统不同部分对对资源的访问权限
• 系统隔离机制带来的保护
• 区分受信的安全代码和普通代码
• 区分资源的不同访问权限,关键资源只能被可信代码访问
• 普通代码中的安全漏洞被利用不会威胁到关键资源
Day2心得:学习到 2.0_从SoC架构看资源隔离
从三个方面理解系统隔离的硬件机制
1 总线主设备 • Master发起的访问携带什么样的标记
• 访问安全类型:S/NS,Priv/Unpriv
• 其他访问类型:读、写,指令、数据
• 标记主设备身份:CID (需要RIF框架)
• 不同类型的Master
• CPU
• 自身可以区分不同权限状态和运行不同权限的代码,并发 起带有S/NS,Priv/Unpriv标记的访问
• 自身带有MMU/MPU/SAU等内核外设,可以对不同权限的 软件发起的访问做内部过滤
• RIF-aware master
• 可以通过本身寄存器的配置,发起带有S/NS,Priv/Unpriv 的访问
• Legacy master
• 本身对S/NS, Priv/Unpriv等权限无法识别和配置
2 总线从设备 • Slave可以进行什么样的安全访问属性配置,识别 和过滤什么样的访问安全标记
• 是否允许S/NS, Priv/Unpriv访问
• 是否允许来自哪些Master的访问(通过RIF的CID过 滤机制)
• 不同类型的Slave的不同访问属性配置
• Memory (block based, address space based)
• RIF-aware slave
• Legacy Peripheral
3 安全访问规则
• 来自不同master携带不同标记的访问
• 针对不同类型的slave及其访问配置和过滤规则
• 会产生怎样的访问结果