[发明专利]嵌入式C语言环境下异常处理方法及装置有效
申请号: | 200810100060.5 | 申请日: | 2008-06-03 |
公开(公告)号: | CN101599039A | 公开(公告)日: | 2009-12-09 |
发明(设计)人: | 余加强;郑伟 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京集佳知识产权代理有限公司 | 代理人: | 逯长明 |
地址: | 518129广东省*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 嵌入式 语言 环境 异常 处理 方法 装置 | ||
1.一种嵌入式C语言环境下的异常处理方法,其特征在于,包括:
监控正在运行的需要保护的程序代码片段,如果所述程序代码片段出现 异常,则抛出所述异常,所述异常包括软件异常、硬件异常中的至少一种; 所述程序代码片段为函数、由多个函数组成的模块或由多个模块组成的部件;
根据获得的所述异常,确定相应的异常处理程序,由所述异常处理程序 处理所述异常,其中,所述异常处理程序与所述程序代码片段相互独立。
2.如权利要求1所述的方法,其特征在于,所述监控正在运行的需要保护 的程序代码片段的步骤具为:根据设置的处理异常的粒度,监控所述正在运 行的需要保护的程序代码片段。
3.如权利要求1所述的方法,其特征在于,进一步包括:申请用于记录与 异常相关的信息的存储空间;
则,在所述程序代码片段出现异常之后,抛出所述异常之前,记录与异 常相关的信息。
4.如权利要求1或3所述的方法,其特征在于,所述抛出所述异常具体为: 将所述与异常相关的信息打包后传递出去,所述与异常相关的信息至少包括 异常类型标识,所述异常类型标识用于表示当前程序代码片段出现的异常的 类型。
5.如权利要求4所述的方法,其特征在于,所述根据获得的所述异常, 确定相应的异常处理程序,由所述异常处理程序处理所述异常的步骤包括:
获得传递过来的与异常相关的信息,所述与异常相关的信息中包含异常 类型标识;
确定与所述异常类型标识对应的异常类型所匹配的异常处理程序,由所 述异常处理程序处理所述异常。
6.如权利要求5所述的方法,其特征在于,所述确定与所述异常类型标 识对应的异常类型所匹配的异常处理程序,由所述异常处理程序处理所述异 常的步骤包括:
当所述异常类型标识对应的异常类型与能处理的一种特殊的异常类型匹 配时,由与该异常类型匹配的异常处理程序处理该异常;
或,当所述异常类型标识对应的异常类型与能处理的至少一种异常类型 中的一种异常类型匹配时,由与该异常类型匹配的异常处理程序处理该异常;
或,当存在能处理任何类型异常的异常处理程序时,确定由该匹配任意 类型异常的异常处理程序处理所述异常。
7.如权利要求6所述的方法,其特征在于,所述方法进一步包括:如果 当前不存在与该异常类型匹配的异常处理程序时,将获得的与异常相关的信 息重新传递出去,或者,当都匹配不上时,启动默认处理程序,所述默认处 理程序为重启系统。
8.如权利要求4所述的方法,其特征在于,所述根据获得的所述异常, 确定相应的异常处理程序,由所述异常处理程序处理所述异常的步骤包括:
获得传递过来的与异常相关的信息,所述与异常相关的信息中包含异常 类型标识、指定处理方式标识;
确定与所述异常类型标识对应的异常类型所匹配,且与所述的指定处理 方式标识对应的处理方式所匹配的异常处理程序,由所述匹配的异常处理程 序处理所述异常。
9.如权利要求5所述的方法,其特征在于,所述异常处理程序还能够匹配 和处理多种类型的异常。
10.如权利要求5所述的方法,其特征在于,如果有多个与所述异常类型 相匹配的异常处理程序,则确定与所述异常类型标识对应的异常类型所匹配 的异常处理程序的步骤为:
确定与所述异常类型标识对应的异常类型所匹配的,且与所述程序代码 片段位置最近的一个异常处理程序。
11.如权利要求1所述的方法,其特征在于,如果所述程序代码片段被调 用时出现异常,则由所述异常处理程序处理所述异常之后,还包括:逐级返 回所述程序代码片段正常运行后的结果,或者运行与所述异常处理程序相邻 且在其之后的程序代码片段。
12.如权利要求2所述的方法,其特征在于,所述设置的处理异常的粒度 包括函数级别、模块级别、部件级别中的至少一种,其中,所述模块由多个 函数组成,所述部件由多个模块组成。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810100060.5/1.html,转载请声明来源钻瓜专利网。