01.12.2014 Views

RealView Compilation Tools Developer Guide - ARM Information ...

RealView Compilation Tools Developer Guide - ARM Information ...

RealView Compilation Tools Developer Guide - ARM Information ...

SHOW MORE
SHOW LESS

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.4 调 整 映 象 存 储 器 映 射 以 适 应 目 标 硬 件<br />

在 最 终 的 嵌 入 式 系 统 中 , 没 有 半 主 机 功 能 , 您 不 太 可 能 使 用 RVCT 提 供 的 默 认<br />

存 储 器 映 射 。 目 标 硬 件 通 常 有 几 个 位 于 不 同 地 址 范 围 的 存 储 设 备 。 为 了 充 分 利 用<br />

这 些 设 备 , 加 载 和 运 行 时 必 须 有 分 开 的 存 储 器 视 图 。<br />

2.4.1 分 散 加 载<br />

分 散 加 载 能 够 将 加 载 和 运 行 时 存 储 器 中 的 代 码 和 数 据 描 述 在 被 称 为 分 散 加 载 描<br />

述 文 件 的 一 个 文 本 描 述 文 件 中 。 在 命 令 行 使 用 -scatter 选 项 , 该 项 文 件 被 传 递<br />

至 链 接 程 序 。 例 如 :<br />

armlink -scatter scat.scf file1.o file2.o<br />

分 散 加 载 描 述 文 件 根 据 寻 址 的 存 储 器 区 域 , 为 链 接 程 序 描 述 了 加 载 时 和 运 行 时<br />

代 码 和 数 据 应 在 的 位 置 。<br />

分 散 加 载 区 域<br />

分 散 加 载 区 域 分 为 两 类 :<br />

• 加 载 区 , 包 含 应 用 程 序 复 位 和 加 载 时 的 代 码 和 数 据 。<br />

• 执 行 区 , 包 含 应 用 程 序 执 行 时 的 代 码 和 数 据 。 应 用 程 序 启 动 过 程 中 , 从 每<br />

个 加 载 区 可 创 建 一 个 或 多 个 执 行 区 。<br />

映 象 中 所 有 的 代 码 和 数 据 准 确 地 分 为 一 个 加 载 区 和 一 个 执 行 区 。<br />

启 动 过 程 中 ,__main 中 的 C 库 初 始 化 代 码 实 现 了 必 要 的 代 码 和 数 据 复 制 和 清 零 ,<br />

以 从 加 载 视 图 转 为 执 行 视 图 。<br />

<strong>ARM</strong> DUI 0203BSC © 2002、 2003 <strong>ARM</strong> Limited 版 权 所 有 。 保 留 所 有 权 利 。 2-13

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!