RealView Compilation Tools Developer Guide - ARM Information ...
RealView Compilation Tools Developer Guide - ARM Information ...
RealView Compilation Tools Developer Guide - ARM Information ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
嵌 入 式 软 件 开 发<br />
示 例 2-19 使 用 DCD 命 令<br />
IMPORT<br />
IMPORT<br />
IMPORT<br />
IMPORT<br />
||Image$$STACK$$ZI$$Base||<br />
||Image$$STACK$$ZI$$Limit||<br />
||Image$$HEAP$$ZI$$Base||<br />
||Image$$HEAP$$ZI$$Limit||<br />
stack_base DCD ||Image$$STACK$$ZI$$Limit|| ; = 0x4000<br />
stack_limit DCD ||Image$$STACK$$ZI$$Base|| ; = 0x1000<br />
heap_base DCD ||Image$$HEAP$$ZI$$Base|| ; = 0x15000<br />
heap_limit DCD ||Image$$HEAP$$ZI$$Limit|| ; = 0x18000<br />
可 使 用 这 些 示 例 将 堆 基 址 放 置 在 0x15000, 将 栈 基 址 放 置 在 0x1000。 然 后 , 堆 和<br />
栈 的 基 址 位 置 通 过 分 别 编 辑 其 执 行 区 可 以 很 容 易 地 改 变 。<br />
使 用 分 散 文 件 的 EMPTY 属 性<br />
该 方 法 使 用 了 链 接 程 序 的 分 散 文 件 EMPTY 属 性 。 这 将 使 得 要 定 义 的 区 域 不 包 括 目<br />
标 代 码 或 数 据 。 这 是 定 义 堆 和 栈 的 一 个 方 便 方 法 。 区 域 的 长 度 在 EMPTY 属 性 后 指<br />
定 。 对 于 存 储 器 中 向 上 增 长 的 堆 , 其 区 域 的 长 度 为 正 。 对 于 栈 , 其 长 度 被 标 为 负<br />
数 , 指 示 它 在 存 储 器 中 是 向 下 增 长 的 。 示 例 2-20 说 明 了 如 何 使 用 EMPTY 属 性 。<br />
该 方 法 的 优 点 是 堆 和 栈 的 大 小 和 位 置 是 在 一 个 地 方 定 义 的 , 即 在 分 散 文 件 中 。 您<br />
不 必 创 建 stackheap.s 文 件 。<br />
示 例 2-20 使 用 EMPTY 放 置 栈 区 和 堆 区<br />
ROM_LOAD 0x24000000 0x04000000<br />
{<br />
:<br />
HEAP 0x30000 EMPTY 0x3000<br />
{<br />
}<br />
:<br />
}<br />
STACKS 0x40000 EMPTY -0x3000<br />
{<br />
}<br />
链 接 时 , 链 接 程 序 生 成 代 表 这 些 EMPTY 区 的 符 号 。<br />
<strong>ARM</strong> DUI 0203BSC © 2002、 2003 <strong>ARM</strong> Limited 版 权 所 有 。 保 留 所 有 权 利 。 2-37