发明名称 Method for handling exceptions of applications
摘要 An exception handling system and method for PC-mapped systems. A support library containing language-independent functions is used to raise exceptions. These functions then use language-dependent callback functions to make inquiries about the stack frames built by the language-dependent code, and to further make callbacks to language-dependent functions to clean up those stack frames. The support library works its way up the function call stack from where an exception was issued, searching for function frames that are interested in the exception. An unwind phase is begun when a function frame that is interested in the exception is found. In the unwind phase, the unwinder attempts to unwind the stack up to the interested frame, restoring callee-saved register values, and other pertinent processor-specific information, such as the stack pointer, and frame register. The unwinder then transfers control to the handler code specified by the interested function. The search and unwind phases locate all the information required to tear apart the stack frames laid down at the time the exception is raised. This unwind information is recorded in a compact format. Additionally, no relocations are required in the unwind information. As a result, overall performance of applications at startup time is improved over known PC-mapped exception handling schemes.
申请公布号 US7007198(B2) 申请公布日期 2006.02.28
申请号 US20020198836 申请日期 2002.07.18
申请人 BORLAND SOFTWARE CORPORATION 发明人 BOLING ELI
分类号 G06F11/00;G06F9/48 主分类号 G06F11/00
代理机构 代理人
主权项
地址