CN113064670B - 可执行服务单元层级间调用的方法、装置、和设备及介质 - Google Patents
可执行服务单元层级间调用的方法、装置、和设备及介质 Download PDFInfo
- Publication number
- CN113064670B CN113064670B CN202110457033.9A CN202110457033A CN113064670B CN 113064670 B CN113064670 B CN 113064670B CN 202110457033 A CN202110457033 A CN 202110457033A CN 113064670 B CN113064670 B CN 113064670B
- Authority
- CN
- China
- Prior art keywords
- service unit
- sub
- main service
- resources
- resource
- 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
-
- 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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供一种可执行服务单元层级间调用的方法、装置、和设备及介质,该方法包括:响应于主服务单元调用指令,调用主服务单元;利用调用的主服务单元加载预先配置的配置文件,配置文件包括为主服务单元配置及子服务单元所配置的资源;在配置文件加载过程中,利用主服务单元申请配置的资源,资源包括需权限验证的第一资源;响应于子服务单元调用指令,通过主服务单元调用子服务单元,且在子服务单元执行对第一资源的第一操作时,由主服务单元执行该第一操作,并将操作结果返回给子服务单元。本发明实现了子服务单元与主服务单元的解耦,且在子服务单元调用过程中,不需要针对再次执行权限验证,提高了程序调用的效率,优化了用户体验。
Description
技术领域
本发明涉及应用程序开发领域,特别涉及一种可执行服务单元层级间调用的方法、装置、和设备及介质。
背景技术
Windows的资源管理是以应用程序为单位的,应用程序申请的资源包括需要权限验证的资源及不需要权限验证的资源,在应用程序运行过程中,执行对需要权限验证的资源的操作,则需要进行权限验证,权限验证通过后,应用程序可以正常运行。
对于层级调用的应用程序,包括主应用程序及主应用程序调用的多个子应用程序,为了达到解耦和独立使用的目的,会对各个子应用程序实现的子功能以独立程序的形式进行开发,然后通过主应用程序上的控件进行启动。
但是该程序架构下,如果要调用的子功能要求的系统资源为需要权限验证的资源时,即使在主应用程序启动的时候,已经进行过资源的申请,但是由于子功能作为独立应用程序启动的,子应用程序与系统交互时,系统还是会重新进行检查,然后再次进行权限验证。因此,如果按照独立程序形式进行开发的子功能越多,这种情况出现的次数就会越多,影响用户体验。
另外,为了解决上述问题,可以将子功能对应的应用程序开发成动态链接库的形式,动态链接库和主程序互相绑定,可以获得与主程序相同的资源,只要在主程序启动时进行资源申请,就不会出现这类问题。
但是,使用动态链接库的情况下,子应用程序与主应用程序高度耦合,子应用程序在开发时无法单独进行调试,在使用时也无法独立使用。
发明内容
本申请的目的是提供一种可执行服务单元层级间调用的方法、装置、和设备及介质。用于解决现有的子功能作为独立应用程序启动的,子应用程序与系统交互时,系统重新进行检查,出现多次权限验证,以及子应用程序与主应用程序高度耦合,子应用程序在开发时无法单独进行调试,在使用时也无法独立使用的问题。
第一方面,本申请实施例提供了一种可执行服务单元层级间调用的方法,应用于对多个子服务单元的调用,包括:
响应于主服务单元调用指令,调用主服务单元;
利用调用的主服务单元加载预先配置的配置文件,所述配置文件包括为主服务单元配置的资源及为所述主服务单元调用的子服务单元所配置的资源;
在配置文件加载过程中,利用所述主服务单元申请所述配置的资源,所述资源包括需权限验证的第一资源;
响应于子服务单元调用指令,通过主服务单元调用子服务单元,且在所述子服务单元执行对第一资源的第一操作时,由所述主服务单元执行该第一操作,并将操作结果返回给所述子服务单元。
在一些可能的实施例中,根据所述通过主服务单元调用子服务单元后,还包括:
通过所述主服务单元监听调用的子服务单元执行的操作;
确定监听到子服务单元执行对不需权限验证的第二资源的第二操作时,允许子服务单元与操作系统交互执行所述第二操作;
确定监听到子服务单元执行对第一资源的操作时,禁止所述子服务单元与操作系统交互执行所述第二操作。
在一些可能的实施例中,根据所述配置文件包括与主服务单元对应的第一配置文件和各子服务单元分别对应的第二配置文件,且所述第一配置文件、各第二配置文件采用不同的文件名。
在一些可能的实施例中,根据所述利用所述主服务单元申请所述配置的资源,包括:
向操作系统申请第一资源时,执行权限验证过程;
在权限验证通过后,确定操作系统允许所述主服务单元执行对所述第一资源的操作。
在一些可能的实施例中,本方法还包括:
响应于主服务单元退出调用指令,删除所述主服务单元所申请的资源、及执行的第一操作以及第二操作的记录。
在一些可能的实施例中,根据所述利用所述主服务单元申请所述配置的资源,包括:
确定为主服务单元配置的资源及为所述主服务单元调用的子服务单元所配置的资源中存在重复的资源时,对重复的资源进行合并,得到待申请的资源;
利用所述主服务单元申请所述待申请的资源。
在一些可能的实施例中,所述资源包括:软件资源、硬件资源、对所述软件资源或硬件资源的操作类型。
第二方面,本申请实施例提供一种可执行服务单元层级间调用的装置,应用于对多个子服务单元的调用,包括:
第一调用模块,用于响应于主服务单元调用指令,调用主服务单元;
配置文件加载模块,用于利用调用的主服务单元加载预先配置的配置文件,所述配置文件包括为主服务单元配置的资源及为所述主服务单元调用的子服务单元所配置的资源;
资源申请模块,用于在配置文件加载过程中,利用所述主服务单元申请所述配置的资源,所述资源包括需权限验证的第一资源;
第二调用模块,用于响应于子服务单元调用指令,通过主服务单元调用子服务单元,且在所述子服务单元执行对第一资源的第一操作时,由所述主服务单元执行该第一操作,并将操作结果返回给所述子服务单元。
第三方面,本申请实施例提供一种数据中心的初始化控制的设备,包括至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述第一方面提供的所述一种执行服务单元层级间调用的方法。
第四方面,本申请实施例提供一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序用于使计算机执行上述第一方面提供的所述一种执行服务单元层级间调用的方法。
利用本申请提供的一种可执行服务单元层级间调用的方法、装置、和设备及介质,具有以下有益效果:
实现了子服务单元与主服务单元的解耦,且在子服务单元调用过程中,不需要针对再次执行权限验证,提高了程序调用的效率,优化了用户体验。
附图说明
图1为根据本申请的一个实施例的应用环境的示意图;
图2为根据本申请的一个实施例的可执行服务单元层级间调用的方法的流程图;
图3为根据本申请的一个实施例的主服务单元和子服务单元的UI界面示意图;
图4为根据本申请的一个实施例的主服务单元和子服务单元配置文件目录路径示意图;
图5为根据本申请的一个实施例的可执行服务单元层级间调用的方法的流程框图;
图6为根据本申请的一个实施例的可执行服务单元层级间调用的装置流程图;
图7为根据本申请的一个实施例的可执行服务单元层级间调用的设备流程图。
具体实施方式
下面将结合附图对本申请实施例中的技术方案进行清楚、详尽地描述。在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;文本中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,另外,在本申请实施例的描述中,“多个”是指两个或多于两个。
在本申请实施例的描述中,除非另有说明,术语“多个”是指两个或两个以上,其它量词与之类似应当理解,此处所描述的优选实施例仅用于说明和解释本申请,并不用于限定本申请,并且在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
为进一步说明本申请实施例提供的技术方案,下面结合附图以及具体实施方式对此进行详细的说明。虽然本申请实施例提供了如下述实施例或附图所示的方法操作步骤,但基于常规或者无需创造性的劳动在方法中可以包括更多或者更少的操作步骤。在逻辑上不存在必要因果关系的步骤中,这些步骤的执行顺序不限于本申请实施例提供的执行顺序。方法在实际的处理过程中或者控制设备执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行。
鉴于相关技术中在层级调用中,子应用程序与主应用程序高度耦合,子应用程序在开发时无法单独进行调试,在使用时也无法独立使用的问题,本申请提出一种可执行服务单元层级间调用的方法、装置、和设备及介质,在程序调用中,可以单独调用对子应用程序,并且不会进行重复的权限验证,这样提高了效率,且每个子服务单元对应的程序都可以单独开发,调试,运行。
有鉴于此,本申请的发明构思为:在主服务单元调用时,加载预先配置的配置文件,通过加载配置文件向操作系统申请资源,其中包括需要权限验证的资源,则在调用子服务单元时,主服务单元监听子服务单元是否需要权限验证,若需要权限验证,中断子服务单元与操作系统的交互,由主服务单元向操作系统发送相应的权限验证,然后把操作结果返回给子服务单元,若不需要权限验证,允许子服务单元与操作系统交互,不做处理,并且继续监听下一个子服务单元。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面结合附图对本申请实施例中的可执行服务单元层级间调用的方法进行详细说明。
本申请实施例提供的可执行服务单元层级间调用的方法,应用于操作系统为Windows操作系统的电子设备,该电子设备的在Windows操作系统下,运行有多个应用程序,且存在层级调用的应用程序,具体为主应用程序调用多个子应用程序。本申请实施例中,主应用程序也称为主服务单元,子应用程序也称为子服务单元。
如图1所示为本申请一个实施例应用的软件架构示意图,具体包括操作系统101、主服务单元102、子服务单元103,响应于用户的主服务单元调用指令,主服务单元102可以与操作系统101交互,响应于用户的子服务单元调用指令,需要由调用的主服务单元102调用对应的子服务单元103,调用的子服务单元103与操作系统交互完成相应的子功能。
上述主服务单元和各个子服务单元在与操作系统交互时,子服务单元向操作系统申请的资源包括两类,一类为需要权限验证的第一资源,即登录到该操作系统的特定用户如管理员才可以使用的资源,本申请实施例也称为特殊的资源,另一类为不需要权限验证的第二资源,即登录到该操作系统的任一用户可以都可以使用的资源,本申请实施例称为默认的资源。
本申请实施例提供一种可执行服务单元层级间调用的方法,该方法可以解决子服务单元与主服务单元高度耦合无法单独对子服务单元的功能进行开发和调试,或子服务单元作为单独文件开发在调用的过程需要重复进行权限验证的问题,本申请实施例提供的可执行服务单元层级间调用的方法既可以实现子服务单元与主服务单元的解耦,且在主服务单元调用被调用后中,不需要针对被调用的子服务单元执行权限验证,提高了程序调用的效率,优化了用户体验,如图2所示,该方法包括:
步骤201,响应于主服务单元调用指令,调用主服务单元;
如图3所示,在Window操作系统中,主服务单元和子服务单元在UI界面上,可以但不限于以主菜单及主菜单下多个子菜单的方式显示。
用户可以通过软件或硬件方式触发对主服务单元的调用,例如用户点击用户界面上的主菜单,触发对主菜单的调用。用户点击对应的子菜单,触发对子菜单调用。
步骤202,利用调用的主服务单元加载预先配置的配置文件,所述配置文件包括为主服务单元配置的资源及为所述主服务单元调用的子服务单元所配置的资源;
本申请实施例中预先为主服务单元配置相应的配置文件,根据主服务单元实现的功能,将主服务单元实现对应的主功能所需的资源预先配置在配置文件中,及根据子服务单元实现的子功能,将服务单元实现的子功能所需的资源配置在配置文件中。
则触发对主服务单元的调用时,主服务单元启动配置文件加载,即读取配置文件的内容,从而确定需要向操作系统申请哪些资源。
上述配置文件中的资源,包括为各个子服务单元配置的需要权限验证的第一资源。
上述资源可以但不限于包括:软件资源、硬件资源、对所述软件资源或硬件资源的操作类型。软件资源系统软件、应用软件等等,硬件资源可以为RAM、麦克风、I/O;
上述对软件资源或硬件资源的操作类型可以但不限于包括读操作、写操作、修改操作等。上述各个资源可以单独配置,也可以结合配置,例如结合配置时,可以配置对RAM中某个存储区域可以读操作,但不允许写操作。如果仅配置的资源为RAM中某个存储区域,并未配置操作类型时,则默认可以对该存储区域执行任何操作类型。
需要说明是,配置文件中不仅包括上述配置的资源,还包括配置的资源所属的服务单元,即是主服务单元的资源,还是子服务单元的资源,如果是子服务单元的资源,具体是哪个子服务单元的资源。
步骤203,在配置文件加载过程中,利用所述主服务单元申请所述配置的资源,所述资源包括需权限验证的第一资源;
通过配置文件的加载,主服务单元可以确定需要申请哪些资源,并向操作系统申请主服务单元及各个子服务单元的资源,上述资源包括需权限验证的第一资源。
作为一种可选的实施方式,利用所述主服务单元申请所述配置的资源,包括:
向操作系统申请第一资源时,执行权限验证过程;
在权限验证通过后,确定操作系统允许所述主服务单元执行对所述第一资源的操作。
主服务单元向操作系统申请第一资源时,触发执行权限验证,操作系统可以根据用户输入的权限验证信息,对申请的第一资源进行权限验证,例如弹出输入框,需要用户输入相应的用户名和密码或者其他的验证信息,操作系统确定输入的验证信息正确时,认为主服务单元可以对申请的资源执行相应的操作。可以对申请的资源执行所有的操作类型,或可以对申请的资源执行对应配置的操作类型。
步骤204,响应于子服务单元调用指令,通过主服务单元调用子服务单元,且在所述子服务单元执行对第一资源的第一操作时,由所述主服务单元执行该第一操作,并将操作结果返回给所述子服务单元。
本申请实施例将实现子功能的子应用程序单元可以独立的可执行文件的形式进行开发和使用,并且在通过主服务单元对子功能对应的子服务单元进行调用的时候,不会因为子功能要求特殊的资源,导致询问对话框弹出而影像用户体验。
本申请实施例中由特殊资源要求的操作,最终都是由主服务单元发送给操作系统的,在主服务单元启动时已经进行了特殊资源的要求,在子服务单元调用的过程中,操作系统就不会多次对用户进行询问,提升了用户体验。
作为一种可选的实施方式,根据所述通过主服务单元调用子服务单元后,包括:
通过所述主服务单元监听调用的子服务单元执行的操作;
确定监听到子服务单元执行对不需权限验证的第二资源的第二操作时,允许子服务单元与操作系统交互执行所述第二操作;
确定监听到子服务单元执行对第一资源的操作时,禁止所述子服务单元与操作系统交互执行所述第二操作。
本申请实施例中主服务单元在启动后,会监听各个子服务单元执行的操作,区分子服务单元执行操作是对第一资源还是对第二资源的第二操作,若监听到子服务单元对第二资源的第二操作时,不执行任何处理,由子服务单元与操作系统进行交互;若监听到子服务单元对第一资源的第一操作,则对该第一操作进行拦截,包括:主服务单元终止子服务单元与操作系统的交互,向操作系统发送权限验证请求,操作系统做出响应,该权限验证通过,子服务单元正常进行调用,由主服务单元模拟子服务单元与操作系统交互执行第一操作,收到操作系统的操作结果例如返回值后,将操作结果返回给子服务单元。
由于配置的资源中,是针对主服务单元和子服务单元分别配置的资源,则可能存在重复的资源,为了避免主服务单元对相同的资源重复向操作系统申请,本发明实施例利用所述主服务单元申请所述配置的资源,包括:
确定为主服务单元配置的资源及为所述主服务单元调用的子服务单元所配置的资源中存在重复的资源时,对重复的资源进行合并,得到待申请的资源;
利用所述主服务单元申请所述待申请的资源。
例如:通过加载配置文件,确定为主服务单元配置的资源为{A,B,C},为子服务单元1配置的资源{B,C},为子服务单元2配置的资源{C,D},则向操作系统申请的资源为{A,B,C,D}。
作为一些可选的实施例,该方法还包括:
响应于主服务单元退出调用指令,删除所述主服务单元所申请的资源、及执行的第一操作以及第二操作的记录;
当退出调用主服务单元时,删除第一操作和第二操作的记录以及预先申请的资源的记录,这样不会影响系统性能。
在退出主服务单元的时候,系统会删除配置文件,以及在执行第一操作与第二操作时,系统的操作结果,这样不会出现配置文件的积累,造成对系统性能的负荷。
作为一些可选的实施例,所述配置文件包括:与主服务单元对应的第一配置文件和各子服务单元分别对应的第二配置文件,且所述第一配置文件、各第二配置文件采用不同的文件名。
本发明实施例在应用程序开发阶段,针对存在层级间调用的服务单元,将各个子服务单元实现的子功能开发为独立的可执行程序文件,确定各个子服务单元实现对应的子功能需要配置的资源,将各个子服务单元对应的资源配置在于该子服务单元对应的配置文件中,将得到的与主服务单元及各子服务单元对应的配资文件放到同一级别的目录下,可以提高程序调用的效率。如图4所示,将预先配置的主服务单元和各子服务单元对应的配置文件,存储存在同一目录下面,且每一个子服务单元与主服务单元是平级的,与主服务单元及各子服务单元对应的配资文件采用不同的文件名,以区分是哪个服务单元的配置文件。
本发明实施例在配置上述配置文件的基础上,进一步配置了主服务单元作为程序入口,在启动时对配置文件的加载功能,及主服务单元具有对全部的子服务单元对各子服务单元的监听功能,及监听到特殊资源申请时进行拦截,代替子服务单元向操作系统执行特殊资源相关操作后返回结果的功能。
在基于上述方式开发的主服务单元及子服务单元的基础,执行本发明实施例提供的可执行服务单元层级间调用的方法。下面以服务单元为应用程序为例,给出详细的方法流程,如图5所示,该方法包括:
步骤501,响应于对主应用程序的调用指令,调用主应用程序;
步骤502,主应用程序调用后,根据配置文件的目录路径,到对应的目录下读取主应用程序及各子应用程序对应的配置文件;
步骤503,通过配置文件确定主应用程序及各应用程序对应需要申请的资源,确定存在重复的资源时,对重复的资源进行合并;
需要说明的时,配置文件的资源可以采用两种方式进行配置,一种配置方式为将主应用程序和各子应用程序所有的资源,即默认资源和特殊资源均配置在对应的配置文件中;另一种配置方式仅将主应用程序和各子应用程序所需的特殊资源配置在对应的配置文件中。
步骤504,向操系统申请合并后的资源,判断申请的资源是否为特殊的资源,如是,执行步骤505,否则执行步骤506;
配置的资源中可以带有相应的标识,标识申请的资源是否为特殊的资源。
步骤505,与操作系统交互执行权限验证过程;
验证通过后,操作系统认为主服务单元可以执行特殊资源的操作;验证未通过,则操作系统认为主服务单元不可以执行特殊资源的操作。
步骤506,与操作系统交互,获得申请的默认资源;
步骤507,主应用程序监听子应用程序的所有动作;
步骤508,判断子程序有无特殊资源要求,如是,执行步骤509,否则执行步骤510;
步骤509,主应用程序监听到子应用程序执行对特殊资源的操作时,则主应用程序拦截该操作,代替子应用程序与操作系统交互执行对特殊资源的操作,并将操作结果反馈给子应用程序;
由于在主应用程序启动过程中,主应用程序已经获得特殊资源的权限,因此可以直接与操作系统交互执行特殊资源的操作;
如果在主应用程序启动过程中,主应用程序权限验证未通过,则认为操作失败,直接向子应用程序返回操作失败的结果。
步骤510,主应用程序监听到子应用程序执行对默认资源的操作时,则主应用程序放行该操作,由子应用程序与操作系统交互执行对默认资源的操作;
步骤511,确定退出主应用程序,删除资源申请记录,及执行的各种操作的记录。
实施例2
本申请实施例提供一种可执行服务单元层级间调用的装置,如图6所示,包括:
第一调用模块601,用于响应于主服务单元调用指令,调用主服务单元;
配置文件加载模块602,用于利用调用的主服务单元加载预先配置的配置文件,所述配置文件包括为主服务单元配置的资源及为所述主服务单元调用的子服务单元所配置的资源;
资源申请模块603,用于在配置文件加载过程中,利用所述主服务单元申请所述配置的资源,所述资源包括需权限验证的第一资源;
第二调用模块604,用于响应于子服务单元调用指令,通过主服务单元调用子服务单元,且在所述子服务单元执行对第一资源的第一操作时,由所述主服务单元执行该第一操作,并将操作结果返回给所述子服务单元。
作为一种可选的实施例,所述第二调用模块通过主服务单元调用子服务单元后,还用于:
通过所述主服务单元监听调用的子服务单元执行的操作;
确定监听到子服务单元执行对不需权限验证的第二资源的第二操作时,允许子服务单元与操作系统交互执行所述第二操作;
确定监听到子服务单元执行对第一资源的操作时,禁止所述子服务单元与操作系统交互执行所述第二操作。
作为一种可选的实施例,所述配置文件包括:主服务单元对应的第一配置文件和各子服务单元分别对应的第二配置文件,且所述第一配置文件、各第二配置文件采用不同的文件名。
所述资源申请模块利用所述主服务单元申请所述配置的资源,包括:
向操作系统申请第一资源时,执行权限验证过程;
在权限验证通过后,确定操作系统允许所述主服务单元执行对所述第一资源的操作。
作为一种可选的实施例,还包括:
记录删除模块605,用于响应于主服务单元退出调用指令,删除所述主服务单元所申请的资源、及执行的第一操作以及第二操作的记录。
作为一种可选的实施例,所述资源申请模块利用所述主服务单元申请所述配置的资源,包括:
确定为主服务单元配置的资源及为所述主服务单元调用的子服务单元所配置的资源中存在重复的资源时,对重复的资源进行合并,得到待申请的资源;
利用所述主服务单元申请所述待申请的资源。
作为一种可选的实施例,所述资源包括:软件资源、硬件资源、对所述软件资源或硬件资源的操作类型。
在介绍了本申请示例性实施方式的可执行服务单元层级间调用的方法和装置之后,接下来,介绍根据本申请的另一示例性实施方式可执行服务单元层级间调用的设备。
所属技术领域的技术人员能够理解,本申请的各个方面可以实现为系统、方法或程序产品。因此,本申请的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
在一种可能的实施方式中,根据本申请的可执行服务单元层级间调用的设备可以至少包括至少一个处理器、以及至少一个存储器。其中,存储器存储有程序代码,当程序代码被处理器执行时,使得处理器执行如下步骤:
响应于主服务单元调用指令,调用主服务单元;
利用调用的主服务单元加载预先配置的配置文件,所述配置文件包括为主服务单元配置的资源及为所述主服务单元调用的子服务单元所配置的资源;
在配置文件加载过程中,利用所述主服务单元申请所述配置的资源,所述资源包括需权限验证的第一资源;
响应于子服务单元调用指令,通过主服务单元调用子服务单元,且在所述子服务单元执行对第一资源的第一操作时,由所述主服务单元执行该第一操作,并将操作结果返回给所述子服务单元。
作为一种可选的实施方式,所述处理器通过主服务单元调用子服务单元后,还用于执行:
通过所述主服务单元监听调用的子服务单元执行的操作;
确定监听到子服务单元执行对不需权限验证的第二资源的第二操作时,允许子服务单元与操作系统交互执行所述第二操作;
确定监听到子服务单元执行对第一资源的操作时,禁止所述子服务单元与操作系统交互执行所述第二操作。
作为一种可选的实施方式,所述配置文件包括与主服务单元对应的第一配置文件和各子服务单元分别对应的第二配置文件,且所述第一配置文件、各第二配置文件采用不同的文件名。
作为一种可选的实施方式,所述处理器利用所述主服务单元申请所述配置的资源,包括:
向操作系统申请第一资源时,执行权限验证过程;
在权限验证通过后,确定操作系统允许所述主服务单元执行对所述第一资源的操作。
作为一种可选的实施方式,所述处理器还用于执行:
响应于主服务单元退出调用指令,删除所述主服务单元所申请的资源、及执行的第一操作以及第二操作的记录。
作为一种可选的实施方式,所述处理器利用所述主服务单元申请所述配置的资源,包括:
确定为主服务单元配置的资源及为所述主服务单元调用的子服务单元所配置的资源中存在重复的资源时,对重复的资源进行合并,得到待申请的资源;
利用所述主服务单元申请所述待申请的资源。
作为一种可选的实施方式,所述资源包括:软件资源、硬件资源、对所述软件资源或硬件资源的操作类型。
下面参照图来描述根据本申请的这种实施方式的可执行服务单元层级间调用的设备130。图7显示的电子设备130仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图所示,电子设备130以通用电子设备的形式表现。电子设备130的组件可以包括但不限于:上述至少一个处理器131、上述至少一个存储器132、连接不同系统组件(包括存储器132和处理器131)的总线133。
总线133表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器、外围总线、处理器或者使用多种总线结构中的任意总线结构的局域总线。
存储器132可以包括易失性存储器形式的可读介质,例如随机存取存储器(RAM)1321和/或高速缓存存储器1322,还可以进一步包括只读存储器(ROM)1323。
存储器132还可以包括具有一组(至少一个)程序模块1324的程序/实用工具1325,这样的程序模块1324包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
电子设备130也可以与一个或多个外部设备134(例如键盘、指向设备等)通信,还可与一个或者多个使得用户能与电子设备130交互的设备通信,和/或与使得该电子设备130能与一个或多个其它电子设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口135进行。并且,电子设备130还可以通过网络适配器136与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器136通过总线133与用于电子设备130的其它模块通信。应当理解,尽管图中未示出,可以结合电子设备130使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
在一种可能的实施方式中,本申请提供的可执行服务单元层级间调用的方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在计算机设备上运行时,程序代码用于使计算机设备执行本说明书上述描述的根据本申请各种示例性实施方式的一种可执行服务单元层级间调用的方法步骤。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是——但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
本申请的实施方式的用于监控的程序产品可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在电子设备上运行。然而,本申请的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种可执行服务单元层级间调用的方法,其特征在于,包括:
响应于主服务单元调用指令,调用主服务单元;
利用调用的主服务单元加载预先配置的配置文件,所述配置文件包括为主服务单元配置的资源及为所述主服务单元调用的子服务单元所配置的资源;
在配置文件加载过程中,利用所述主服务单元申请所述配置的资源,所述资源包括需权限验证的第一资源;
响应于子服务单元调用指令,通过主服务单元调用子服务单元,且在所述子服务单元执行对第一资源的第一操作时,由所述主服务单元执行该第一操作,并将操作结果返回给所述子服务单元。
2.根据权利要求1所述的方法,其特征在于,通过主服务单元调用子服务单元后,还包括:
通过所述主服务单元监听调用的子服务单元执行的操作;
确定监听到子服务单元执行对不需权限验证的第二资源的第二操作时,允许子服务单元与操作系统交互执行所述第二操作;
确定监听到子服务单元执行对第一资源的操作时,禁止所述子服务单元与操作系统交互执行所述第二操作。
3.根据权利要求1所述的方法,其特征在于,所述配置文件包括与主服务单元对应的第一配置文件和各子服务单元分别对应的第二配置文件,且所述第一配置文件、各第二配置文件采用不同的文件名。
4.根据权利要求1所述的方法,其特征在于,利用所述主服务单元申请所述配置的资源,包括:
向操作系统申请第一资源时,执行权限验证过程;
在权限验证通过后,确定操作系统允许所述主服务单元执行对所述第一资源的操作。
5.根据权利要求1所述的方法,其特征在于,还包括:
响应于主服务单元退出调用指令,删除所述主服务单元所申请的资源、及执行的第一操作以及第二操作的记录。
6.根据权利要求1所述的方法,其特征在于,利用所述主服务单元申请所述配置的资源,包括:
确定为主服务单元配置的资源及为所述主服务单元调用的子服务单元所配置的资源中存在重复的资源时,对重复的资源进行合并,得到待申请的资源;
利用所述主服务单元申请所述待申请的资源。
7.根据权利要求1~6任一项所述的方法,其特征在于,所述资源包括:软件资源、硬件资源、对所述软件资源或硬件资源的操作类型。
8.一种可执行服务单元层级间调用的装置,其特征在于,包括:
第一调用模块,用于响应于主服务单元调用指令,调用主服务单元;
配置文件加载模块,用于利用调用的主服务单元加载预先配置的配置文件,所述配置文件包括为主服务单元配置的资源及为所述主服务单元调用的子服务单元所配置的资源;
资源申请模块,用于在配置文件加载过程中,利用所述主服务单元申请所述配置的资源,所述资源包括需权限验证的第一资源;
第二调用模块,用于响应于子服务单元调用指令,通过主服务单元调用子服务单元,且在所述子服务单元执行对第一资源的第一操作时,由所述主服务单元执行该第一操作,并将操作结果返回给所述子服务单元。
9.一种数据中心的初始化控制的设备,其特征在于,包括至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1-7中任何一项所述的方法。
10.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序用于使计算机执行如权利要求1-7任何一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110457033.9A CN113064670B (zh) | 2021-04-27 | 2021-04-27 | 可执行服务单元层级间调用的方法、装置、和设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110457033.9A CN113064670B (zh) | 2021-04-27 | 2021-04-27 | 可执行服务单元层级间调用的方法、装置、和设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113064670A CN113064670A (zh) | 2021-07-02 |
CN113064670B true CN113064670B (zh) | 2022-10-18 |
Family
ID=76567700
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110457033.9A Active CN113064670B (zh) | 2021-04-27 | 2021-04-27 | 可执行服务单元层级间调用的方法、装置、和设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113064670B (zh) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108989381A (zh) * | 2018-05-30 | 2018-12-11 | 卢翠鸿 | 一种远程交互方法及系统 |
CN112231617A (zh) * | 2020-10-12 | 2021-01-15 | 深圳市欢太科技有限公司 | 服务调用校验方法、装置、存储介质及电子设备 |
CN112541830A (zh) * | 2020-12-29 | 2021-03-23 | 中国工商银行股份有限公司 | 用于事务一致性的处理方法、处理装置、和处理系统 |
-
2021
- 2021-04-27 CN CN202110457033.9A patent/CN113064670B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113064670A (zh) | 2021-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101021394B1 (ko) | 컴퓨팅 시스템에서 문제의 근본 원인을 프로그램적으로 진단하는 방법 및 컴퓨팅 시스템에서 문제의 근본 원인을 결정하는 방법, 및 컴퓨터 판독가능 저장 매체 | |
US7523340B2 (en) | Support self-heal tool | |
US7743142B2 (en) | Verifying resource functionality before use by a grid job submitted to a grid environment | |
US8230264B2 (en) | System evaluation apparatus | |
US6871223B2 (en) | System and method for agent reporting in to server | |
US9218231B2 (en) | Diagnosing a problem of a software product running in a cloud environment | |
US10171315B2 (en) | Orchestration process template for generation of orchestration process to tolerate errors | |
US20070240171A1 (en) | Device, Method, And Computer Program Product For Accessing A Non-Native Application Executing In Virtual Machine Environment | |
US9282021B2 (en) | Method and apparatus for simulated failover testing | |
US7882202B2 (en) | System to delegate virtual storage access method related file operations to a storage server using an in-band RPC mechanism | |
US20160335151A1 (en) | Systems and methods for providing service and support to computing devices | |
US8346735B1 (en) | Controlling multi-step storage management operations | |
US11042390B2 (en) | Replaying operations on widgets in a graphical user interface | |
US10412192B2 (en) | Jointly managing a cloud and non-cloud environment | |
US11113186B1 (en) | Testing and publishing of resource handlers in a cloud environment | |
CN112162927A (zh) | 云计算平台的测试方法、介质、装置和计算设备 | |
CN111522703A (zh) | 监控访问请求的方法、设备和计算机程序产品 | |
US7975038B2 (en) | Application management program, application management method, and application management apparatus | |
CN114443332A (zh) | 一种存储池的检测方法、装置、电子设备及存储介质 | |
US10552282B2 (en) | On demand monitoring mechanism to identify root cause of operation problems | |
US20020178297A1 (en) | Service control manager tool execution | |
US5797006A (en) | Application integration architecture for a data processing platform | |
CN113064670B (zh) | 可执行服务单元层级间调用的方法、装置、和设备及介质 | |
US8799609B1 (en) | Error handling | |
US20160210180A1 (en) | Preventing recurrence of deterministic failures |
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 |