This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[FAQ] [参考译文] [FAQ] MCU-PLUS-SDK - AM263X:如何确保对某些关键变量的函数访问仅限于某些函数?

Guru**** 1785650 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1293273/faq-mcu-plus-sdk-am263x-how-to-ensure-the-function-access-to-certain-critical-variables-are-only-restricted-to-certain-functions

器件型号:MCU-PLUS-SDK AM263X

出于安全原因、我希望我的系统采用这种格式设计-

函数名称
权限
功能 A 读取和写入
功能 B 只读
软件的功能 C/其余部分 无访问权限

这样就不会因意外访问而修改变量。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    通过使用 CPU 的 ARM MPU 功能、可按照以下步骤轻松实现这一目的:

    • 由该变量组成的区域应配置为"无访问"权限。

    • 在函数 A 和 B 中、更改运行时的 MPU 区设置并访问这些变量。
      • 对于功能 A、提供 R/W 访问。
      • 对于功能 B、仅提供 R ACCESS。

    1 -禁用 MPU、更改权限并启用 MPU。
    2-根据 MPU 权限测试 RW 访问权限。
    3 -禁用 MPU、更改权限并启用 MPU。

    添加了该文件以供参考。 可通过在空项目中进行以下更改来使用此文件。 在链接器文件中、该变量也只需要根据上述示例中的 MPU 地址进行固定地址(用于演示)。

    e2e.ti.com/.../1541.hello_5F00_world_5F00_mpu_5F00_function_5F00_test.c

    这样、系统实现就更安全、可防止意外读取/写入该变量。

    注:  该实现的安全指标不是计算性的、不能保证全面的系统安全。 根据上述用例、与系统中的其余功能相比、此实现允许选择性函数对特定变量具有更高的权限。