硬汉嵌入式论坛

 找回密码
 立即注册
查看: 960|回复: 4
收起左侧

[MDK] sct分散加载文件疑问

[复制链接]

56

主题

131

回帖

299

积分

高级会员

积分
299
发表于 2023-3-9 10:57:40 | 显示全部楼层 |阅读模式
通常看到的是以下这两种:
.ANY (+RW +ZI) 匹配任意文件的数据段。
.ANY (+RO) 匹配任意文件的代码段和只读数据。


.ANY (+XO) 这个代表什么意思?什么情况下使用?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106934
QQ
发表于 2023-3-9 12:35:12 | 显示全部楼层
对应的这个代码
image.png
回复

使用道具 举报

1

主题

109

回帖

112

积分

初级会员

固件開發工程師

积分
112
QQ
发表于 2023-3-9 13:06:28 | 显示全部楼层
.ANY (+XO) 这个代表什么意思?什么情况下使用?
我们的IC是这么用的:
在ROM的开头有一段Bootloader,里面放了安全相关的代码,这部分代码是配置成“Execute-only”的。这样这段代码中就不会有数据访问,只有指令访问。在CM4上,指令访问和数据访问走的是不同的Bus(I-BUS,D-BUS)。
Designer只需要在设计bus的时候,屏蔽Bootloader区域的D-Bus访问即可。比如可以设计成D-Bus访问返回随机数据、无效数据。
经过这样设计,End User就无法用调试器单步跟踪指令,来分析我们Code的运行流程、破解安全机制了。


评分

参与人数 1金币 +20 收起 理由
caicaptain2 + 20 很给力!

查看全部评分

回复

使用道具 举报

210

主题

1044

回帖

1684

积分

至尊会员

More we do, more we can do.

积分
1684
发表于 2023-3-9 13:10:07 | 显示全部楼层
execute-only (XO) sections
read-only variables are placed in RO data sections, writable variables are placed in RW data sections.

出处:《Arm Compiler armlink User Guide》
回复

使用道具 举报

5

主题

196

回帖

211

积分

高级会员

积分
211
发表于 2023-3-15 00:07:59 | 显示全部楼层
XO 代表 eXecute Only,一般即代码段 (.text)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-10 21:56 , Processed in 0.282073 second(s), 30 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表