CN111258648B - 主机系统的交互控制方法、装置、计算机系统和介质 - Google Patents
主机系统的交互控制方法、装置、计算机系统和介质 Download PDFInfo
- Publication number
- CN111258648B CN111258648B CN202010056747.4A CN202010056747A CN111258648B CN 111258648 B CN111258648 B CN 111258648B CN 202010056747 A CN202010056747 A CN 202010056747A CN 111258648 B CN111258648 B CN 111258648B
- Authority
- CN
- China
- Prior art keywords
- data
- command
- host
- instruction
- execution
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
- G06F9/30043—LOAD or STORE instructions; Clear instruction
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
本公开提供了一种主机系统的交互控制方法,应用于中间系统。该方法包括:接收来自客户端的主机命令操作指令,该主机命令操作指令包括:流程标识和指令参数。然后,从预定存储空间获取针对上述流程标识的至少一个主机命令和该至少一个主机命令的执行逻辑。接着,基于上述至少一个主机命令、上述执行逻辑和上述指令参数,生成命令序列。再将命令序列发送至主机系统,以使主机系统基于上述执行逻辑和上述指令参数执行上述至少一个主机命令。本公开还提供了一种主机系统的交互控制装置、计算机系统和介质。
Description
技术领域
本公开涉及计算机技术领域,更具体地,涉及一种主机系统的交互控制方法、装置、计算机系统和介质。
背景技术
在主机系统的交互控制领域,命令是用户与大型主机系统、终端设备与大型主机系统之间进行交互、访问,对大型主机系统进行操作的基本方式。相关技术存在以下缺点:
1、部分方案命令操作和交互过程需要用户与系统直接实时交互,高度依赖人工操作,自动化程度很低;
2、部分方案对命令操作和交互过程支持自动化,但仅局限于工具提供的有限功能,但不支持用户设定的执行流程、判断策略;
3、命令操作和交互依赖于专用的工具或者平台,或局限于特定的设备。使用前需要提前在安装相应的程序,且只能在指定的操作系统和终端设备上使用。
发明内容
本公开的一个方面提供了一种主机系统的交互控制方法,应用于中间系统。该方法包括:接收来自客户端的主机命令操作指令,该主机命令操作指令包括:流程标识和指令参数。然后,从预定存储空间获取针对上述流程标识的至少一个主机命令和该至少一个主机命令的执行逻辑。接着,基于上述至少一个主机命令、上述执行逻辑和上述指令参数,生成命令序列。再将命令序列发送至主机系统,以使主机系统基于上述执行逻辑和上述指令参数执行上述至少一个主机命令。
可选地,上述方法还包括:接收来自客户端的数据读取指令,该数据读取指令包括索引标识。然后,从预定存储空间获取针对上述索引标识的至少一个存储数据。接着,将所获取的至少一个存储数据转换为第一预定格式数据。再将转换后的第一预定格式数据发送至客户端,以使客户端对该第一预定格式数据进行展示。
可选地,上述方法还包括:接收来自客户端的数据写入指令,该数据写入指令包括待写入数据。然后,将待写入数据转换为第二预定格式数据。接着,将转换后的第二预定格式数据添加至预定存储空间。
可选地,上述待写入数据包括交互控制策略,该交互控制策略包括:流程标识、至少一个主机命令和执行逻辑。该执行逻辑包括如下至少一项:至少一个主机命令之间的前后项关系、至少一个主机命令中任一主机命令的执行标准、任一主机命令的执行策略、和任一主机命令的判断条件。
可选地,待写入数据包括解析策略,解析策略包括如下至少一项:指令名称、指令格式、类型、和至少一个输入数据。
可选地,上述方法还包括:接收来自主机系统的执行返回数据,该执行返回数据包括如下至少一项:执行结果和执行日志。将上述执行返回数据转换为第三预定格式数据,然后,将转换后的第三预定格式数据添加至预定存储空间。
可选地,上述方法还包括:接收来自客户端的输入指令。然后,对输入指令进行解析,以确定输入指令所属的类别。接着,基于输入指令所属的类别,确定输入指令为主机命令操作指令、数据读取指令、或数据写入指令。
可选地,上述对所述输入指令进行解析包括:从预定存储空间获取解析策略,然后基于解析策略对输入指令进行解析,以确定输入指令所属的类别。
本公开的另一方面提供了一种主机系统的交互控制装置,应用于中间系统。该装置包括:接收模块、获取模块、生成模块和控制模块。接收模块用于接收来自客户端的主机命令操作指令,该主机命令操作指令包括:流程标识和指令参数。获取模块用于从预定存储空间获取针对流程标识的至少一个主机命令和该至少一个主机命令的执行逻辑。生成模块用于基于上述至少一个主机命令、上述执行逻辑和上述指令参数,生成命令序列。控制模块用于将上述命令序列发送至主机系统,以使主机系统基于上述执行逻辑和上述指令参数执行上述至少一个主机命令。
本公开的另一方面提供了一种计算机系统,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时用于实现如上所述的方法。
本公开的另一方面提供了一种计算机可读存储介质,存储有计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。
本公开的另一方面提供了一种计算机程序,所述计算机程序包括计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。
根据本公开的实施例,基于独立于终端设备和主机系统的中间系统实施,利用了中间系统的交互接口统一、兼容的特点可以实现任意终端设备和任意主机系统之间的交互控制,无需进行重新配置和适应。主机系统在接收到主机命令操作指令时,可以从统一存储和管理的交互控制流程数据中获取相应的主机命令和执行逻辑,再生成相应的实例化的命令序列,以发送至主机系统并由主机系统遵循相应执行逻辑和指令参数执行主机命令,仅通过一个指令便可控制主机系统执行完整流程命令,十分快捷高效,减少人工参与,自动化程度高。
附图说明
为了更完整地理解本公开及其优势,现在将参考结合附图的以下描述,其中:
图1示意性示出了根据本公开实施例的应用主机系统的交互控制方法和装置的示例性系统架构;
图2示意性示出了根据本公开实施例的应用主机系统的交互控制方法的架构图;
图3示意性示出了根据本公开实施例的主机系统的交互控制方法的流程图;
图4示意性示出了根据本公开另一实施例的主机系统的交互控制方法的流程图;
图5意性示出了根据本公开实施例的主机系统的交互控制过程的示例示意图;
图6意性示出了根据本公开另一实施例的主机系统的交互控制过程的示例示意图;
图7示意性示出了根据本公开实施例的主机系统的交互控制装置的框图;以及
图8示意性示出了根据本公开实施例的适于实现用于绘制程序流程图的方法的计算机系统的框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。
本公开的实施例提供了一种主机系统的交互控制方法、装置、计算机系统及介质。其中,主机系统的交互控制方法可以包括:指令接收过程、执行逻辑获取过程、命令序列生成过程和控制过程。在指令接收过程,接收来自客户端的主机命令操作指令,该主机命令操作指令可以包括:流程标识和指令参数。然后基于所接收的主机命令操作指令中的流程标识进行执行逻辑获取过程,从预定存储空间获取针对上述流程标识的至少一个主机命令和该至少一个主机命令的执行逻辑。接着进行命令序列生成过程,基于上述至少一个主机命令、上述执行逻辑和上述指令参数,生成命令序列。接着进行针对主机系统的控制过程,将命令序列发送至主机系统,以使主机系统基于上述执行逻辑和上述指令参数执行上述至少一个主机命令。
图1示意性示出了根据本公开实施例的可以应用主机系统的交互控制方法和装置的示例性系统架构100。需要注意的是,图1所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
如图1所示,根据该实施例的系统架构100可以包括终端设备101、102、103,网络104和主机系统105。网络104用以在终端设备101、102、103和主机系统105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
终端设备101、102、103上可以安装有各种客户端应用,例如主机交互类应用等(仅为示例)。响应于用户的输入指示,终端设备101、102、103可以通过以上客户端应用与主机系统105进行交互,以根据实际业务需要控制主机系统105在运行过程中执行一个或多个主机命令并返回执行结果。或者,响应于用户直接针对主机系统105的输入指示,以直接控制主机系统105在运行过程中执行一个或多个主机命令并返回执行结果。
终端设备101、102、103可以是具有计算能力的各种电子设备,包括但不限于服务器、膝上型便携计算机和台式计算机等等。主机系统105可以是提供各种服务支持的大型主机系统,具有较高的可靠性和稳定性,用于进行业务相关的各种数据的分析处理等。
应该理解,图1中的终端设备、网络和主机系统的数目仅仅是示意性的。根据实际需要,可以具有任意数目的终端设备、网络和主机系统。
在主机系统的交互控制领域,命令是用户与大型主机系统、终端设备与大型主机系统之间进行交互、访问,对大型主机系统进行操作的基本方式。一种处理方式下,针对大型主机系统的交互控制基于大型主机系统现有的命令交互功能进行。示例性地,该处理方式下用户对大型主机的命令操作主要可以包括:用户通过专用终端与大型主机建立直接连接,在大型主机系统界面中进行命令操作和交互;用户通过厂商提供或自行研发的各类专用工具,间接完成与大型主机的命令操作和交互。
然而,大型主机系统提供的命令交互功能存在较大的局限性,例如:(1)用户只能在系统界面中实时提交命令,如在需要主机系统执行操作A时,提交与操作A对应的命令,在需要主机系统执行操作B时,提交与操作B对应的命令,等等,以此类推。操作过程繁琐,效率低且占用大量时间和人力;(2)命令返回仅支持实时同步展示,命令返回结果在处理完成后立刻显示于用户终端,供用户进行实时人工处理,不支持返回结果的回溯、查询等;(3)不支持命令返回的自动后续处理,用户需要对命令返回结果进行人工判断后再指示进行下一步处理。
可以理解,大型主机系统仅提供了命令实时提交和实时返回信息的展示功能,无法满足命令延迟提交、按顺序提交、异步处理、自动处理等需求。导致上述处理方式存在以下缺点:1、部分方案命令操作和交互过程需要用户与系统直接实时交互,高度依赖人工操作,自动化程度很低;2、部分方案对命令操作和交互过程支持自动化,但仅局限于工具提供的有限功能,但不支持用户设定的执行流程、判断策略;3、命令操作和交互依赖于专用的工具或者平台,或局限于特定的设备。使用前需要提前在安装相应的程序,且只能在指定的操作系统和终端设备上使用。
根据本公开实施例提供了一种应用于中间系统的主机系统的交互控制方法,中间系统为部署于终端设备和大型主机系统之间的中间代理设备。下面先对实施主机系统的交互控制方法的架构进行介绍。再从该架构的中间系统的角度出发对根据本公开实施例的主机系统的交互控制方法进行说明。应注意,以下方法中各个操作的序号仅作为该操作的表示以便描述,而不应被看作表示该各个操作的执行顺序。除非明确指出,否则该方法不需要完全按照所示顺序来执行。
图2示意性示出了根据本公开实施例的应用主机系统的交互控制方法的架构图。
如图2所示,根据本公开实施例,在终端设备210和主机系统220之间还部署有中间系统230。中间系统230独立运行,不依赖于终端设备210和大型主机系统220,中间系统230对终端设备210和主机系统220的运行状态、版本、配置无特殊要求。
中间系统230作为主机系统220和任意终端设备210之间的统一中间代理,示例性地,可以提供如下功能中的至少一项:(1)中间系统230连接主机系统220,可以直接与大型主机系统进行命令交互,发送命令并获取返回信息;(2)中间系统230可以提供支持多数平台的交互接口和用户界面,允许用户从任意平台连接中间系统进行操作交互;(3)中间系统230可以按照用户配置的自动控制交互的逻辑、流程、内容,代替终端设备210向主机系统220发送命令。
下面再从图2所示的中间系统230的角度出发对根据本公开实施例的主机系统的交互控制方法进行说明。应注意,以下方法中各个操作的序号仅作为该操作的表示以便描述,而不应被看作表示该各个操作的执行顺序。除非明确指出,否则该方法不需要完全按照所示顺序来执行。
图3示意性示出了根据本公开实施例的主机系统的交互控制方法的流程图。
如图3所示,该方法可以包括如下操作S301~S304。
在操作S301,接收来自客户端的主机命令操作指令。
示例性地,主机命令操作指令可以包括流程标识和指令参数。客户端可以是安装于任意终端设备的客户端应用(application),也可以是安装于中间系统的客户端应用。
然后,在操作S302,从预定存储空间获取针对上述流程标识的至少一个主机命令和该至少一个主机命令的执行逻辑。
示例性地,预定存储空间可以部署于中间系统中,也可以部署于可以与中间系统相互通信的其他系统或设备中。该预定存储空间存储有预先定义的针对主机系统的一个或多个交互控制策略,不同的交互控制策略用于表征不同的交互控制流程。每个交互控制流程具有相应的流程标识、至少一个主机命令和该至少一个主机命令的执行逻辑。故本操作S302可以从预定存储空间获取针对主机命令操作指令的流程标识的主机命令和相应的执行逻辑。
接着,在操作S303,基于上述至少一个主机命令、上述执行逻辑和上述指令参数,生成命令序列。
示例性地,上述获取到的主机命令和相应的执行逻辑尚未实例化,本操作S303基于指令参数将上述至少一个主机命令和相应的执行逻辑生成命令序列,使得该命令序列不仅可以表征不同主机命令之间的顺序关系、执行逻辑关系(例如每个主机命令的开始条件、结束条件、成功条件、失败条件、分支规则、等等)、指定参数关系等。
接着,在操作S304,将命令序列发送至主机系统,以使主机系统基于上述执行逻辑和上述指令参数执行上述至少一个主机命令。
示例性地,上述将命令序列发送至主机系统可以是按照执行逻辑依次将相应的主机命令和相关参数发送至主机系统,以使主机系统按照执行逻辑和指令参数依次执行主机命令,直至全部执行结束。
本领域技术人员可以理解,根据本公开实施例的主机系统的交互控制方法基于独立于终端设备和主机系统的中间系统实施,利用了中间系统的交互接口统一、兼容的特点可以实现任意终端设备和任意主机系统之间的交互控制,无需进行重新配置和适应。主机系统在接收到主机命令操作指令时,可以从统一存储和管理的交互控制流程数据中获取相应的主机命令和执行逻辑,再生成相应的实例化的命令序列,以发送至主机系统并由主机系统遵循相应执行逻辑和指令参数执行主机命令,仅通过一个指令便可控制主机系统执行完整流程命令,十分快捷高效,减少人工参与,自动化程度高。
根据本公开的实施例,中间系统除了接收来自客户端的主机命令操作指令之外,还可以接收来自客户端的数据读取指令和/或数据写入指令。
图4示意性示出了根据本公开另一实施例的主机系统的交互控制方法的流程图。
如图4所示,该方法除上述操作S301~S304之外,为满足客户端的数据读取需求,该方法还可以包括操作S305~S308,其中操作S301~S304在上文中已说明,在此不再赘述。
在操作S305,接收来自客户端的数据读取指令,该数据读取指令包括索引标识。
然后,在操作S306,从预定存储空间获取针对上述索引标识的至少一个存储数据。
接着,在操作S307,将所获取的至少一个存储数据转换为第一预定格式数据。
在操作S308,将转换后的第一预定格式数据发送至客户端,以使客户端对该第一预定格式数据进行展示。
根据本公开的实施例,为满足客户端的输入写入请求,根据本公开实施例的主机系统的交互控制方法还可以包括操作S309~S311。
在操作S309,接收来自客户端的数据写入指令,该数据写入指令包括待写入数据。
然后,在操作S310,将待写入数据转换为第二预定格式数据。
接着,在操作S311,将转换后的第二预定格式数据添加至预定存储空间。
其中,第二预定格式与上述第一预定格式可以相同或不同,在此不做限制。
示例性地,上述待写入数据例如可以包括交互控制策略,该交互控制策略包括:流程标识、至少一个主机命令和执行逻辑。该执行逻辑包括如下至少一项:至少一个主机命令之间的前后项关系、至少一个主机命令中任一主机命令的执行标准、任一主机命令的执行策略、和任一主机命令的判断条件。不同的交互控制策略用于表征不同的交互控制流程。添加至预定存储空间的交互控制策略可以用于后续针对主机命令操作指令的命令序列的生成。
示例性地,上述待写入数据例如包括解析策略,解析策略包括如下至少一项:指令名称、指令格式、类型、和至少一个输入数据。添加至预定存储空间的解析策略可以用于中间系统针对接收到的输入指令的解析操作。例如,中间系统接收来自客户端的输入指令。然后,中间系统从预定存储空间获取解析策略,然后基于解析策略对输入指令进行解析,以确定输入指令所属的类别。接着,基于输入指令所属的类别,确定输入指令为主机命令操作指令、数据读取指令、还是数据写入指令。从而能够基于不同类别的指令执行图4所示的相应操作。
根据本公开的实施例,根据本公开实施例的主机系统的交互控制方法还可以包括操作S312~S314。
在操作S312,接收来自主机系统的执行返回数据,该执行返回数据包括如下至少一项:执行结果和执行日志。操作S312可以在上文中的操作S304之后执行。
在操作S313,将上述执行返回数据转换为第三预定格式数据。
其中,第三预定格式与上述第二预定格式可以相同或不同,在此不做限制。
然后,在操作S314,将转换后的第三预定格式数据添加至预定存储空间。
下面参考图5和图6,结合具体例子对根据本公开实施例的主机系统的交互控制方法进行示例性说明。
图5意性示出了根据本公开实施例的主机系统的交互控制过程的示例示意图。
图6意性示出了根据本公开另一实施例的主机系统的交互控制过程的示例示意图。
如图5~图6所示,在终端设备510和主机系统520之间部署有中间系统530。中间系统530可以包括统一交互装置531、统一数据存储装置532和命令执行交互控制装置533,统一交互装置531、统一数据存储装置532和命令执行交互控制装置533中任意两个装置之间为松耦合。
统一交互装置531可以包括终端交互和接口控制模块5311和数据解析处理模块5312。
终端交互和接口控制模块5311的主要功能包括:用户交互界面的展示,与用户/其他外部终端510的交互和通信。示例性地,一方面,终端交互和接口控制模块5311获取来自用户/终端510输入指令,判断输入指令的合法性后传递给数据解析处理模块5312。另一方面,终端交互和接口控制模块5311从数据解析处理模块5312获取需要反馈用户或返回至终端接口的数据,在交互界面进行展示或从终端接口输出。
数据解析处理模块5312用于对输入指令进行解析处理,并确定输入指令所属的类别,从而确定输入指令的用途。例如如果输入指令为数据写入指令,携带有需要存储的数据(可称为待写入数据),则数据解析处理模块5312需进一步将待写入数据解析为用于统一存储的格式,将需要保存的待写入数据提交至统一数据存储装置532。例如如果输入指令为执行指令,则需判断该执行指令为数据读取指令或是主机命令操作指令。如果是数据读取指令,则从统一数据存储装置532获取用于处理和返回的数据。如果为主机命令操作指令,则将主机命令操作指令传递给命令执行交互控制装置533的命令执行控制模块5332。
可以理解,数据解析处理模块5312可以具有以下功能:(1)对用户/终端510提交的输入以及对准备返回给用户/终端510的数据进行解析处理;(2)对于涉及命令执行交互的输入指令和数据,在解析后提交命令执行交互控制装置533处理,并将命令执行交互控制装置533处理返回的数据通过接口返回或通过界面向用户展示;(3)涉及数据存储的输入指令,在解析处理后存储于统一数据存储装置532;涉及数据读取的输入指令,则从统一数据存储装置532获取,处理返回用户或外部接口;(4)记录交互处理相关的日志信息。
统一数据存储装置532可以用于以预定统一的一种或多种数据格式来存储数据,以在其他模块需要时从统一数据存储装置532获取相应数据。统一数据存储装置532所存储的数据可以包括例如用户自定义交互控制策略,上文已提到,不同交互控制策略对应于不同交互控制流程,可以通过交互控制策略来进行后续对于主机系统520的自动化控制。统一数据存储装置532所存储的数据可以包括例如主机系统520执行主机命令后返回的执行结果、记录日志等,通过这些数据能够监控主机系统520的命令执行情况、运行状态等。
命令执行交互控制装置533可以包括配置数据解析模块5331、命令执行控制模块5332和主机命令交互模块5333。命令执行交互控制装置533从统一数据存储装置532中读取出用户自定义的交互控制策略,解析出相应交互控制流程中各个命令的执行逻辑,例如包括执行顺序、前后项关系、成功条件等内容,然后按照命令顺序和前后项关系向主机系统520依次发送主机命令并判断返回是否符合需求,记录交互控制流程的执行情况,直至交互控制流程中所有命令被执行完毕。
示例性地,配置数据解析模块5331将从统一数据存储装置532中读取的交互控制策略解析成包含前后项关系、执行标准、判断条件等相关参数的命令序列,并交由命令执行控制模块5332处理和执行。命令执行控制模块5332按照配置数据解析模块5331输出的命令序列的顺序,控制主机命令交互模块5333访问大型主机系统520,有序执行命令并获取返回,然后按照相关参数的约束比对和处理返回信息,调整自动交互控制流程的流转方向。主机命令交互模块5333按照命令序列,执行命令执行控制模块5332的指令,完成主机命令提交过程,等待并抓取命令执行返回数据。
参阅图5,具体示出了针对客户端提交的数据写入指令的数据录入过程,例如可以包括交互控制策略的录入过程和解析策略的录入过程。
示例性地,在交互控制策略的录入过程中,中间系统530的终端交互和接口控制模块5311接收用户界面或者终端510输入的待写入数据。
终端交互和接口控制模块5311将获得的待写入数据传递给数据解析处理模块,数据解析处理模块5312将待写入数据解析为用于统一存储的格式,并传递给统一数据存储装置532,由统一数据存储装置532将上述数据保存于文件或数据库表中。
待写入数据可以包括针对一个交互控制流程的任一命令的内容、执行策略参数、命令间的前后项关系以及逻辑分支判断条件,如表1所示。
表1
流程标识 | |
命令编号 | |
命令内容 | |
前项 | |
成功后项 | |
失败后项 | |
成功条件 | |
执行策略1 | |
执行策略2 | |
....... | |
执行策略N |
表1列出了一个主机命令的相关执行参数。例如,该主机命令所属的交互控制流程的流程标识(例如可以是流程名称),该主机命令的命令编号,该主机命令的命令内容,该主机命令的前项命令,该主机命令如果执行成功,其所对应的成功后项命令,该主机命令如果执行失败,其所对应的失败后项命令,该主机命令的成功条件,以及该主机命令的执行策略1、执行策略2、……、执行策略N,N为正整数。
示例性地,在解析策略录入过程中,中间系统530的终端交互和接口控制模块5311接收用户界面或者终端510输入的待写入数据。
终端交互和接口控制模块5311将获得的待写入数据传递给数据解析处理模块,数据解析处理模块5312将待写入数据解析为用于统一存储的格式,并传递给统一数据存储装置532,由统一数据存储装置532将上述数据保存于文件或数据库表中。
待写入数据可以包括针对输入指令的解析策略。解析策略的内容可以如表2所示。
表2
指令标识 | |
指令格式 | |
类型 | |
输入数据1 | |
输入数据2 | |
...... | |
输入数据M |
表2列出了一个输入指令的相关解析参数。例如可以包括指令标识(如指令名称)、指令格式、类型、输入数据1、输入数据2、……、输入数据M,M为正整数。
参阅图6,在图5的基础上,还示出了针对客户端提交的主机命令操作指令的命令交互控制过程和针对客户端提交的数据读取指令的数据读取过程。
示例性地,在命令交互控制过程中,终端交互和接口控制模块5311接收到用户界面或者终端510输入的主机命令操作指令,并将主机命令操作指令传递给命令执行控制模块5332,主机命令操作指令的数据格式可以如表3所示。
表3
执行参数 | |
流程编号 |
表3列出了一个主机命令操作指令的相关参数,例如包括执行参数和流程标识,本例中流程标识为流程编号。
命令执行控制模块5332根据主机命令操作指令指定的流程编号,从统一数据存储装置532读取对应于该流程编号的交互控制流程中的所有命令及相关数据,并传递给配置数据解析模块5331。配置数据解析模块5331根据相应流程中的所有命令及相关数据,构建包含前后项关系、执行标准、判断条件等相关参数的命令序列并反馈给命令执行控制模块5332。命令执行控制模块5332按命令序列及相关执行参数,依次调用主机命令交互模块5333连接并提交主机命令,获得返回并进行处理,直至流程的所有主机命令都已执行并返回,再将返回数据提交数据解析处理模块5312进行解析。数据解析处理模块5312将返回数据进行解析处理为用于统一存储的格式,并传递给统一数据存储装置532,由统一数据存储装置532将上述数据保存于文件或数据库表中。
示例性地,在数据读取过程中,终端交互和接口控制模块5311接收到用户界面或者终端510的输入指令并传递给数据解析处理模块5312。数据解析处理模块5312确定输入指令为数据读取指令,则进一步解析指令内容,根据指令的读取需求,向统一数据存储装置532请求相关的数据。统一数据存储装置532从文件或数据库表中读取出所需的数据并返回给数据解析处理模块5312。数据解析处理模块5312对返回数据进行解析处理,转换为可以用于用户界面展示或者终端接口返回的格式,然后传递给终端交互和接口控制模块5311。终端交互和接口控制模块5311将返回的数据在界面中进行展示,或者通过接口输出至终端510。
本领域技术人员可以理解,中间系统530作为主机系统520和任意终端设备510之间的统一中间代理,可以提供如下功能:
1、中间系统连接大型主机系统,可以直接与大型主机系统进行命令交互,发送命令并获取返回信息。
2、中间系统提供支持多数平台的交互接口和用户界面,允许用户从任意平台连接中间代理装置进行操作交互,例如包括如下(1)~(3)。(1)通过中间系统实时执行主机命令和获取主机命令返回内容;(2)在中间系统上配置主机命令自动控制和交互的逻辑、流程、内容;(3)在中间系统上触发预先配置的自动控制和交互的逻辑、流程、内容自动执行。其中(2)可以包括:i.如何处理和生成实际发送的命令内容;ii多条命令的执行顺序;iii.命令开始执行的先决条件;iv.命令执行完成的后续步骤;v.命令执行成功、失败的判断条件;vi.返回内容的获取和处理。
3、中间系统按照用户配置的自动控制交互的逻辑、流程、内容,代替用户向主机系统发送命令。
基于上述各实施例可知,根据本公开实施例的主机系统的交互控制方法与相关技术相比,具有以下优势:
1、中间系统独立运行,不依赖于用户终端和大型主机系统。例如,(1)使用该平台对用户终端和大型主机的运行状态、版本、配置对中间代理装置无特殊要求;(2)无需专用工具即可接入中间系统,中间系统向所有接入的设备、用户提供统一的用户界面展示;接受相同格式的输入、返回相同格式的输出;用户的操作、交互方法、逻辑,收到的返回内容不因用户终端系统不同而产生差异;(3)用户配置的主机命令自动控制和交互的逻辑、流程、内容用中间代理装置统一存放和管理。
2、中间系统支持用户自行定义的大型主机命令自动控制和交互的逻辑、流程、内容,并将这些内容使用统一的格式存放;并在满足用户配置的条件时,自动向大型主机发送命令,实现自动控制、交互,支持延时执行、异步执行。
图7示意性示出了根据本公开实施例的主机系统的交互控制装置的框图,应用于中间系统。
如图7所示,该主机系统的交互控制装置700包括:接收模块710、获取模块720、生成模块730和控制模块740。
接收模块710用于接收来自客户端的主机命令操作指令,该主机命令操作指令包括:流程标识和指令参数。
获取模块720用于从预定存储空间获取针对流程标识的至少一个主机命令和该至少一个主机命令的执行逻辑。
生成模块730用于基于上述至少一个主机命令、上述执行逻辑和上述指令参数,生成命令序列。
控制模块740用于将上述命令序列发送至主机系统,以使主机系统基于上述执行逻辑和上述指令参数执行上述至少一个主机命令。
需要说明的是,装置部分实施例中各模块/单元/子单元等的实施方式、解决的技术问题、实现的功能、以及达到的技术效果分别与方法部分实施例中各对应的步骤的实施方式、解决的技术问题、实现的功能、以及达到的技术效果相同或类似,在此不再赘述。
根据本公开的实施例的模块、子模块、单元、子单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、子模块、单元、子单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
例如,接收模块710、获取模块720、生成模块730和控制模块740中的任意多个可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本公开的实施例,接收模块710、获取模块720、生成模块730和控制模块740中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,接收模块710、获取模块720、生成模块730和控制模块740中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
图8示意性示出了根据本公开实施例的适于实现上文描述的方法的计算机系统的框图。图8示出的计算机系统仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图8所示,根据本公开实施例的计算机系统800包括处理器801,其可以根据存储在只读存储器(ROM)802中的程序或者从存储部分808加载到随机访问存储器(RAM)803中的程序而执行各种适当的动作和处理。处理器801例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器801还可以包括用于缓存用途的板载存储器。处理器801可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
在RAM 803中,存储有系统800操作所需的各种程序和数据。处理器801、ROM 802以及RAM 803通过总线804彼此相连。处理器801通过执行ROM 802和/或RAM 803中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除ROM 802和RAM 803以外的一个或多个存储器中。处理器801也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
根据本公开的实施例,系统800还可以包括输入/输出(I/O)接口805,输入/输出(I/O)接口805也连接至总线804。系统800还可以包括连接至I/O接口805的以下部件中的一项或多项:包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分807;包括硬盘等的存储部分808;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至I/O接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入存储部分808。
根据本公开的实施例,根据本公开实施例的方法流程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读存储介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分809从网络上被下载和安装,和/或从可拆卸介质811被安装。在该计算机程序被处理器801执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本领域技术人员可以理解,尽管已经参照本公开的特定示例性实施例示出并描述了本公开,但是本领域技术人员应该理解,在不背离所附权利要求及其等同物限定的本公开的精神和范围的情况下,可以对本公开进行形式和细节上的多种改变。因此,本公开的范围不应该限于上述实施例,而是应该不仅由所附权利要求来进行确定,还由所附权利要求的等同物来进行限定。
Claims (11)
1.一种主机系统的交互控制方法,应用于中间系统,所述方法包括:
接收来自客户端的主机命令操作指令,所述主机命令操作指令包括:流程标识和指令参数;
从预定存储空间获取针对所述流程标识的至少一个主机命令和所述至少一个主机命令的执行逻辑;
基于所述至少一个主机命令、所述执行逻辑和所述指令参数,生成命令序列;以及
将所述命令序列发送至主机系统,以使所述主机系统基于所述执行逻辑和所述指令参数执行所述至少一个主机命令。
2.根据权利要求1所述的方法,还包括:
接收来自客户端的数据读取指令,所述数据读取指令包括索引标识;
从所述预定存储空间获取针对所述索引标识的至少一个存储数据;
将所述至少一个存储数据转换为第一预定格式数据;以及
将所述第一预定格式数据发送至所述客户端,以使所述客户端对所述第一预定格式数据进行展示。
3.根据权利要求1所述的方法,还包括:
接收来自客户端的数据写入指令,所述数据写入指令包括待写入数据;
将所述待写入数据转换为第二预定格式数据;以及
将所述第二预定格式数据添加至所述预定存储空间。
4.根据权利要求3所述的方法,其中,
所述待写入数据包括交互控制策略,所述交互控制策略包括:所述流程标识、所述至少一个主机命令和所述执行逻辑,所述执行逻辑包括如下至少一项:所述至少一个主机命令之间的前后项关系、所述至少一个主机命令中任一主机命令的执行标准、所述任一主机命令的执行策略、和所述任一主机命令的判断条件。
5.根据权利要求3所述的方法,其中,
所述待写入数据包括解析策略,所述解析策略包括如下至少一项:指令名称、指令格式、类型、和至少一个输入数据。
6.根据权利要求1所述的方法,还包括:
接收来自所述主机系统的执行返回数据,所述执行返回数据包括如下至少一项:执行结果和执行日志;
将所述执行返回数据转换为第三预定格式数据;以及
将所述第三预定格式数据添加至所述预定存储空间。
7.根据权利要求2所述的方法,还包括:
接收来自客户端的输入指令;
对所述输入指令进行解析,以确定所述输入指令所属的类别;以及
基于所述输入指令所属的类别,确定所述输入指令为所述主机命令操作指令、所述数据读取指令、或数据写入指令。
8.根据权利要求7所述的方法,其中,所述对所述输入指令进行解析包括:
从所述预定存储空间获取解析策略;以及
基于所述解析策略对所述输入指令进行解析,以确定所述输入指令所属的类别。
9.一种主机系统的交互控制装置,应用于中间系统,所述装置包括:
接收模块,用于接收来自客户端的主机命令操作指令,所述主机命令操作指令包括:流程标识和指令参数;
获取模块,用于从预定存储空间获取针对所述流程标识的至少一个主机命令和所述至少一个主机命令的执行逻辑;
生成模块,用于基于所述至少一个主机命令、所述执行逻辑和所述指令参数,生成命令序列;以及
控制模块,用于将所述命令序列发送至主机系统,以使所述主机系统基于所述执行逻辑和所述指令参数执行所述至少一个主机命令。
10.一种计算机系统,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时用于实现如权利要求1~8任一项所述的方法。
11.一种计算机可读介质,存储有计算机程序,所述计算机程序被执行时用于实现如权利要求1~8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010056747.4A CN111258648B (zh) | 2020-01-17 | 2020-01-17 | 主机系统的交互控制方法、装置、计算机系统和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010056747.4A CN111258648B (zh) | 2020-01-17 | 2020-01-17 | 主机系统的交互控制方法、装置、计算机系统和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111258648A CN111258648A (zh) | 2020-06-09 |
CN111258648B true CN111258648B (zh) | 2022-05-27 |
Family
ID=70954262
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010056747.4A Active CN111258648B (zh) | 2020-01-17 | 2020-01-17 | 主机系统的交互控制方法、装置、计算机系统和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111258648B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010282557A (ja) * | 2009-06-08 | 2010-12-16 | Canon Inc | データ処理装置、データ処理方法およびプログラム |
EP2446624A1 (en) * | 2009-06-26 | 2012-05-02 | Nokia Siemens Networks Oy | Modifying command sequences |
CN103049276A (zh) * | 2013-01-17 | 2013-04-17 | 力合科技(湖南)股份有限公司 | 一种流程编写系统 |
CN104936262A (zh) * | 2014-03-21 | 2015-09-23 | 中兴通讯股份有限公司 | 远端标识的发送、接收方法及装置、传输系统 |
-
2020
- 2020-01-17 CN CN202010056747.4A patent/CN111258648B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010282557A (ja) * | 2009-06-08 | 2010-12-16 | Canon Inc | データ処理装置、データ処理方法およびプログラム |
EP2446624A1 (en) * | 2009-06-26 | 2012-05-02 | Nokia Siemens Networks Oy | Modifying command sequences |
CN103049276A (zh) * | 2013-01-17 | 2013-04-17 | 力合科技(湖南)股份有限公司 | 一种流程编写系统 |
CN104936262A (zh) * | 2014-03-21 | 2015-09-23 | 中兴通讯股份有限公司 | 远端标识的发送、接收方法及装置、传输系统 |
Non-Patent Citations (2)
Title |
---|
Real-Time Remote Access Laboratory With Distributed and Modular Design;Ananda Maiti 等;《: IEEE Transactions on Industrial Electronics》;IEEE;20141130;第62卷(第6期);第3607-3618页 * |
面向AUV协同设计的MDO软件支撑系统研究与实现;闫志斌;《中国优秀硕士学位论文全文数据库 (电子期刊)》;20121015(第10期);第I138-2008页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111258648A (zh) | 2020-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7739693B2 (en) | Generic application program interface for native drivers | |
US5642504A (en) | Method of testing an application on a server which accesses a database | |
CN104834602B (zh) | 一种程序发布方法、装置和程序发布系统 | |
US6047389A (en) | Testing of a software application residing on a hardware component | |
US20080155330A1 (en) | Methods and apparatus for debugging a workflow process | |
CN111026634A (zh) | 一种接口自动化测试系统、方法、装置及存储介质 | |
CN110569298A (zh) | 一种数据对接、可视化方法和系统 | |
CN109977012B (zh) | 系统的联调测试方法、装置、设备及计算机可读存储介质 | |
CN113485927B (zh) | 一种测试数据生成方法、装置、设备及存储介质 | |
CN112015654A (zh) | 用于测试的方法和装置 | |
CN112631937A (zh) | 一种T-Box的CAN操作自动化测试方法及装置 | |
CN114168471A (zh) | 测试方法、装置、电子设备及存储介质 | |
CN111679851A (zh) | 需求代码管理方法、装置、系统与计算机可读存储介质 | |
CN113553260B (zh) | 测试方法、测试装置、设备和介质 | |
CN113495498B (zh) | 用于硬件设备的模拟方法、模拟器、设备和介质 | |
CN111258648B (zh) | 主机系统的交互控制方法、装置、计算机系统和介质 | |
US11720476B2 (en) | Automated end-to-end testing platform with dynamic container configuration | |
CN116756016A (zh) | 多浏览器测试方法、装置、设备、介质及程序产品 | |
CN115114147B (zh) | 一种基于结构化描述语言的测试系统 | |
CN114896487A (zh) | 前端与区块链交互的区块链浏览器实现方法、系统及介质 | |
CN112511386B (zh) | 基于robotframework的车载以太网测试方法、系统以及太网测试设备 | |
US10303584B2 (en) | Method for message-processing | |
CN111708684B (zh) | 一种页面访问的记录方法、装置及计算机系统 | |
CN116756043B (zh) | 一种目标设备的软件测试方法、装置、设备及存储介质 | |
CN118838827A (zh) | 一种压力测试方法、装置、设备以及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |