25.11.2014 Views

RealView ARMulator ISS User Guide - ARM Information Center

RealView ARMulator ISS User Guide - ARM Information Center

RealView ARMulator ISS User Guide - ARM Information Center

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.

<strong><strong>ARM</strong>ulator</strong> 参 考<br />

4.7.1 <br />

只 要 <strong>ARM</strong> 处 理 器 出 现 异 常<br />

系 统 均 会 调 用 此 事 件 处 理 程 序<br />

<br />

typedef unsigned GenericCallbackFunc(void *handle, void *data)<br />

其 中<br />

handle<br />

data<br />

是 传 送 至 <strong>ARM</strong>ulif_InstallExceptionHandler 的 句 柄<br />

必 须 造 型 为 (<strong>ARM</strong>ul_Event *) 并 包 含<br />

((<strong>ARM</strong>ul_Event *)data)->event<br />

是 导 致 异 常 的 核 心 事 件 请 参 阅 第 4-30 页 表 4-2<br />

((<strong>ARM</strong>ul_Event *)data)->data1<br />

是 异 常 的 硬 件 向 量 地 址<br />

((<strong>ARM</strong>ul_Event *)data)->data2<br />

是 导 致 异 常 的 指 令<br />

<br />

作 为 实 例 可 由 操 作 系 统 模 型 用 于 截 取 和 模 拟 SWI 如 果 安 装 的 处 理 程 序 返 回<br />

非 零 值 则 <strong>ARM</strong> 不 会 产 生 异 常 异 常 被 忽 略<br />

<br />

如 果 处 理 器 处 于 Thumb 状 态<br />

则 会 提 供 效 果 等 同 的 <strong>ARM</strong> 指 令<br />

要 安 装 异 常 处 理 程 序<br />

可 使 用<br />

int <strong>ARM</strong>ulif_InstallExceptionHandler(RDI_ModuleDesc *mdesc,<br />

GenericCallbackFunc *func, void *handle)<br />

要 删 除 异 常 处 理 程 序<br />

可 使 用<br />

int <strong>ARM</strong>ulif_RemoveExceptionHandler(RDI_ModuleDesc *mdesc,<br />

GenericCallbackFunc *func, void *handle)<br />

4-34 Copyright © 2002, 2003 <strong>ARM</strong> Limited 版 权 所 有 <strong>ARM</strong> DUI 0207ASC-00

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

Saved successfully!

Ooh no, something went wrong!