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 />

6.1.1 向 量 表<br />

处 理 器 异 常 的 处 理 由 一 个 向 量 表 控 制 。 向 量 表 为 一 个 32 字 节 的 保 留 区 , 通 常<br />

在 存 储 器 映 射 的 底 部 。 它 为 每 一 类 型 的 异 常 分 配 了 一 个 字 的 空 间 , 当 前 有 一 个<br />

保 留 字 。<br />

这 不 是 包 含 处 理 程 序 全 部 代 码 所 需 的 足 够 空 间 , 因 此 在 每 个 异 常 类 型 的 向 量 入<br />

口 通 常 包 含 一 个 跳 转 指 令 或 载 入 PC 指 令 来 继 续 执 行 相 应 的 处 理 程 序 。<br />

6.1.2 异 常 使 用 的 模 式 和 寄 存 器<br />

通 常 , 应 用 程 序 运 行 在 用 户 模 式 下 , 但 是 , 为 异 常 提 供 服 务 需 要 有 特 权 的 ( 即<br />

非 “ 用 户 ” 模 式 ) 操 作 。 异 常 改 变 了 处 理 器 模 式 , 这 反 过 来 意 味 着 每 个 异 常 处<br />

理 程 序 可 以 访 问 编 组 寄 存 器 的 某 些 子 集 :<br />

• 其 自 身 的 r13 或 栈 指 针 (sp_mode) ;<br />

• 其 自 身 的 r14 或 链 接 寄 存 器 (lr_mode) ;<br />

• 其 自 身 的 程 序 状 态 存 储 寄 存 器 (spsr_ mode)。<br />

在 FIQ 情 况 下 , 每 个 异 常 处 理 程 序 占 用 多 达 五 个 通 用 寄 存 器 (r8_FIQ 到<br />

r12_FIQ)。<br />

每 个 异 常 处 理 程 序 必 须 保 证 在 退 出 时 将 其 它 寄 存 器 恢 复 到 其 初 始 内 容 。 可 通 过<br />

将 该 处 理 程 序 必 须 使 用 的 任 意 寄 存 器 的 内 容 存 储 在 其 栈 中 , 并 在 返 回 时 恢 复 这<br />

些 寄 存 器 的 内 容 即 可 实 现 一 点 目 的 。 如 果 你 正 在 使 用 Angel 或 <strong>ARM</strong>ulator ® , 将<br />

自 动 设 置 所 需 要 的 栈 。 否 则 , 需 自 行 设 置 。<br />

备 注<br />

提 供 的 汇 编 程 序 没 有 预 先 声 明 register_mode 格 式 的 符 号 寄 存 器 名 称 。 要 使 用 该<br />

格 式 , 必 须 用 RN 汇 编 程 序 命 令 声 明 其 相 应 的 符 号 名 称 。 例 如 , lr_FIQ RN r14 声<br />

明 了 r14 寄 存 器 的 符 号 名 称 为 lr_FIQ。 有 关 RN 命 令 的 更 多 信 息 , 请 参 阅<br />

<strong>RealView</strong> 编 译 工 具 2.0 版 汇 编 程 序 指 南 有 关 命 令 的 章 节 。<br />

6.1.3 异 常 优 先 级<br />

当 几 个 异 常 同 时 发 生 时 , 它 们 以 固 定 的 优 先 级 顺 序 处 理 。 用 户 程 序 继 续 执 行 前 ,<br />

依 次 处 理 每 个 异 常 。 所 有 异 常 均 同 时 产 生 是 不 可 能 的 。 例 如 ,“ 未 定 义 指 令 ” 和<br />

SWI 异 常 是 相 互 排 斥 的 , 因 为 两 者 均 是 通 过 执 行 一 个 指 令 而 触 发 的 。<br />

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

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

Saved successfully!

Ooh no, something went wrong!