• MPU的使用配置原则


    MPU是缩减版的MMU。最初的目的是防止一个软件错误或者恶意软件影响到其他的任务或者影响到了操作系统本身。
    也就是说一个完美设计好的系统,一些恶意程序很难对其进行攻击,提高了安全性和攻击难度。

    MPU的使用配置原则:

    1、对不同的内存区域(不区分Flash,RAM等)提供访问权限的控制。
    2、访问权限有: R W X
    3、如果可以的话。一个任务不能够主动升级其访问权限,否则会对其他的任务产生攻击和信息泄露。比如,意外改写其他任务的数据。
    比如,恶意访问(读取)其他任务的数据。
    4、如果可以的话。应该在初始化时能够提前配置好各个任务的权限。
    5、目前从ARM的CPU来看,最简单的情况的情况。就是把任务分为两组,第一组是运行在CPU的高权限(特权)模式,其他的运行在CPU的低权限模式。
    6、CPU的中断发生时,CPU可能运行在高权限模式。所以,应该对ISR分开处理。此时,如果ISR会调用低权限任务,此时会提升低权限任务的权限,带来风险。可以在ISR执行低特权任务时主动降低权限。
    7、一个比较完美的解决方案是,在操作系统提供的任务切换时进行权限的控制,比如操作系统能够根据初始化的配置时改变任务的权限。

    8、为了安全考虑,一个任务可以主动降低其权限,但是不能随意(不受限制地)提升自己的权限。

    如果完全不使用操作系统,很难发挥MPU的特性。因为需要严格区分各个不同的任务,在实际操作中,task(任务)是被管控的,这和我们平时用到的windows和linux等操作系统是差不多的。

    参考文档:

    https://www.freertos.org/2020/04/using-freertos-on-armv8-m-microcontrollers.html

  • 相关阅读:
    外刊IT评论网
    9 More Mind-Blowing WebGL Demos
    主流开源许可协议比较(BSD,Apache,GPL,LGPL,MIT...)
    jsPlumb
    SharePoint Designer 2013 Workflow
    The Zip, GZip, BZip2 and Tar Implementation For .NET
    Config Sharepoint 2013 Workflow PowerShell Cmdlet
    iTextSharp
    模糊查询
    asp.net Cookie
  • 原文地址:https://www.cnblogs.com/praiseslow/p/16493287.html
Copyright © 2020-2023  润新知