安全与非安全代码交互及TF - M测试实践
1. 非安全状态调用安全函数示例
在执行过程中,处理器处于非安全模式,此时无法访问安全世界的内存和外设。Cortex - M33处理器会执行 startup_LPC55S69_cm33_core0.s 文件的非安全副本,进入非安全 hello world 源文件 hello_world_ns.c 中的 main() 函数。
在 main() 函数中,首先有两条 printf 语句:
PRINTF_NSE("Welcome in normal world!\r\n");
PRINTF_NSE("This is a text printed from normal world!\r\n");
PRINTF_NSE() 函数在 veneer_table.c 中定义,具有 __attribute__((cmse_nonsecure_entry)) 属性,用于调用在安全代码中声明的 PRINTF 函数。这是使用 cmse_nonsecure_entry 属性的一个示例。
接着调用 StringCompare_NSE 函数,该函数也有相同属性,同样在 veneer_tabl
超级会员免费看
订阅专栏 解锁全文
40

被折叠的 条评论
为什么被折叠?



