数据转换跟踪设备以及数据转换跟踪方法

文档序号:6513438阅读:178来源:国知局
数据转换跟踪设备以及数据转换跟踪方法
【专利摘要】本发明公开了数据转换跟踪设备以及数据转换跟踪方法。公开了一种能够解决关于跟踪错误以调试的问题的数据转换跟踪设备。该设备包括对于相应的输入块依序执行信息处理(IP)集合的执行单元,其中每个信息处理的集合接收作为数据记录集合的多个块,并且输出与输入块相关联的输出块;以及块划分单元,该块划分单元独立地相对于IP的第二和随后的集合的每个将由位于前一级(PS)处的IP的集合输出的输出块重新布置为要输入到位于前一级的后级处的讨论中的IP的集的输入块,并且存储链信息,该链信息共享任何数据记录,并且将输入块与由位于PS处的IP的集合输出的输出块相关联。
【专利说明】数据转换跟踪设备以及数据转换跟踪方法
[0001]相关申请的交叉引用
[0002]本申请基于并且要求在2012年9月25日提交的日本专利申请N0.2012-210252的优先权权益,其公开通过引用被整体包含在此。
【技术领域】
[0003]本发明涉及数据转换跟踪设备等,其在数据处理期间已经发生误差的情况下跟踪误差以用于调试。
【背景技术】
[0004]在近来的计算机系统中,在软件操作中包括的行的数目和要处理的数据的数量两者已经变得极大。因此,当因为在软件或输入数据中的缺陷导致的在数据处理期间发生误差时执行的调试工作的困难已经逐年变高,并且因此,需要用于有效地执行调试工作的技术。
[0005]作为用于有效地执行调试工作的技术,例如,一般公知诸如通过下述方式来跟踪程序的执行的技术:在程序执行的中游设置一些数量的检查点,并且如果发生错误,则从刚好在错误发生之前的检查点重新执行程序。
[0006]作为与这样的技术相关的技术,日本专利申请特开N0.1995-311693公开了一种作为计算机系统的系统,该计算机系统在获取检查点的同时执行程序,并且当检测到程序故障的发生时,将程序转换到调试模式,并且从对应的检查点重启程序。
[0007]而且,日本专利申请特开N0.2009-86808公开了一种系统,该系统使得多个操作员能够通过下述方式来有效地进行调试:正确地记录关于与检查点相关的程序执行状态和关于缺陷的、与检查点相关的信息,并且使得在操作员之间共享它们。
[0008]而且,日本专利申请特开N0.2009-9201公开了与用于掌握程序执行的序列的跟踪控制系统相关的一种系统,该系统通过抑制因为跟踪条件设置电路和在跟踪存储器的物理大小上的增大而导致的电路复杂性来掌握由源程序或OS的功能ID管理的任务的序列。

【发明内容】

[0009]例如,在通过多个步骤来处理输入数据并且通过依序重复其中由一级的工作步骤输出的结果被下一级的工作步骤处理的处理来获得最后的输出结果的数据处理中发生错误的情况下,不能断言在其中发生错误的工作步骤进行的处理中存在问题。
[0010]例如,如果在输入数据中包括的记录的任何一个中存在错误的原因,则这意味着错误是因为已经通过在前的级的任何一个的工作步骤引起错误的数据的生成,该在前的级的任何一个生成向已经发生错误的工作步骤输入的输入数据。
[0011]在上述的数据处理的情况中,可以通过缩小在具有错误存在的可能性的输入数据中的记录来使得调试工作有效,但是在日本专利申请特开N0.1995-311693、日本专利申请特开N0.2009-86808和日本专利申请特开N0.2009-9201中公开的系统没有用于缩小这样的记录的功能。
[0012]本发明的主要目的是提供解决上述问题的一种数据转换跟踪设备、一种数据转换跟踪方法和一种数据转换跟踪程序。
[0013]根据本发明的一个示例性方面的一种数据转换跟踪设备包括:执行单元,所述执行单元对于相应的输入块依序执行信息处理的集合,其中信息处理的集合中的每一个接收作为数据记录集合的多个块,并且输出与所述输入块相关联的输出块;以及,块划分单元,所述块划分单元独立地相对于所述信息处理的第二和随后的集合的每一个将由位于前一级处的所述信息处理的所述集合输出的所述输出块重新布置为要输入到位于所述前一级的后级处的在讨论中的所述信息处理的所述集合的所述输入块,并且向链存储单元内存储链信息,所述链信息共享所述数据记录的任何一个,并且将所述输入块与由位于所述前一级处的所述信息处理的所述集合输出的所述输出块相关联。
[0014]根据本发明的一个示例性方面的一种数据转换跟踪方法包括:由信息处理设备对于相应的输入块依序执行信息处理的集合,其中每个信息处理的集合接收作为数据记录集合的多个块,并且输出与所述输入块相关联的输出块;以及,由所述信息处理设备独立地相对于所述信息处理的第二和随后的集合的每一个将由位于前一级处的所述信息处理的所述集合输出的所述输出块重新布置为要输入到位于所述前一级的后级处的在讨论中的所述信息处理的所述集合的所述输入块,并且向存储单元内存储链信息,所述链信息共享所述数据记录的任何一个,并且将所述输入块与由位于所述前一级处的所述信息处理的所述集合输出的所述输出块相关联。
[0015]根据本发明的一个示例性方面的一种永久计算机可读介质存储计算机程序,所述计算机程序使得计算机实现:执行功能,所述执行功能对于相应的输入块依序执行信息处理的集合,其中信息处理的集合中的每一个都接收作为数据记录集合的多个块,并且输出与所述输入块相关联的输出块;以及,块划分功能,所述块划分功能独立地相对于所述信息处理的第二和随后的集合的每一个将由位于前一级处的所述信息处理的所述集合输出的所述输出块重新布置为要输入到位于所述前一级的后级处的在讨论中的所述信息处理的所述集合的所述输入块,并且向存储单元内存储链信息,所述链信息共享所述数据记录的任何一个,并且将所述输入块与由位于所述前一级处的所述信息处理的所述集合输出的所述输出块相关联。
【专利附图】

【附图说明】
[0016]通过下面结合附图的详细说明,本发明的示例性特征和优点将变得清楚,在附图中:
[0017]图1是示出本发明的第一示例性实施例的数据转换跟踪设备的配置的框图;
[0018]图2A至2B协作地示出图示在本发明的第一示例性实施例中的存储链信息的操作的流程图;
[0019]图3A至3B协作地示出图示在本发明的第一示例性实施例中的存储和显示跟踪信息的操作的流程图;
[0020]图4是在本发明的第一示例性实施例中的数据处理情况I中的数据转换的示例;
[0021]图5是在本发明的第一示例性实施例中的在数据处理情况I中的链信息的配置的示例;
[0022]图6是在本发明的第一示例性实施例中的在数据处理情况I中的跟踪信息的配置的示例;
[0023]图7是在本发明的第一示例性实施例中的数据处理情况2中的数据转换的示例;
[0024]图8是在本发明的第一示例性实施例中的在数据处理情况2中的链信息的配置的示例;
[0025]图9是在本发明的第一示例性实施例中的在数据处理情况2中的跟踪信息的配置的示例;
[0026]图10是在本发明的第一示例性实施例中的在显示单元上显示的跟踪信息的示例;
[0027]图11是示出本发明的第二示例性实施例的数据转换跟踪设备的配置的框图;
[0028]图12A至12B协作地示出在本发明的第二示例性实施例中的数据处理情况2中的通过跟踪控制单元来缩小错误点的操作的示例;
[0029]图13是示出在本发明的第三示例性实施例中的数据转换跟踪设备的配置的框图;以及
[0030]图14是示出能够实现本发明的第一至第三示例性实施例的数据转换跟踪设备的信息处理设备的配置的框图。
【具体实施方式】
[0031]以下,将参考附图详细描述本发明的示例性实施例。
[0032]<第一示例性实施例>
[0033]图1是示出本示例性实施例的数据转换跟踪设备的配置的框图。本示例性实施例的数据转换跟踪设备I具有执行单元10、块划分单元20、链存储单元30、跟踪单元40、跟踪信息存储单元50、跟踪存储单元60和显示单元70。
[0034]执行单元10具有信息处理的集合。即,执行单元10具有:用于第一集合的信息处理的执行部101 ;用于第二集合的信息处理的执行部102 ;用于第三集合的信息处理的执行部103 ;用于第一集合的信息处理的输入数据111 ;用于第二集合的信息处理的输入数据112 ;用于第三集合的信息处理的输入数据113 ;输出数据114 ;以及程序源代码120。
[0035]在该实施例和随后的实施例中,描述“信息处理的集合”表示如图1中所示串连相同或不同的信息处理的配置。即,在图1中的第一至第三信息处理的每一个是表示特定处理的信息处理步骤。
[0036]执行部101接收输入数据111,对于其执行数据处理,并且输出处理结果。执行部102接收由块划分单元20生成的输入数据112,块划分单元20重新布置从执行部101输出的结果。执行部102对于输入数据112执行数据处理,并且输出处理结果。执行部103接收由块划分单元20生成的输入数据112,块划分单元20重新布置从执行部102输出的结果。执行部103对于输入数据113执行数据处理,并且输出输出数据114。
[0037]程序源代码120是构成软件程序(计算机程序)的源代码,该软件程序执行由执行部101、102和103执行的数据处理。
[0038]块划分单元20将输入数据111、112和113的每一个划分为块,每一个块是在输入数据中包括的输入数据记录集合,并且被设置为包括预定数目的记录(以下称为块大小)。
[0039]图4示出在数据处理情况I中由块划分单元20执行的将输入数据111、112和113划分为块的示例。
[0040]在图4中所示的数据处理情况I中,输入数据111包括7个输入数据记录。
[0041]块划分单元20将输入数据111划分为块,将块大小设置为3,并且向每一个块给予块ID (标识符),该块ID使得能够识别块。在本数据处理情况I的情况下,块1-1包括第一至第三输入数据记录,块1-2包括第四至第六输入数据记录,并且块1-3包括第七输入数据记录。
[0042]执行部101执行下述处理:将由输入数据记录的每个表示的地址分离为用于表示地区的部分和表示市区行政区或城市和其后的行政区域的一个或多个单元的部分。在输入数据111的第六输入数据记录中,因为数据输入失败,所以从東京都(东京地区)丢失表示地区的字“都”。结果,执行部101不能识别输入数据记录与哪个地区相关。执行部101在将“空”置于其地区部分后输出数据记录,但是不将该数据记录视为错误。根据由块划分单元20指示的内容,执行部101独立地对于每一个块执行上述处理,并且输出对于每一个块的执行结果。
[0043]通过重新布置由执行部101输出的结果(在附图中未示出),块划分单元20生成输入数据112。块划分单元20将输入数据112新划分为块,将块大小设置为3,并且向所得到的块给予块ID2-1至2-3,所述块ID使得能够识别相应的块。块2-1包括从执行部101输出的第一至第三数据记录。块2-2包括第四至第六数据记录。块2-3包括第七数据记录。
[0044]执行部102执行将由每一个输入记录表示的地区名称从以汉语字的地区名称转换为以字母的地区名称,并且将在记录中的表示市区行政区或城市和其后的行政区域的一个或多个单元的部分分离为用于市区行政区或城市的部分和用于随后者的部分。执行部102不将包括“空”的第六输入数据记录视为错误。根据由块划分单元20指示的内容,执行部102独立地对于每一个块执行上述处理,并且输出对于每一个块的执行结果。
[0045]通过重新布置由执行部102输出的结果(在附图中未示出),块划分单元20生成输入数据113。块划分单元20将输入数据113新划分为块,将块大小设置为3,并且向所得到的块给予从3-1至3-3的块ID,所述块ID使得能够识别相应的块。块301包括从执行部102输出的第一至第三数据记录。块3-2包括第四至第六输入数据记录。块3-3包括第七输入数据记录。
[0046]执行部103执行编码输入数据记录的每个的处理。因为执行部103不能对于包括“空”的第六输入数据记录执行编码,所以它将其作为错误输出到输出数据114内。根据由块划分单元20指示的内容,执行部103独立地对于每一个块执行上述处理,并且输出对于每一个块的执行结果。
[0047]图7示出在与如上所述的数据处理情况I不同的数据处理情况2中由块划分单元20将输入数据111、112和113划分为块的另一个示例。
[0048]在图7中所示的数据处理情况2中,进行执行部101的数据处理的内容与在数据处理情况I中的相同。与在数据处理情况I中不同地,执行部102对于将地区名称设置为排序关键字的由块划分单元20排序的输入数据记录执行对与每一个地区相关的输入数据记录的数目计数的数据处理。[0049]在数据处理情况2中,因为添加了排序处理,所以向执行部102输入输入数据记录的顺序不变得与象在数据处理情况I中那样从执行部101输出它们的顺序相同。通过以记录从执行部101输出的顺序通过相应的编号来表达记录,则在输入数据112中包括的输入数据记录以第一、第二、第四、第六、第三、第五和第七记录的顺序被输入到执行部102。
[0050]块划分单元20向块2-1内收集与从执行部101第一、第二和第四输出的记录的相应的一些相关的数据记录、与向块2-2内第六、第三和第五输出的记录相关的那些、和向块2-3内第七输出的记录相关的那个,并且然后向执行部102输入块。
[0051]执行部103执行编码由输入数据记录的每一个表示的地区名称的处理。块划分单元20向执行部103输入块3-1至3-3,其中每个具有块大小2。因为执行部103不能对于包括“空”的第二输入数据记录执行编码,所以它将其作为错误输出到输出数据114中。
[0052]块划分单元20也对于执行部的每一个执行下述处理:将由执行部输出的每一个输出块与向后续的执行部输入的输入块相关联,该后续的执行部包括在输出块中包括的数据记录的任何一个;并且,向链存储单元30内存储使得能够识别彼此相关联的输出和输入块的标识信息。图5示出在如上所述的数据处理情况I中的、在链存储单元30中存储的链信息300的配置的示例。
[0053]例如指示了在向执行部102输入的块2-1中包括作为执行部101处理块1-1的结果输出的输出块中包括的所有数据记录。
[0054]关于块3-2,因为当执行部103接收和处理它时发生错误,所以块划分单元20将错误的发生记录到在链信息300中与块3-2相关的链记录内。
[0055]图8示出在如上所述的数据处理情况2中在链存储单元30中存储的链信息300的配置的示例。在该情况下,例如指示在向执行部102输入的块2-1和2-2的任一个中包括作为执行部101处理块1-1的结果输出的输出块中包括的数据记录。
[0056]关于块3-1,因为当执行部103接收和处理它时发生错误,所以块划分单元20将错误的发生记录到在链信息300中与块3-1相关的链记录内。
[0057]注意,作为由块划分单元20存储链信息300的方法,除了如上所述的那个之外,存在另一种方法,该另一种方法对于执行部的每一个将向执行部输入的每一个输入块与由已经包括在输入块中包括的数据记录的任何一个的前一个执行部输出的输出块相关联,并且将使得能够识别彼此相关联的输入和输出块的标识信息存储到链存储单元30内。
[0058]跟踪单元40跟踪在链存储单元30中存储的链信息300,并且由此识别在输入数据111中的有可能与错误发生相关的块。
[0059]在图5中所示的数据处理情况I中的示例的情况下,跟踪单元40确认用于指示输出块的、具有在其列中给予的错误指示的链记录所指定的块是块3-2。接下来,参考与位于执行部103前的级处的执行部102相关的链记录,跟踪单元40搜索其用于指示向后级的输入块的列包括块3-2的链记录,并且识别由在如此击中的链记录中的输出块所指定的值是2-2。
[0060]而且,参考与位于执行部102之前的级处的执行部101相关的链记录,跟踪单元40搜索其用于指示向后级的输入块的列包括块2-2的链记录,并且最后识别由在如此击中的链记录中的输出块所指定的值是1-2。
[0061]在图8中所示的数据处理情况2中的示例的情况下,跟踪单元40确认用于指示输出块的、具有在其列中给予的错误指示的链记录所指定的块是块3-1。接下来,参考与位于执行部103前的级处的执行部102相关的链记录,跟踪单元40搜索其用于指示向后级的输入块的列包括块3-1的链记录,并且识别由在如此击中的链记录中的输出块所指定的值是2-1 和 2-2。
[0062]而且,参考与位于执行部102前的级处的执行部101相关的链记录,跟踪单元40搜索其用于指示向后级的输入块的列包括值2-1或2-21的链记录,并且最后识别由在如此击中的链记录中的输出块所指定的值是1-1和1-2。
[0063]数据跟踪信息存储单元50从执行单元10收集对于其中执行部101逐个接收在由跟踪单元40识别的输入数据111的块中包括的输入记录和对其执行数据处理的处理的数据跟踪所需的信息,并且执行部102和103随后也逐个接收输入数据记录和对其执行数据处理。
[0064]由跟踪信息存储单元50收集的信息包括用于相关的输入数据记录的每一个的、由该输入数据记录指示的值和使得能够识别处理该输入数据记录的执行部的标识信息。由跟踪信息存储单元50收集的信息也包括用于相关的输入数据记录的每一个的、关于在处理该输入数据记录时的程序状态的信息和关于与该输入数据记录的处理相关的程序源文件的信息。由跟踪信息存储单元50收集的信息进一步包括用于相关的输入数据记录的每一个的、由作为相关执行部的处理该输入数据记录的结果输出的数据记录所指示的值,并且建立关联信息,该关联信息将该输入数据记录与由位于前一级的执行部输出的输出记录相关联。
[0065]在如上所述的多个信息当中,在相关的执行部在处理输入数据记录的同时,跟踪信息存储单元50从由执行单元10输出的日志收集关于在处理输入数据记录时的程序状态的信息。
[0066]跟踪信息存储单元50从程序源代码120收集关于与输入数据记录的处理相关的程序源文件的信息。在程序源代码120中,一般评述每一个执行部执行的程序所对应的代码的哪个部,并且因此,跟踪信息存储单元50通过使用关于执行部的标识信息作为搜索关键字参考在程序源代码120中的这样的评述行来收集上述源文件信息。
[0067]跟踪信息存储单元50向跟踪存储单元60输出如上收集的多个信息,作为其中它们使用由相关的输入数据记录指示的值作为关键字而彼此相关联的跟踪信息。图6示出在如上所述的数据处理情况I中的跟踪信息600的配置的示例。
[0068]如图6中所示,跟踪信息存储单元50向在跟踪信息600中的每一个跟踪记录给予ID。在图6中的父ID的每一个是如上所述的关联信息,该关联信息将与父ID伴随的输入数据记录与由位于前一级处的执行部输出的输出数据记录相关联。
[0069]例如,在跟踪信息600中,将父ID6给予其输出数据记录是错误的具有ID9的跟踪记录。在跟踪信息600中,由在具有ID9的跟踪记录中的输入数据记录指示的值和由在具有ID6的跟踪记录中的输出数据记录指示的值都是“空,東京F,U”。即,与输入记录相关联的ID和父ID的值将关于与输入记录相关的由执行部进行的处理结果的信息与关于由位于该执行部之前的一级处的另一个执行部进行的处理结果的信息相关。
[0070]在图6中所示的数据处理情况I的情况下,向指示在其输出数据记录中的错误发生的具有ID9的跟踪记录给予父ID6,并且,向具有ID6的跟踪记录给予父ID3。使用执行单元10的负责调试的人逐步地跟踪在跟踪信息600中的具有相应的ID9、6和3的跟踪记录,因此发现由具有ID3的跟踪记录中的输入数据记录指示的值是“東京F区U”,并且由此将从“東京都”丢失“都”识别为错误发生的起因。
[0071]图9示出在如上所述的数据处理情况2中的跟踪信息600的配置的示例。在该情况下,向指示在其输出数据记录中的错误发生的具有ID16跟踪记录给予父ID10,并且,向具有IDlO的跟踪记录给予父ID6。使用执行单元10的负责调试的人逐步地跟踪在跟踪信息600中的具有相应的ID16、10和6的跟踪记录,因此发现由具有ID6的跟踪记录中的输入数据记录指示的值是“東京F区U”,并且由此将从“東京都”丢失“都”识别为错误发生的起因。
[0072]显示单元70在屏幕上图形地显示跟踪信息600。图10示出由显示单元70显示的屏幕图像的示例。它是当在屏幕上显示在上述的数据处理情况2中的跟踪信息600时的图像。该屏幕图像被例如显示在图14中作为示例示出的硬件环境中的输入/输出接口 909上。
[0073]显示单元70显示在显示屏幕的上区域中执行信息处理的集合的流程图和在下区域中的数据记录的转换图。
[0074]在数据记录的转换图中,具有分别在它们上显示的从I至16的相应编号的图标表示在图9中所示的跟踪信息600中包括的具有相应的ID从I至16的输入数据记录。示出了例如在跟踪信息600中,作为执行部101处理的结果,具有ID6的输入数据记录向具有IDlO的输入数据记录进行转换。作为执行部102处理的结果,具有IDlO的输入数据记录向具有ID16的输入数据记录进行转换。然后,作为执行部103处理的结果,具有ID16的输入数据记录产出指示错误的输出数据。
[0075]当负责调试的人将光标置于在显示屏幕上的表示输入数据记录的图标上时(即,当在光标和图标之间在坐标上的差变得等于或小于预定值时),显示单元70显示关于输入数据记录的详细信息。例如,对于在其上显示的具有编号12的图标,显示单元70显示信息“埼玉県,E市V”。
[0076]当负责调试的人将光标置于在显示屏幕上的将一个图标连接到另一个的方向线上时(即,当在光标和方向线之间在坐标上的差变得等于或小于预定值时),显示单元70显示关于处理由方向线从其始发的图标表示的输入数据记录的程序的源文件信息和程序状态信息。例如,对于从图标10至图标16的方向线,显示单元70显示在图9中所示的跟踪信息600中的具有IDlO的记录中包括的程序状态信息和程序源文件信息。
[0077]负责调试的人通过使用在图14中作为示例示出的输入/输出接口 909来移动光标。作为要被用作输入/输出接口 909的输入装置的示例,将涉及鼠标或触摸板。
[0078]接下来,将参考在图2A至2B中协作地示出的流程图来给予在本示例性实施例中的存储链信息300的操作的详细说明。
[0079]块划分单元20将在输入数据111中包括的输入数据记录划分为预定块大小的块,并且向每个块给予块ID (S101)。执行部101逐个块地接收输入数据111,并且独立地对于每一个块执行数据处理,并且输出它们的每一个的结果(S102)。
[0080]如果在由执行部101执行的处理中发生错误(在S103处的是),则块划分单元20向链存储单元30内添加关于错误发生的信息(S112),并且然后,结束整个处理。如果在由执行部101执行的处理中未发生错误(在S103处的否),则块划分单元20通过重新布置由执行部101输出的结果来生成输入数据112,将输入数据112划分为预定块大小的块,并且向每一个块给予块ID (S104)。
[0081]块划分单元20将从执行部101输出的块的每一个与在被置于输入数据112内的块当中的、包括在输出块中包括的数据记录的任何一个的块相关联,并且向链存储单元30内存储用于使得能够识别彼此相关联的块的每一个的标识信息(S105)。执行部102逐个块地接收输入数据112,并且独立地对于每一个块执行数据处理,并且输出它们每一个的结果(S106)。
[0082]如果在由执行部102执行的处理中发生错误(在S107处的是),则块划分单元20向链存储单元30内添加关于错误发生的信息(S112),并且然后,结束整个处理。如果在由执行部102执行的处理中未发生错误(在S107处的否),则块划分单元20通过重新布置由执行部102输出的结果来生成输入数据113,将输入数据113划分为预定块大小的块,并且向每一个块给予块ID (S108)。
[0083]块划分单元20将从执行部102输出的块的每一个与在被置于输入数据113内的块当中的、包括在输出块中包括的数据记录的任何一个的块相关联,并且向链存储单元30内存储用于使得能够识别彼此相关联的块的每一个的标识信息(S109)。执行部103逐个块地接收输入数据113,并且独立地对于每一个块执行数据处理,并且输出输出数据114(SllO)0
[0084]如果由执行部103执行的处理中发生错误(在Slll处的是),则块划分单元20向链存储单元30内添加关于错误发生的信息(S112),并且然后结束整个处理。如果在由执行部103执行的处理中未发生错误(在Slll处的否),则结束整个处理。
[0085]接下来,将参考在图3A至3B中协作地示出的流程图来给予在本示例性实施例中的存储和显示跟踪信息600的操作的详细说明。
[0086]参考在链存储单元30中存储的链信息300,跟踪单元40搜索包括错误发生信息的链记录(S201)。如果未找到包括错误发生信息的链记录(在S202处的否),则整个处理结束。如果找到包括错误发生信息的链记录(在S202处的是),则跟踪单元40确认由ID指示的值,该ID用于识别在包括与其中发生错误的第N集合的信息处理(N是整数)相关的错误发生信息的链记录中包括的输出块,并且跟踪单元40识别与第N-1集合的信息处理相关的所有链记录,每一个链记录包括作为用于识别后级的输入块的ID的确认值(S203)。
[0087]数据转换跟踪设备I进入循环处理,其中,将整数i从N-1逐一地减小为2(S204)。跟踪单元40确认由ID指示的值,该ID用于识别在与第i集合的信息处理相关的识别的链记录中包括的输出块,并且跟踪单元40识别与第1-1集合的信息处理相关的所有链记录,每一个链记录包括作为用于识别后级的输入块的ID的确认值(S205),并且然后处理返回到 S204 (S206)。
[0088]跟踪单元40向执行单元10发送用于识别在与第一集合的信息处理相关的如此识别的链记录中包括的相应输入块的ID值(S207)。执行部101接收在输入数据111中包括的输入数据记录当中的由跟踪单元40逐个地识别的输入块中包括的那些,对于它们的每一个执行数据处理,并且因此输出输入数据112 (S208)。
[0089]跟踪信息存储单元50向输入数据记录的每一个给予ID,并且以将该ID与用于识别执行部101的标识信息、由输入数据记录指示的值、程序状态信息、程序源文件信息和由相关的输出数据记录指示的值相关联的方式将该ID存储到跟踪存储单元60内(S209)。执行部102逐个地接收在输入数据112中包括的输入数据记录,对于它们的每一个执行数据处理,并且因此输出输入数据113 (S210)。
[0090]跟踪信息存储单元50向输入数据记录的每一个给予ID,并且将该ID与用于识别执行部102的标识信息、由父ID指示的值、由输入数据记录指示的值、程序状态信息、程序源文件信息和由相关的输出数据记录指示的值相关联的方式将该ID存储到跟踪存储单元60内(S211)。执行部102逐个地接收在输入数据112中包括的输入数据记录,对于它们的每一个执行数据处理,并且因此输出输入数据114 (S212)。
[0091]跟踪信息存储单元50向输入数据记录的每一个给予ID,并且将该ID与用于识别执行部103的标识信息、由父ID指示的值、由数据记录指示的值、程序状态信息、程序源文件信息和由相关的输出数据记录指示的值相关联的方式将该ID存储到跟踪存储单元60内(S213)。显示单元70在其屏幕上显示在跟踪存储单元60中存储的跟踪信息600 (S214),并且整个处理结束。
[0092]本示例性实施例具有使得可以通过当在数据处理中发生错误时将错误发展路径变窄来执行有效的调试工作。这是因为,首先,块划分单元20将向在执行单元10中的相应执行部输入的多个输入数据的每一个划分为块,生成将块与另一个相关联的链信息,并且将其存储到链存储单元30内。其次,基于链信息,跟踪单元40识别有可能是错误发生的起因的块,并且跟踪信息存储单元50从执行单元10收集关于由执行单元10进行在识别的块中包括的输入数据记录的逐个数据处理的跟踪信息,并且将其存储到跟踪存储单元60内。
[0093]当在处理大量数据的设备中发生错误时,用于跟踪错误发生的起因的调试工作是困难的任务。例如,在包括多个步骤的批处理的情况下,因为对于一起全部收集的数据执行处理的每一个步骤,所以通常难以跟踪在步骤上在数据之间的关系。
[0094]为了处理这个问题,通过生成将输入的多个数据与在数据处理中包括的多个步骤的相应的一些彼此相关联的链信息,可以使得调试工作有效。
[0095]然而,如果独立地生成关于在数据记录之间的关系的上述链信息,则其信息量变大。在本示例性实施例中,因为由块划分单元20生成的链信息是将一起收集多个数据记录的块彼此相关联的信息,所以可以减小其信息量。
[0096]然后,通过追溯由链信息指示的将块彼此相关联的路径,跟踪单元40可以识别具有有可能是错误发生的起因的向执行单元10输入的块。作为由跟踪信息存储单元50生成关于逐个接收的跟踪信息和由执行单元10执行的仅在有可能是错误发生的起因的输入块中包括的输入数据记录的处理的结果,负责调试的人变得能够执行有效的调试工作。
[0097]而且,根据由执行单元10执行的数据处理的规格,可以仅在数据处理期间在执行单元10内的存储器中存在诸如输入数据112和113的在数据处理中生成的中间数据,并且当结束数据处理时消除该中间数据。在本示例性实施例中,跟踪信息存储单元50也向跟踪存储单元60内存储关于这样的中间数据的信息来作为跟踪信息。另外,因为在本示例性实施例中的跟踪信息也包括关于用于处理每一个数据记录的程序的程序状态信息和程序源文件信息,所以进一步改善了调试的效率。
[0098]而且,在本示例性实施例中,因为显示单元70在其屏幕上图形地显示跟踪信息,并且因此负责调试的人可以容易地识别跟踪信息的内容,所以变得可以进一步改善调试工作的效率。
[0099]<第二示例性实施例>
[0100]接下来,将参考附图基于如上所述的第一示例性实施例而详细给予第二示例性实施例的说明。在下面的说明中,向与在第一示例性实施例中的数据转换跟踪设备I的构成单元相同的构成单元给予与在第一示例性实施例中的标记相同的标记,并且将在本示例性实施例中省略它们的重复说明。
[0101]图11是示出本发明的第二示例性实施例的数据转换跟踪设备的配置的框图。本示例性实施例的数据转换跟踪设备I与在第一示例性实施例中的相同,除了它进一步具有跟踪控制单元80,并且除了跟踪控制单元80之外的其单元的操作也与在第一示例性实施例中的相同。
[0102]如果当执行单元10已经对于所有的输入数据记录执行一次处理时发生错误,则跟踪控制单元80收集由跟踪单元40识别为有可能是错误发生的起因的、在输入数据111中包括的块中包括的数据记录。跟踪控制单元80指令块划分单元20将输入数据划分为比在第一执行中小的块大小的块,并且随后指令执行单元10对于如上收集的数据记录执行
第二数据处理。
[0103]重复地执行该操作,跟踪控制单元80将缩小有可能是错误发生的起因的输入数据111中包括的数据记录。图12示出在第一示例性实施例的说明中示出的数据处理情况2中的、由本示例性实施例的跟踪控制单元80缩小错误点的操作的示例。
[0104]作为跟踪单元40对于在执行单元10对于所有的输入数据记录的数据处理的第一执行中已经发生的错误的跟踪操作的结果,块1-3-1证明不是错误发生的起因。
[0105]在从跟踪单元40接收该结果后,跟踪控制单元80指令执行单元10对于在块1-1-1和1-2-1中包括的6个输入数据记录执行第二数据处理。此时,跟踪控制单元80指令块划分单元20从在第一数据从的执行中使用者减小块大小。
[0106]基于由跟踪控制单元80的指令的内容,块划分单元20将输入数据111和112的块大小从3减小为2,并且将输入数据113的块大小从2减小为I。
[0107]作为执行单元10执行第二数据处理后由跟踪单元40执行的跟踪操作的结果,块1-1-2证明不是错误发生的起因。
[0108]在从跟踪单元40接收到该结果后,跟踪控制单元80指令执行单元10对于在块1-2-2和1-3-2中包括的四个输入数据记录执行第三数据处理。此时,跟踪控制单元80指令块划分单元20进一步将块大小从在第二数据处理中使用者减小。
[0109]跟踪控制单元80将上述操作重复执行预定次数。
[0110]类似于第一示例性实施例,本示例性实施例具有当在数据处理中发生错误时通过有效地缩小错误发生的路径来实现有效的调试工作的效果。这是因为:在由执行单元10执行第一数据处理后接收由跟踪单元40输出的跟踪结果后,跟踪控制单元80仅收集有可能是错误发生的起因的输入数据记录;跟踪控制单元80指令执行单元10和块划分单元20使用从在第一数据处理的执行中使用者减小的块大小来对于收集的输入数据记录执行第二数据处理;并且,在第三和随后的数据处理中重复相同的处理。
[0111]可以在刚好在执行单元10已经执行一次数据处理后的状态中,跟踪单元40不能充分地缩小有可能是错误发生的起因的输入数据记录。在该情况下,由跟踪信息存储单元50以后生成的跟踪信息的大小有可能变大。
[0112]如果块划分单元20生成链信息,则通过从开始起将块大小设置为小值,跟踪单元40可能能够快速地缩小有可能是错误发生的起因的输入数据记录,但是在该情况下,链信息的大小变大。
[0113]在本示例性实施例中,块划分单元20在开始利用被设置在较大的值的块大小来开始生成链信息。然后,跟踪控制单元80控制跟踪操作以利用逐步减小的块大小来缩小可疑的数据记录,并且由此如此生成的链信息和跟踪信息的大小变小,并且结果,变得可以进一步改善调试工作的效率。
[0114]〈第三示例性实施例〉
[0115]接下来,将参考附图详细描述本发明的第三示例性实施例。
[0116]图13是示出本发明的第三示例性实施例的数据转换跟踪设备的配置的框图。本示例性实施例的数据转换跟踪设备具有执行单元10、块划分单元20和链存储单元30。
[0117]执行单元10被设置有执行部101、102和103,其中每一个对于相关的输入块执行信息处理的集合,该信息处理的集合接收作为数据记录集合的多个块,并且输出与输入块相关联的输出块。
[0118]相对于第二和以后的执行部的每一个,块划分单元20将由位于前一级处的执行部输出的输出块后重新布置为要输入到位于前一级的后级处的在讨论中的执行部(“在讨论中的执行部”表示上述的“第二和后的执行部的每个”)的输入块。
[0119]块划分单元20向链存储单元30内存储共享任何数据记录并且将输入块与由位于前一级的执行部输出的输出块相关联的链信息。
[0120]类似于第一和第二示例性实施例,本示例性实施例具有当在数据处理中发生错误时通过有效地缩小错误发生的路径来实现有效的调试工作的效果。这是因为块划分单元20将要输入到在执行单元10中的相应执行部的多个输入数据的每个划分为块,生成将块彼此相关联的链信息,并且向链存储单元30内存储该链信息。
[0121]在本示例性实施例中,可以存在以下情况:其中,基于链信息,与在第一和第二示例性实施例中的跟踪单元40和跟踪信息存储单元50对应的单元生成诸如调试所需的跟踪信息的信息;以及,调试操作员直接地分析链信息以执行调试工作的情况。
[0122]〈硬件配置的示例〉
[0123]在如上所述的示例性实施例中,在图1、11和13中所示的每一个单元或部可以被看作软件程序的功能(处理)单元(软件模块)。在此,为了说明的方便,进行在那些附图中的单元或部的分段以图示配置,并且当实现它们时可以采用各种配置。将参考图14来描述在该情况下的硬件环境的示例。
[0124]图14是图示可以作为根据本发明的示例性实施例的每一个的数据转换跟踪设备执行的、作为示例的信息处理设备900 (计算机)的配置的图。即,图14示出可以实现在图1、11和13中所示的数据转换跟踪设备的、诸如服务器的计算机(信息处理设备)的配置,并且表示可以实现在上述的示例性实施例中的功能的硬件环境。
[0125]图14中所示的信息处理设备900是一般的计算机,包括:CPU(中央处理单元)901、ROM (只读存储器)902、RAM (随机存取存储器)903、硬盘(存储装置)904、与外部装置连接的通信接口 905、能够读取和写入在诸如⑶-ROM (致密盘只读存储器)的记录介质907中存储的数据的读取器/写入器908和输入/输出接口 909,其中,这些组件经由总线(通信导线)906彼此连接。
[0126]然后,通过下述方式来实现以示例性实施例作为示例的如上所述的本发明:向在图14中所示的信息处理设备900提供能够以在示例性实施例的说明中引用的配置框图(图1、11和13)中或流程图(图2A至2B和图3A至3B)中实现功能的计算机程序,并且然后将计算机程序读出到硬件的CPU901内,并且在那里解释和执行计算机程序。向设备提供的计算机程序可以被存储在可读/可写易失性存储器(RAM903)或诸如硬盘904的非易失性存储装置中。
[0127]在上述情况下,可以采用当前通常的过程作为向硬件内提供计算机程序的方法,诸如通过各种类型的记录介质907向设备内安装程序的方法和经由诸如因特网的通信线来下载程序的方法。在这样的情况下,本发明可以被看作被构成计算机程序的代码构成或被存储代码的永久计算机可读记录介质907构成。
[0128]实施例的前面的说明被提供来使得本领域内的技术人员能够建立和使用本发明。而且,对于这些示例性实施例的各种修改对于本领域内的技术人员将容易显而易见,并且在此限定的一般原理和具体示例可以被应用到其他实施例,而不使用本发明的能力。因此,本发明不意欲限于在此所述的示例性实施例,而是要符合由权利要求和等同内容的限制限定的最宽范围。
[0129]而且,注意,本发明的意图是保留所要求保护的发明的所有等同内容,即使在进行期间修改了权利要求。
【权利要求】
1.一种数据转换跟踪设备,包括: 执行单元,所述执行单元对于相应的输入块依序执行信息处理的集合,所述信息处理的集合中的每一个都接收多个块并且输出与所述输入块相关联的输出块,所述块是数据记录的集合;以及 块划分单元,所述块划分单元分别相对于所述信息处理的第二集合和随后集合中的每一个来将由位于前一级处的所述信息处理的集合所输出的输出块重新布置为要输入到位于所述前一级的后级处的讨论中的所述信息处理的集合的输入块,并且将链信息存储到链存储单元中,所述链信息共享所述数据记录中的任何一个,并且使所述输入块与由位于所述前一级处的所述信息处理的集合所输出的所述输出块相关联。
2.根据权利要求1所述的数据转换跟踪设备,其中, 分别相对于所述输出块中的每一个,所述块划分单元将下述标识符作为所述链信息存储到所述链存储单元中:所述标识符使得能够识别要输入到位于所述后级处的所述信息处理的集合并且包括在所述输出块中所包括的所述数据记录的所述输入块。
3.根据权利要求1所述的数据转换跟踪设备,其中, 分别相对于所述输出块的每一个,所述块划分单元将下述标识符作为所述链信息存储到所述链存储单元中:所述标识符使得能够识别由位于所述前一级处的所述信息处理的集合输出并且包括在所述输入块中所包括的所述数据记录的所述输出块。
4.根据权利要求1所述的数据转换跟踪设备,进一步包括: 跟踪单元,当在由所述信息处理的任何集合输出的所述输出块中检测到错误时,所述跟踪单元通过下述方式来识别输入到位于第一级处的信息处理的输入块:参考所述链存储单元来重复跟踪操作,所述跟踪操作识别由位于前一级处的所述信息处理的集合所输出的所述输出块,以便于识别位于所述信息处理的集合的所述第一级处的所述信息处理的集口 o
5.根据权利要求4所述的数据转换跟踪设备,进一步包括:跟踪信息存储单元,所述跟踪信息存储单元执行: 将包括在所述跟踪单元已经识别的所述输入块中的数据记录逐个输入到所述执行单元,由此使得所述执行单元依序执行所述信息处理的集合,所述输入块被输入到位于所述第一级处的所述信息处理的集合, 相对于所述信息处理的集合中的每一个,使指示所述输入数据记录的值、指示输出数据记录的值和关联信息相关联,所述输出数据记录是由讨论中的所述信息处理的集合对于所述输入数据记录的结果,所述关联信息使由位于讨论中的所述信息处理的集合的所述前一级处的所述信息处理的集合所输出的所述输出数据记录与所述输入数据记录彼此相关联,并且 将所关联的值存储到所述跟踪存储单元中。
6.根据权利要求4所述的数据转换跟踪设备,进一步包括: 跟踪控制单元,在所述执行单元一次处理了所有的所述数据记录之后,所述跟踪控制单元收集所述跟踪单元已经识别的、输入到位于所述第一级处的所述信息处理的集合的所述输入块中所包括的所有的所述数据记录,然后指令所述块划分单元将在要输入到所述信息处理的集合中的每一个的所述输入块中所包括的所述数据记录的数目设置为比在所述第一处理中使用的值小了预定值的值,并且随后指令所述执行单元再次处理所述数据记录。
7.根据权利要求5所述的数据转换跟踪设备,其中, 相对于输入到所述信息处理的集合的所述输入数据记录中的每一个,通过参考评述信息,所述跟踪信息存储单元收集与所述信息处理的集合相关的程序的源代码,并且还从在处理所述输入数据时记录的日志信息收集表示所述程序的状态的状态信息,并且将所述程序的所述源代码和所述状态信息存储到所述跟踪存储单元中,其中,所述评述信息包括标识信息,所述标识信息使得能够识别在用于执行接收所述输入数据的所述信息处理的集合的所述程序的所述源代码中的所述信息处理的集合。
8.根据权利要求5所述的数据转换跟踪设备,进一步包括: 显示单元,所述显示单元基于存储在所述跟踪存储单元中的信息,相对于所述信息处理中的每一个,通过方向线来连接表示输入到所述信息处理的输入数据记录、将其设置为起点的图标以及表示输入到位于讨论中的所述信息处理的集合的所述后级处的所述信息处理的集合的所述输入数据记录的图标,所述输入数据记录也是由与所述前一个输入数据记录相关的讨论中的所述信息处理的集合所输出的所述输出数据记录,并且此后,当在表示所述图标中的任何一个的位置的坐标和光标的坐标之间的差变得等于或小于预定值时,所述显示单元显示关于与所述图标相关的所述输入数据记录的详细信息,并且当在表示所述方向线的位置的坐标和所述光标的坐标之间的差变得等于或小于预定值时,所述显示单元显示与关于连接到所述方向线的所述起点的所述图标的所述输入数据记录的处理相关的所述程序的所述源代码和所述状态信息。
9.一种数据转换跟踪方法,包括: 由信息处理设备对于相应的输入块依序执行信息处理的集合,所述信息处理的集合中的每一个都接收多个块并且输出与所述输入块相关联的输出块,所述块是数据记录的集合;以及 所述信息处理设备分别相对于所述信息处理的第二集合和随后集合中的每一个来将由位于前一级处的所述信息处理的集合所输出的所述输出块重新布置为要输入到位于所述前一级的后级处的讨论中的所述信息处理的集合的所述输入块,并且将链信息存储到链存储单元中,所述链信息共享所述数据记录中的任何一个,并且使所述输入块与由位于所述前一级处的所述信息处理的集合所输出的所述输出块相关联。
10.一种数据转换跟踪设备,包括: 执行部件,所述执行部件对于相应的输入块依序执行信息处理的集合,所述信息处理的集合中的每一个都接收多个块并且输出与所述输入块相关联的输出块,所述块是数据记录的集合;以及 块划分部件,所述块划分部件分别相对于所述信息处理的第二集合和随后集合中的每一个来将由位于前一级处的所述信息处理的集合所输出的所述输出块重新布置为要输入到位于所述前一级的后级处的讨论中的所述信息处理的集合的所述输入块,并且将链信息存储到链存储单元中,所述链信息共享所述数据记录中的任何一个,并且使所述输入块与由位于所述前一级处的所述信息处理的集合所输出的所述输出块相关联。
【文档编号】G06F11/36GK103678117SQ201310447379
【公开日】2014年3月26日 申请日期:2013年9月25日 优先权日:2012年9月25日
【发明者】门胁贵之 申请人:日本电气株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1