用于获取日志的方法、系统、介质和计算机程序产品与流程

文档序号:31953705发布日期:2022-10-28 21:40阅读:118来源:国知局
用于获取日志的方法、系统、介质和计算机程序产品与流程

1.本公开涉及信息处理,具体涉及用于获取日志的方法、系统、介质和计算机程序产品。


背景技术:

2.生产系统,特别是车辆生产系统,涉及多个复杂的模块协同操作。生产系统旨在支持生产线的运行不受到影响。但是生产系统有时会发生问题或故障,需要尽快修复系统以避免对生产线造成过多影响。排查生产系统的故障可能是费时费力的,因此,需要快速简便地获取并分析与故障相关的所有日志,以便辅助生产系统的故障恢复。


技术实现要素:

3.根据本公开的第一方面,提供一种用于获取日志的方法,包括获取第一报文;根据第一报文中包含的字符串确定第一存储池;在与第一存储池相关联的日志文件中,确定包含有第一报文的第一日志块;根据第一关键字和第一存储池,利用第一日志块的日志记录来确定第二存储池和第二报文。
4.根据本公开的一些实施例,在上述方法中,确定第二存储池和第二报文还包括:在第一日志块内确定具有第一关键字和第一存储池的第一日志记录,该第一日志记录中包括第二存储池,其中第二存储池是第一报文去往的下一存储池;以及从第一日志记录随后的日志记录中提取第二报文,其中第二报文是基于第一报文生成的由第二存储池接收的报文。
5.根据本公开的一些实施例,所述方法还包括,在与第二存储池相关联的日志文件中,确定包含有第二报文的第二日志块;根据第二关键字和第二存储池,利用第二日志块的日志记录来确定第三存储池,其中第三存储池是第二报文去往的下一存储池;以及确定第三报文,其中第三报文是基于第二报文生成的由第三存储池接收的报文。
6.根据本公开的一些实施例,所述方法还包括,根据第三关键字和第一存储池,利用第一日志块的记录来确定第四存储池,其中第四存储池是第一报文来自的前一存储池。
7.根据本公开的一些实施例,所述方法还包括,响应于以下各项之一,将已确定的报文和存储池返回前端:第二日志块内不存在用于确定第三存储池的第二关键字;第二日志块内存在字符串telegram end;或第三存储池与第一存储池相同。
8.根据本公开的一些实施例,在上述方法中,确定包含有第一报文的第一日志块包括:在与第一存储池相关联的日志文件中,查找包含第一报文的唯一标识符的第一日志块;或在与第一存储池相关联的日志文件中,查找包含第一报文全文的第一日志块。
9.根据本公开的一些实施例,在上述方法中,第一关键字用于确定第二存储池,并且第一关键字特定于第一存储池,包括以下中的一个或多个:received from,senden,partner_name和km_receive。
10.根据本公开的一些实施例,在上述方法中,第二关键字用于确定第三存储池,并且
特定于第二存储池,包括以下中的一个或多个:waiting for the next,received from,sending telegram to和partner。
11.根据本公开的一些实施例,在上述方法中,第三关键字用于确定第四存储池,并且第三关键字特定于第一存储池,第三关键字包括以下中的一个或多个:eigener_name和received from。
12.根据本公开的一些实施例,在上述方法中,第一关键字是可配置的。
13.根据本公开的一些实施例,所述方法还包括,根据已确定的报文和存储池,从与已确定的每个存储池相关联的日志文件中获取具有相应的已确定的报文的日志;以及将获取的日志中的错误提示进行突出显示。
14.根据本公开另一方面,提供一种用于获取日志的计算机系统,包括:一个或多个处理器,和与所述一个或多个处理器耦接的存储器,所述存储器存储计算机可读程序指令,所述指令在由所述一个或多个处理器执行时得所述一个或多个处理器执行如上所述的方法。
15.根据本公开又一方面,提供一种用于获取日志的非瞬时性计算机可读存储介质,所述非瞬时性计算机可读介质具有存储在其上的计算机可读程序指令,所述指令在由一个或多个处理器执行时使得所述一个或多个处理器执行如上所述的方法。
16.根据本公开还有一方面,提供了一种用于获取日志的计算机程序产品,包括计算机可读程序指令,所述指令在由一个或多个处理器执行时,使得所述一个或多个处理器执行如本文所述的任何方法。
17.利用本公开的方法和系统,在生产系统产生问题时,从第一报文出发即能提取整个生产系统的流程中与该第一报文的流转相关的各个流程,进而快速简便地获取与问题相关的所有日志,能够快速跟踪和定位到问题日志,减少问题排查的时间,从而辅助生产系统的故障恢复。本公开的方法和系统还能通过灵活的参数配置来应用于不断升级的生产系统和新建立的生产线当中,具有灵活可扩展性。
18.从参考附图的以下描述中,本公开其他特征和优点将变得清楚。
附图说明
19.并入说明书中并构成说明书的一部分的附图图示了本公开的实施例,并且与说明书一起用于解释本公开的原理而没有限制。在各图中,类似的标号用于表示类似的项目。
20.图1是示出用于实现本公开实施例的系统架构。
21.图2是示出根据本公开实施例的报文流转的示意图。
22.图3是示出根据本公开实施例的用于获取日志的方法的流程图。
23.图4是示出根据本公开另一实施例的用于获取日志的方法的流程图。
24.图5是示出根据本公开再一实施例的用于获取日志的方法的流程图。
25.图6是示出可以实现根据本公开实施例的系统的一般硬件环境的示意图。
26.图7是示出用于确定包含有第一报文的日志块的示例用户界面的截图。
27.图8是示出包含有第一报文的日志块的日志记录的示例用户界面的截图。
28.图9是示出另一日志块的日志记录的示例用户界面的截图。
29.图10是示出再一日志块的日志记录的示例用户界面的截图。
具体实施方式
30.在以下详细描述中,阐述了许多具体细节以提供对所描述的示例性实施例的透彻理解。但是,对于本领域技术人员清楚的是,所描述的实施例可以在没有这些具体细节中的一些或全部的情况下进行实践。在所描述的示例性实施例中,为了避免不必要地模糊本公开的概念,没有详细描述众所周知的结构或处理步骤。
31.下文所示的每个框图内的方框可以通过硬件、软件、固件或其任意组合来实现以实现本公开的原理。本领域技术人员应该理解的是,每个框图中描述的方框可以被组合或分成子框来实现本公开的原理。
32.本公开中呈现的方法的步骤旨在是说明性的。在一些实施例中,该方法可以用未描述的一个或多个附加步骤来完成和/或在没有所讨论的一个或多个步骤的情况下完成。此外,方法的步骤被图示和描述的顺序并不旨在是限制性的。
33.本公开的实施例涉及用于获取日志的方法、系统、计算机可读介质及计算机程序产品。本公开实施例的用于获取日志的方法包括:获取第一报文;根据第一报文中包含的字符串确定第一存储池;在与第一存储池相关联的日志文件中,确定包含有第一报文的第一日志块;根据第一关键字和第一存储池,利用第一日志块的日志记录来确定第二存储池和第二报文。
34.利用本公开的方法和系统,在生产系统产生问题时,从第一报文出发即能提取整个生产系统的流程中与该第一报文的流转相关的各个流程,进而快速简便地获取与问题相关的所有日志,能够快速跟踪和定位到问题日志,减少问题排查的时间,从而辅助生产系统的故障恢复。本公开的方法和系统还能通过灵活的参数配置来应用于不断升级的生产系统和新建立的生产线当中,具有灵活可扩展性。
35.图1是示出用于实现本公开实施例的系统架构100。该系统架构至少可以包括以下部分:接入101、服务102、存储103、公共服务104和生产系统105。
36.用户可以通过接入101来接入系统所提供的服务102,接入101可以是在移动设备端、电脑端、网页端等显示的接入界面,用于登录或访问系统或服务器。
37.与系统相关的数据或程序等可以存储在存储103当中,例如利用oracle数据库来对数据进行存储。
38.服务102可以利用生产系统105的数据并为生产系统105提供相应服务,例如服务102可以抓取生产系统105的日志等,生产系统105例如可以包括总装车间、装备质量管理等。
39.公共服务104可以包括为用户接入提供认证和授权等功能的服务。
40.服务102至少可以包括以下部分:报文流106、分析107和统计108。其中,报文流106可以涉及存储池109、进程110、事件定义模块(zpi)111等类型。其中存储池又称为spool,也可以是存储块或存储单元,其中的数据遵循先入先出的原则。分析107可以至少包括跟踪112和查询113,以用于对日志进行跟踪和查询等,跟踪112可以与报文协议相关联。统计108至少可以包括以下信息:用户行为114、分析结果115和使用状况116等。
41.利用该系统架构100可以实现根据本公开的实施例。注意,本公开的系统架构100仅为示例,不限于以上部分,也不限于按照以上架构来组成,只要能够实现根据本公开的方法即可。
42.图2是示出根据本公开实施例的报文流转的示意图200。其中,箭头方向示例性地示出报文在201-206当中流转的过程。
43.在该示例示意图中,报文流转从201开始,依次流经202、203、204回到201,另外报文还从201分别流向了205和206,并随后结束流转。
44.在一个示例中,201可以是adp_bs,那么相应地,202为tel_adpb,203为pesir152,204为pextkb52,205为zpi_tele,206为vtsnd_bs。
45.在一个示例中,201可以是adp_ps,那么相应地,202为tel_adpp,203为pestoc52,204为pextof52,205为zpi_tele。
46.注意的是,图2仅为报文流转的一种可能的示例。报文流转所流经的存储池的个数和流转经过哪些/哪个存储池不限于此,报文流转不限于图2所示出的示意图。
47.后文将结合图2的示例报文流转对本公开的实施例进行进一步阐述。
48.图3是示出根据本公开实施例的用于获取日志的方法300的流程图。
49.如图3所示,方法300包括在操作301中,获取第一报文。当生产系统发生问题时,可以先确定与问题相关的第一报文,例如可以是382sir1_382sir1_plabru_atran010452382sir1_plabru_air100000002953026#okayir15220210326105507a00。该第一报文可以由用户确定或由系统抓取。注意,第一报文的内容及获取不限于此。
50.继续方法300,还包括在操作302中,根据第一报文中包含的字符串确定第一存储池。例如,根据上述报文可以确定相应的存储池为adp_bs,如图2中的201所示。
51.继续方法300,还包括在操作303中,在与第一存储池相关联的日志文件中,确定包含有第一报文的第一日志块。
52.在一些实施例中,操作303可以是在与第一存储池相关联的日志文件中,查找包含第一报文的唯一标识符的第一日志块。例如参考图7的用户界面,选定车间(plant)为lydia,系统(system)为ppe,存储池(spool)为adp_bs,在与adp_bs相关联的所有日志中(包括已归档的日志,但不包括网络附属存储(nas)盘中的大量日志)查找包含有唯一标识符abru或plabru_atra的日志块。其中,日志块可以首尾以km_receive关键字来标识。查找到的日志中的一部分例如可以参考图8。注意,唯一标识符不限于以上,日志块首尾的标识不限于以上。
53.在另一些实施例中,操作303可以是在与第一存储池相关联的日志文件中,查找包含第一报文全文的第一日志块。例如通过搜索整个382sir1_382sir1_plabru_atran010452382sir1_plabru_air100000002953026#okayir15220210326105507a00来查找相应的日志块。注意,确定包含有第一报文的第一日志块的操作不限于以上。
54.方法300还包括在操作304中,根据第一关键字和第一存储池,利用第一日志块的日志记录来确定第二存储池和第二报文。下面,我们首先对关键字进行进一步阐释,随后结合图8对操作304进行示例性说明。
55.其中,第一关键字用于确定第二存储池,并且第一关键字可以特定于第一存储池,当然在另一些实施例中也可以不特定于第一存储池。对于每个存储池,可以有一组特定的关键字用于确定下一/前一存储池。在第一存储池为adp_bs的情况下,第一关键字可以包括以下中的一个或多个:received from,senden,partner_name和km_receive。
56.此外,在存储池为gen的情况下,对应的关键字可以包括以下中的一个或多个:
send telegram,start,bytes received和end。在存储池为orp的情况下,对应的关键字可以包括以下中的一个或多个:km-receive,partner_name,incoming telegram,param tele*和waiting for next。在存储池为zpi的情况下,对应的关键字可以包括以下中的一个或多个:waiting for the next,received from,sending telegram to和partner。另外,用于确定下一/前一存储池的关键字还可以例如from sender,spool,sent telegram,received telegram和sending telegram等等。
57.另外,关键字可以是嵌套的一组关键字。例如,可以在日志块内先查找或匹配“from sender”,随后查找或匹配“spool”关键字。
58.一种可能的代码示例可以如下:
[0059][0060]
注意,关键字可以不限于以上示例。在另一些实施例中,关键字可以不是固定的,而是灵活可配置的,只要其可以用于确定与报文流转相关的另一存储池,该另一存储池不一定是紧接着当前存储池的下一存储池,也可以是当前存储池的前一存储池,甚至也可以是当前存储池的相隔不止一个的存储池。
[0061]
在一些实施例中,操作304例如可以是在第一日志块内确定具有第一关键字和第一存储池的第一日志记录,该第一日志记录中包括第二存储池,其中第二存储池是第一报文去往的下一存储池;以及从第一日志记录随后的日志记录中提取第二报文,其中第二报文是基于第一报文生成的由第二存储池接收的报文。
[0062]
仍以前述报文为例,特定于第一存储池adp_bs的第一关键字例如可以是partner_name。参考图8,在所示出的日志块内,根据adp_bs和partner_name,确定了如下这样的日志记录:fqal_tel_senden:eigener_name:[adp_bs]partner_name:[tel_adpb]fqal_tel_senden:eigener_name:[adp_bs]partner_name:[zpi_tele]
[0063]
根据这两条日志记录包括的内容,可以确定前述报文要去往的下一存储池,两条流转分别去往tel_adpb和zpi_tele。随后,根据adp_bs的日志结构,在上述每条日志记录随后的日志记录中则包括有生成的第二报文。例如,去往tel_adpb的第二报文为382sir1_382sir1_pesvorgbkein0104ir15220210326105507a00。而去往zpi_tele的第二报文则为(参见图8倒数第3-5行)adp_bs adp_bs adp_telekein0001adp_bs52382sir1_plabru_air100000002953026oinsert20210326105507029。
[0064]
上述操作303-304可以循环执行,以不断确定下一存储池或下一报文,直到满足结束条件为止。
[0065]
循环过程可以包括:在与第二存储池相关联的日志文件中,确定包含有第二报文
的第二日志块;根据第二关键字和第二存储池,利用第二日志块的日志记录来确定第三存储池,其中第三存储池是第二报文去往的下一存储池;以及确定第三报文,其中第三报文是基于第二报文生成的由第三存储池接收的报文。
[0066]
例如,在第二存储池是图2中示出的tel_adpb的情况下,可以根据相应的关键字和tel_adpb来确定出报文流转到pesir152。
[0067]
又如,在第二存储池为图2中示出的zpi_tele的情况下,可以根据waiting for the next,received from,sending telegram to和partner中的一个或多个关键字以及zpi_tele,来查找报文流转。此例中,未匹配到如上关键字,报文在zpi_tele处结束流转。
[0068]
结束条件可以包括但不限于以下中的一个或多个:当前日志块内不存在用于确定下一存储池的关键字;当前日志块内存在字符串telegram end;或确定出的下一存储池与第一存储池相同。
[0069]
后文将结合图4进一步描述操作303-304的循环过程。
[0070]
此外,本公开的方法不限于确定下一存储池或下一报文,还可以进一步用于确定前一存储池或前一报文,将结合图5进行描述。另外,本公开的方法也可以既用于确定前一存储池,又用于确定下一存储池。
[0071]
图4是示出根据本公开另一实施例的用于获取日志的方法400的流程图。方法400中的操作301-302类似于方法300中的相应操作,此处不再赘述。
[0072]
如图4所示,在操作301-302之后,继续方法400,还包括操作401,在该操作中,将第一报文视为当前报文,将第一存储池视为当前存储池。
[0073]
继续方法400,还包括在操作402中,在与当前存储池相关联的日志文件中,确定包含有当前报文的当前日志块。可以类似于操作303的示例来执行操作402。
[0074]
继续方法400,还包括在操作403中,判断当前日志块内是否存在用于指示报文流转结束的字符串,例如telegram end。telegram end指示报文流转的正常结束。若为是,则执行操作408-410;若为否,则继续执行操作404。
[0075]
继续方法400,还包括在操作404中,判断当前日志块内是否存在用于确定下一存储池的任何关键字。若为是,则继续执行操作405;若为否,则执行操作408-410。参考图9,以zpi_tele的日志文件为例,此日志块中,在接收到报文后无法匹配或查找到"sending telegram to"和“partner”等之类的关键字,则视为报文流转结束。
[0076]
继续方法400,还包括在操作405中,根据用于确定下一存储池的关键字和当前存储池,利用当前日志块的日志记录来确定下一存储池和下一报文。可以类似于操作304来执行操作405。
[0077]
继续方法400,还包括在操作406中,判断在405中确定的下一存储池是否与第一存储池相同。若为是,则执行操作408-410;若为否,则继续执行操作407。参考图10,以第一存储池为adp_ps为例,报文在流转到pextof52后又回到adp_ps,根据“ips response telegram《ipabru_r》recognized”,能够识别出报文的起点存储池(第一存储池)和终点存储池(下一存储池)都是adp_ps,则视为报文流转结束。
[0078]
继续方法400,还包括在操作407中,用405中确定的下一报文来更新当前报文,并用405中确定的下一存储池来更新当前存储池,随后返回执行操作402,以继续该循环过程。
[0079]
方法400还包括在操作408中,返回在401-407的操作过程中已确定的各个存储池
和相应的报文,例如可以返回给前端以供处理。接着,在操作409中,根据已确定的报文和存储池,从与已确定的每个存储池相关联的日志文件中获取具有相应的已确定的报文的日志。然后,在操作410中,将获取的日志中的错误提示进行突出显示,例如error可以高亮示出。
[0080]
图5是示出根据本公开再一实施例的用于获取日志的方法的流程图。方法500中的操作301-304类似于方法300中的相应操作,此处不再赘述。
[0081]
如图5所示,方法500还包括操作501,在该操作中,根据第三关键字和第一存储池,利用第一日志块的记录来确定第四存储池,其中第四存储池是第一报文来自的前一存储池。其中,第三关键字用于确定第四存储池,并且第三关键字特定于第一存储池。在一些示例中,第三关键字例如可以包括以下中的一个或多个:eigener_name和received from。
[0082]
利用本公开的方法和系统,在生产系统产生问题时,从第一报文出发即能提取整个生产系统的流程中与该第一报文的流转相关的各个流程,进而快速简便地获取与问题相关的所有日志,能够快速跟踪和定位到问题日志,减少问题排查的时间,从而辅助生产系统的故障恢复。本公开的方法和系统还能通过灵活的参数配置来应用于不断升级的生产系统和新建立的生产线当中,具有灵活可扩展性。
[0083]
图6是示出可以实现根据本公开实施例的系统的一般硬件环境的示意图。
[0084]
现在参考图6,示出了计算节点600的示例的示意图。计算节点600仅是合适的计算节点的一个示例,并且不旨在暗示关于本文描述的实施例的使用范围或功能的任何限制。无论如何,计算节点600都能够实现和/或执行上文阐述的任何功能。
[0085]
在计算节点600中,存在计算机系统/服务器4012,其可与众多其它通用或专用计算系统环境或配置一起操作。可适于与计算机系统/服务器4012一起使用的众所周知的计算系统、环境和/或配置的示例包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子产品、网络pc、小型计算机系统﹑大型计算机系统和包括任意上述系统或设备的分布式云计算技术环境等等。
[0086]
计算机系统/服务器4012可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。一般而言,程序模块可以包括执行特定的任务或者实现特定的抽象数据类型的例程、程序、对象、组件、逻辑、数据结构等。计算机系统/服务器4012可以在分布式云计算环境中实践,其中由通过通信网络链接的远程处理设备执行任务。在分布式云计算环境中,程序模块可以位于包括存储器存储设备的本地或远程计算机系统存储介质二者上。
[0087]
如图6所示,计算节点600中的计算机系统/服务器4012以通用计算设备的形式示出。计算机系统/服务器4012的组件可以包括但不限于:一个或者多个处理器或者处理单元4016、系统存储器4028、将包括系统存储器4028的不同系统组件耦合到处理单元4016的总线4018。
[0088]
总线4018表示若干类型的总线结构中的任意一种或多种,包括存储器总线或者存储器控制器、外围总线、加速图形端口、处理器或者使用各种总线结构中的任意总线结构的局部总线。作为示例而非限制,这些体系结构包括但不限于工业标准体系结构(isa)总线、微通道体系结构(mac)总线、增强型isa总线、视频电子标准协会(vesa)局部总线、外围组件
互连(pci)总线、外围组件互连高速(pcie)和先进微控制器总线体系架构(amba)。
[0089]
计算机系统/服务器4012典型地包括各种计算机系统可读介质。这些介质可以是由计算机系统/服务器4012访问的任意可得介质,包括易失性和非易失性介质、可移除的和不可移除的介质。
[0090]
系统存储器4028可以包括以易失性存储器的形式的计算机系统可读介质,诸如随机存取存储器(ram)4030和/或高速缓存存储器4032。计算机系统/服务器4012还可以包括其它可移除/不可移除的、易失性/非易失性的计算机系统存储介质。仅作为示例,可以提供用于从不可移除的非易失性磁介质(未示出,并且通常被称为“硬盘驱动器”)读取以及向不可移除的非易失性磁介质写入的存储系统4034。虽然未示出,可以提供用于从可移除的非易失性磁盘(例如“软盘”)读取以及向可移除的非易失性磁盘写入的磁盘驱动器,以及用于从可移除的非易失性光盘(诸如cd-rom、dvd-rom或者其它光介质)读取以及向可移除的非易失性光盘写入的光盘驱动器。在这些情况下,每个都可以通过一个或者多个数据介质接口连接到总线4018。如下文将进一步描绘和描述的,存储器4028可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本公开的实施例的功能。
[0091]
通过示例而非限制,具有一组(至少一个)程序模块4042的程序/实用程序4040以及操作系统、一个或者多个应用程序、其它程序模块以及程序数据可被存储在存储器4028中。操作系统、一个或多个应用程序、其它程序模块以及程序数据或其某个组合中的每一个都可以包括网络环境的实现。程序模块4042一般执行如本文所描述的实施例中的功能和/或方法。
[0092]
计算机系统/服务器4012还可以与一个或多个外部设备4014(诸如键盘、指示设备、显示器4024等)、使用户能够与计算机系统/服务器4012交互的一个或多个设备和/或使计算机系统/服务器4012能够与一个或多个其它计算设备通信的任何设备(例如,网卡、调制解调器等)进行通信。这种通信可以经由输入/输出(i/o)接口4022发生。还有,计算机系统/服务器4012可以经由网络适配器4020与一个或多个网络(诸如局域网(lan)、通用广域网(wan)和/或公共网络(例如,互联网))进行通信。如所描绘的,网络适配器4020经由总线4018与计算机系统/服务器4012的其它组件通信。应当理解的是,虽然未示出,但是其它硬件和/或软件组件可以与计算机系统/服务器4012结合使用。示例包括但不限于:微代码、设备驱动器、冗余处理单元、外部盘驱动器阵列、raid系统、磁带驱动器和数据存档存储系统等。
[0093]
本公开可以被实施为系统、方法和/或计算机程序产品。该计算机程序产品可以包括(一个或多个)计算机可读存储介质,其上具有计算机可读程序指令,用于使处理器执行本公开的方面。
[0094]
计算机可读存储介质可以是可以保持和存储用于由指令执行设备使用的指令的有形设备。计算机可读存储介质可以是例如(但不限于)电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的示例的非穷举的列表包括以下:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd-rom)、数字通用盘(dvd)、记忆棒、软盘、机械编码设备(诸如其
上存储有指令的打孔卡或凹槽内凸起结构)以及上述的任意合适的组合。如本文所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其它自由传播的电磁波、通过波导或其它传输介质传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
[0095]
本文所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络(例如互联网、局域网、广域网和/或无线网)下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或者网络接口从网络接收计算机可读程序指令,并转发这些计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
[0096]
用于执行本公开的操作的计算机可读程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、依赖机器的指令、微代码、固件指令、状态设置数据,或者以一种或多种编程语言的任意组合编写的或者源代码或者目标代码,这些编程语言包括面向对象的编程语言(诸如smalltalk、c++等)以及常规过程式编程语言(诸如“c”编程语言或类似的编程语言)。计算机可读程序指令可以完全地在用户的计算机上执行、部分地在用户的计算机上执行、作为独立的软件包执行、部分在用户的计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络(包括局域网(lan)或广域网(wan))连接到用户的计算机,或者,可以连接到外部计算机(例如使用互联网服务提供商通过互联网)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,包括例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla),该电子电路可以执行计算机可读程序指令,以便执行本公开的方面。
[0097]
本文参考根据本公开的实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的方面。将理解的是,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
[0098]
这些计算机可读程序指令可以被提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器以生产出机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/行为的装置。这些计算机可读程序指令也可被存储在计算机可读存储介质中,这些计算机可读程序指令可以指导计算机、可编程数据处理装置和/或其它设备以特定方式工作,从而,其中存储有指令的计算机可读介质包括制造品,该制造品包括实现流程图和/或框图中的一个或多个方框中规定的功能/行为的方面的指令。
[0099]
计算机可读程序指令也可被加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程装置或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/行为。
[0100]
图中的流程图和框图显示了根据本公开的各个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表模块、段或指令的一部分,该模块、段或指令的一部分包含用于实现规定的(一个或多个)逻
辑功能的一个或多个可执行指令。在一些替换的实现中,方框中所标注的功能也可以以不同于图中所标注的顺序发生。例如,取决于所涉及的功能,两个连续的方框实际上可以基本并行地执行,或者这些方框有时也可以按相反的顺序执行。还将注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以由执行规定的功能或行为的或执行专用硬件与计算机指令的组合的基于专用硬件的系统来实现。
[0101]
本领域技术人员还应当理解,在本公开的实施例中按照顺序例示的各种操作并不一定必须按照例示的顺序执行。本领域技术人员可以根据需要调整操作的顺序。本领域技术人员还可以根据需要,增加更多的操作或省略其中一些操作。
[0102]
对本公开的各种实施例的描述已经出于说明的目的给出,但是并不旨在是详尽的或限制于所公开的实施例。在不脱离所描述的实施例的范围和精神的情况下,许多修改和变化对于本领域普通技术人员来说将是显然的。选择本文使用的术语,以最好地解释实施例的原理、实际应用或对市场中发现的技术的技术改进,或者使本领域其他技术人员能够理解本文公开的实施例。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1