[发明专利]使用执行单一步骤来诊断编码有效
申请号: | 201710550482.1 | 申请日: | 2012-02-03 |
公开(公告)号: | CN107577593B | 公开(公告)日: | 2021-07-06 |
发明(设计)人: | 迈克尔·约翰·威廉姆斯;理查德·罗伊·格里森思怀特 | 申请(专利权)人: | ARM有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京东方亿思知识产权代理有限责任公司 11258 | 代理人: | 宗晓斌 |
地址: | 英国*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 使用 执行 单一 步骤 诊断 编码 | ||
本发明涉及使用执行单一步骤来诊断编码。方法包括:(i)控制处理器以单步骤模式执行,从而来自指令流的单个指令被执行,处理器判定单个指令是否为至少一种预定类型中的一种的指令并且在数据储存位置处储存类型指示符,并且在处理器已处理单个指令之后发生诊断异常;(ii)在诊断异常之后执行诊断操作,包括:访问储存于数据储存位置中的类型指示符;以及(iiia)响应于指示单个指令并非预定类型中的一种的类型指示符,控制处理器继续以单步骤模式执行指令,从而在从诊断异常返回之后执行下一单个指令;(iiib)响应于指示单个指令为至少一种预定类型中的一种的类型指示符,控制处理器退出单步骤模式并且不执行下一指令。
本申请是申请日为2012年2月3日、题为“使用执行单一步骤来诊断编码”的中国发明专利申请No.201280013329.0(PCT国际申请 PCT/GB2012/050232)的分案申请。
技术领域
本发明的技术领域涉以及数据处理,具体而言涉以及在数据处理设备上执行诊断操作。
背景技术
已知提供具有诊断机制的数据处理系统,以便帮助开发硬件、操作系统、应用程序、整体系统设计等,诊断机制可用以在数据处理系统上执行诊断操作(例如,软件以及硬件故障识别以及分析(除错))。
当分析数据处理系统时,可使用外部除错器,外部除错器包括在主机系统上执行的除错程序,主机系统连接至将被分析的目标系统,从而指定将在系统上执行诊断操作的控制信号从主机传递至系统。
外部除错器涉以及正经由外部端口连接至目标的除错器,外部端口随后用以程序设计除错硬件。处理器被配置为使得视为诊断异常的除错事件引起进入特殊除错状态,在特殊除错状态下,数据处理设备由外部除错器讯问以及控制。
或者,可能存在自托管除错系统,在自托管除错系统中,在正被除错的目标上执行除错监控软件。在此情况下,处理器被配置为使得除错事件引起诊断异常,诊断异常中断正被除错的软件并且将控制传递至除错监控软件。有用的诊断工具为控制处理器以单一步骤通过程序的能力。这允许在需要情况下在过程的每一步骤处分析系统状态。在单步骤模式中,处理器将执行指令,并且随后将发生诊断异常,并且控制将传递至除错软件,除错软件可分析处理器的状态。当出现从诊断异常的返回时,随后处理器将执行下个指令,于是将发生下个诊断异常。以此方式,除错软件可控制处理器以单一步骤通过整个程序或仅仅通过分析系统者所关注的部分。
在单一步骤通过代码时可能产生的一个问题为,如果在指令之间发生异常,则是否遭遇具有不同执行路径的代码。如果不同的执行路径涉以及无限循环,则此状况可能尤其困难。举例而言,尝试主张专属监控器的指令。如果代码成功主张专属监控器,则代码具有对特定储存位置的专属访问并且可在特定储存位置储存数据。因此,为了主张专属监控器,使用特殊的加载专属指令,特殊的加载专属指令既返回储存位置的当前值又设定专属监控器,以便指示当前正在被执行的指令流具有对特定储存位置的专属访问。储存专属指令可随后经执行以将数据储存至此储存位置。然而,在单一步骤通过代码的情况下,一旦已通过设定专属监控器来主张专属监控器,则发生诊断异常,并且在从该异常返回之后,异常处置器将清除专属监控器。此状况是因为当发生异常时,异常处置器可能不会返回至异常处置器先前正在执行的代码,而是将返回至不同的代码,因此,应清除专属监控器,因为将被执行的下个指令流不应具有对储存位置的专属访问。
然而,在已清除专属监控器的单一步骤中,随后当到达储存专属指令时,储存专属指令将失效,这会触发返回至主张专属监控器的步骤,步骤将主张专属监控器并且随后通过异常返回使专属监控器被清除,因此,在单一步骤中储存专属指令将重复地失效并且程序将永无进展。
以下给出具有此问题的代码的实例
Loop
LDREX R5,[R1];read lock(load-exclusive)
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于ARM有限公司,未经ARM有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710550482.1/2.html,转载请声明来源钻瓜专利网。