CN101482816B - 中介软件桥接系统及方法 - Google Patents
中介软件桥接系统及方法 Download PDFInfo
- Publication number
- CN101482816B CN101482816B CN200810149912XA CN200810149912A CN101482816B CN 101482816 B CN101482816 B CN 101482816B CN 200810149912X A CN200810149912X A CN 200810149912XA CN 200810149912 A CN200810149912 A CN 200810149912A CN 101482816 B CN101482816 B CN 101482816B
- Authority
- CN
- China
- Prior art keywords
- middleware
- space
- function
- core space
- photograph
- 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
- G06F8/00—Arrangements for software engineering
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Computer And Data Communications (AREA)
- Telephonic Communication Services (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明是关于一种中介软件桥接系统及方法,该系统包含:一核心空间桥接管理器,用于提供一核心空间接口以接收来自该核心空间模块的功能呼叫请求;一使用者空间桥接管理器,用于经由该使用者空间接口桥接关于该功能呼叫请求的一功能呼叫以带至该使用者空间中介软件,并接收来自该使用者空间中介软件的传回数据;其中该核心空间接口的结构与该使用者空间接口的结构相同。本发明提供一种程式开发者的环境以便在核心空间模块中能良好地使用该中介软件,并对于多个核心空间模块的应用情境提供一通用解决方案。
Description
技术领域
本发明关于一种中介软件桥接系统及方法,尤指一用于支持自一核心空间模块使用一使用者空间中介软件的一中介软件桥接系统。
背景技术
中介软件为一种在Linux式作业系统中使用的支持软件,其用于支持应用系统的开发。
但是,该中介软件通常用于使用者空间中。例如,高可用性(HA,“HighAvailability”)中介软件用于使用者空间中,以支持用于Linux式作业系统的一高可用性功能,其提供一高速、稳定及连续的网路通讯。其中,HA中介软件可被建造成为具有服务可用性论坛(SA“Service Availability”Forum)所建立的AIS(应用接口规格,”Application Interface Specification”)标准的形式。
一些核心空间模块,例如第2层HA(高可用性)网路通讯模块,其不能直接使用HA中介软件。来自该核心空间模块的功能呼叫请求必须转换成一使用者空间可支持的命令,然后传送到HA中介软件。因此,该核心空间模块与HA中介软件之间的通讯往来是不方便而且复杂的。
该核心空间模块必须针对每个特定模块及中介软件采用特定的桥接系统来进行开发,其并不方便且浪费许多成本去针对每个核心空间模块与中介软件来开发特定的桥接系统。
本发明的目的、精神及优点将可通过以下的详细说明而易于了解。
发明内容
本发明为关于一种中介软件的桥接系统与方法,其用于桥接核心空间模块与使用者空间中介软件,且更进一步延伸一使用者空间中介软件的支持到一核心空间模块之中。
本发明的一具体实施例提供一中介软件桥接系统,用于桥接一核心空间模块与具有一使用者空间接口的一使用者空间中介软件,其包含:一核心空间桥接管理器,用于提供一核心空间接口以接收来自该核心空间模块的功能呼叫请求;一使用者空间桥接管理器,用于经由该使用者空间接口桥接关于该功能呼叫请求的一功能呼叫以带至该使用者空间中介软件,并接收来自该使用者空间中介软件的传回数据;其中该核心空间接口的结构与该使用者空间接口的结构相同。
本发明的具体实施例亦提供一中介软件桥接方法,用于桥接一核心空间模块与具有一使用者空间接口的一使用者空间中介软件,其包含以下步骤:模拟该使用者空间接口成为在核心空间中的一核心空间接口;经由该核心空间接口接收来自该核心空间模块的一功能呼叫请求;经由该使用者空间接口桥接关于该功能呼叫请求的一功能呼叫以带至该使用者空间中介软件;经由该使用者空间接口接收来自该使用者空间中介软件的一传回数据;且经由该核心空间接口传送该传回数据到该核心空间模块。
本发明提供一种程式开发者的环境以便在核心空间模块中能良好地使用该中介软件,并对于多个核心空间模块的应用情境提供一通用解决方案。
附图说明
图1为根据本发明的一具体实施例的一中介软件桥接系统的系统架构图。
图2为根据本发明的一具体实施例的中介软件桥接系统的功能方块图。
图3为该中介软件桥接系统的一具体实施例图。
图4为该中介软件桥接系统的一具体实施例图。
图5为该中介软件桥接系统的一具体实施例图。
图6为该中介软件桥接系统的一具体实施例图。
图7为该规则表的一具体实施例图。
图8为该前摄性机制鉴别那些功能适用于前摄性执行的流程图。
图9为该前摄性执行的流程图。
图10所示为该核心空间桥接管理器与该使用者空间桥接管理器之间的通讯图。
图11所示另为该核心空间桥接管理器与该使用者空间桥接管理器之间的通讯图。
附图标号:
10---中介软件桥接系统
11---核心空间桥接管理器
12---使用者空间桥接管理器
13---规则表
14---前摄性信息数据库
111---核心空间接口模块
112---核心空间API
113---核心空间前摄器
114---请求处理器
115---核心空间数据传递器
121---使用者空间数据传递器
122---呼叫代理员
123---回呼功能管理器
124---使用者空间前摄器
20---HA中介软件
21---使用者空间API
30---核心空间HA模块
40---使用者空间HA应用
800,900---流程图
801~807,901~910---步骤与流程
具体实施方式
本发明用于扩充在使用者空间中的中介软件的功能,可用于在Linux式作业系统之下的核心空间模块。本发明包括一种中介软件桥接系统,用于桥接该核心空间模块与使用者空间中介软件,藉此延伸一使用者空间中介软件的支持到一核心空间模块之中。
在本发明一具体实施例中,该中介软件桥接系统用于作为一HA(高可用性)中介软件的代理者,其中HA中介软件经由API(应用程式接口)提供相对功能或服务,其可符合由SA论坛所建立的AIS(应用接口规格)标准。但是,HA中介软件的标准并非实施本发明的限制。
请参照图1,所示为在本发明一具体实施例中的一中介软件桥接系统10的系统架构。中介软件桥接系统10用来桥接一使用者空间HA(高可用性)中介软件20,以便能于核心空间中来使用。中介软件桥接系统10包括一核心空间桥接管理器11,用于接收来自多个核心空间HA模块30的功能呼叫请求,及一使用者空间桥接管理器12,用于经由一使用者空间API21向一HA中介软件20叫唤引发有关于该功能呼叫请求的功能呼叫,以在该使用者空间中执行相对应功能。
在HA中介软件20执行相对应功能之后,使用者空间桥接管理器12接收由HA中介软件20执行后的一传回数据,并传到核心空间桥接管理器11,然后核心空间桥接管理器11传送该传回数据到核心空间HA模块30。
请参照图2,所示为在本发明一具体实施例中的中介软件桥接系统10的功能方块图。核心空间桥接管理器11负责传送来自核心空间HA模块30的功能呼叫请求到使用者空间桥接管理器12,并传送其传回数据到核心空间HA模块30,其包括具有一核心空间API112的一核心空间接口模块111、一核心空间前摄器(Proactor)113、一请求处理器114及一核心空间数据传递器115。
核心空间接口模块111接收来自核心空间模块30的功能呼叫请求,并包含核心空间API112作为一虚拟接口来为核心空间HA模块30模拟成使用者空间API21,藉此提供与使用者空间API21相同的功能给核心空间HA模块30。核心空间接口模块111包括了一群对应于HA中介软件20所支持的各个API功能的虚拟功能函式,且每个虚拟功能函式在经由核心空间API112接收到功能呼叫请求时,会解译其中的每个变数,这些变数可以是直接数值或是指示一间接数值的指标。其中,核心空间API112的结构与使用者空间API21的结构是相同的。然后,所述这些虚拟功能函式取得关于该功能呼叫请求的必要数据,然后传送到核心空间前摄器113或是当核心空间前摄器113不存在时即传送到请求处理器114。再者,当核心空间接口模块111得到传回数据传回时,会经由核心空间API112传送该传回数据到核心空间HA模块30。
核心空间前摄器113用于决定如何处理所收到的功能呼叫请求。当已经存在有该功能呼叫请求已预先透过前摄处理而得到的传回数据时,则由该核心空间前摄器113直接去处理该功能呼叫请求;或是如果该功能呼叫请求需要在HA中介软件20中被处理时,即传送该功能呼叫请求到请求处理器114。请求处理器114用于收集来自多个核心空间HA模块30的功能呼叫请求以形成为呼叫数据而置于呼叫序列中,并以聚集或快取的方式传送该呼叫数据。再者,请求处理器114传送所收到的传回数据到核心空间接口模块111。核心空间数据传递器115位于核心空间中负责中介软件桥接系统10的内部通讯,例如传送其呼叫数据或接收传回数据。
使用者空间桥接管理器12用于管理及处理其呼叫数据,提供功能呼叫给HA中介软件20、并传送传回数据回到核心空间桥接管理器11。其中,使用者空间桥接管理器12包括一使用者空间数据传递器121、一呼叫代理员122、一回呼功能(Callback)管理器123及一使用者空间前摄器124。
使用者空间数据传递器121位于使用者空间中负责中介软件桥接系统10的内部通讯,例如接收其呼叫数据或传送传回数据。呼叫代理员122用于分析及辨识其呼叫数据,以一末端使用者的角色向HA中介软件20进行该呼叫数据中所含的功能呼叫,并接收来自HA中介软件20的传回数据。回呼功能管理器123负责回呼功能函式的处理,其包括一虚拟回呼代理机制,会以一虚拟的回呼函式来注册。当一回呼功能函式呼叫被HA中介软件20所叫用时,该虚拟回呼代理机制将被触发而会要求核心空间数据传递器115去找寻真正拥有该回呼功能函式的对应的核心空间HA模块30来执行它。使用者空间前摄器124用于事先进行一功能函式的预呼叫,并传送该传回数据给核心空间桥接管理器11。
中介软件桥接系统10另包括一前摄性机制,以对一些持续地被执行以获得或参照数据的功能呼叫予以前摄性的程序处理,藉以改善中介软件桥接系统10的效率,并减少核心空间桥接管理器11与使用者空间桥接管理器12之间的通讯。该前摄性机制包含核心空间前摄器113、使用者空间前摄器124、一规则表13及一前摄性信息数据库14。其中,规则表13及前摄性信息数据库14皆具有两个部份,分别在使用者空间与核心空间中。
该前摄性机制在核心空间HA模块30传送某些功能呼叫请求之前,可事先或主动地叫用功能呼叫,并储存该执行结果的传回数据成为前摄性信息数据库14中的前摄性信息。如此,当核心空间HA模块30送出该功能呼叫请求时,核心空间前摄器113可立即回答来自核心空间HA模块30的功能呼叫请求,而不需藉助及等待使用者空间管理器12及HA中介软件20的处理。
该前摄性机制基于预先定义的规则表13来运作运作的。核心空间前摄器113在当接收来自核心空间HA模块30的功能呼叫请求时,首先查看该功能呼叫请求是否在前摄性信息数据库14中具有一相对应的前摄性信息,然后根据规则表13决定是否要传回该前摄性信息或继续地传送及桥接该功能呼叫请求到使用者空间桥接管理器12。其中,适用于前摄性处理的功能呼叫请求通常是有关于对系统数据去Get/Read的类型的功能函式,且该数据必须是持久、被保留、稳定或固定的。当所述这些功能呼叫请求是重复时,核心空间前摄器113会自动进行一循环式的呼叫,以确保可取得最新的数据。因而,该前摄性处理可有效率地提供一精确的数据结果。
因此,在核心空间桥接管理器11的程序步骤中,核心空间接口模块111首先接收来自核心空间HA模块30的功能呼叫请求,然后核心空间前摄器113检查关于该功能呼叫请求的前摄性信息是否已经储存在前摄性信息数据库14中。如果该前摄性信息为存在并且有效,则核心空间前摄器113传送该前摄性信息作为一传回数据给核心空间HA模块30,否则核心空间前摄器113传送该功能呼叫请求到请求处理器114。请求处理器114包装该功能呼叫请求成为一呼叫数据,并传送该呼叫数据到核心空间数据传递器115。因此,核心空间数据传递器115可传送该呼叫数据到使用者空间桥接管理器12。
在接下来的程序中,使用者空间数据传递器121用来接收来自核心空间数据传递器115的呼叫数据,并传送该呼叫数据到呼叫代理员122,使呼叫代理员122可检查在该呼叫数据中的功能呼叫请求。如果该功能呼叫请求是有关于一回呼函式的注册功能时,呼叫代理员122便传送该功能呼叫请求到回呼功能管理器123,否则呼叫代理员122会经由使用者空间API21将该功能呼叫请求的功能呼叫带给HA中介软件20。在将该功能呼叫带给HA中介软件20之后,呼叫代理员122会接收来自HA中介软件的传回数据,并经由使用者空间数据传递器121传送该传回数据到核心空间桥接管理器11。然后,核心空间桥接管理器11会传送该接收的传回数据给核心空间HA模块30。
如果回呼功能管理器123接收关于一回呼函式注册功能的功能呼叫请求时,回呼功能管理器123会通过虚拟回呼代理机制向HA中介软件20注册一个相对于该功能呼叫请求的虚拟回呼功能函式。当HA中介软件20引发叫唤一回呼功能函式时,该虚拟回呼代理机制会负责寻找真正的目标核心空间HA模块30,并传送此一回呼功能函式的呼叫请求给该目标核心空间HA模块30。然后,该目标核心空间HA模块30就执行关于该回呼功能函式呼叫请求的回呼功能函式,并传送一传回数据到回呼功能管理器123,然后再到HA中介软件20。
中介软件桥接系统10的前摄性机制具有两种具体实施例,可为一核心应用请求者型式或为或一HA中介软件请求者型式,以分别处理来自核心空间HA模块30与HA中介软件20的功能呼叫请求。请参照图3,所示为核心应用请求者型式的系统架构,其中使用者空间前摄器124会进行预呼叫或主动循环呼叫来获得包括来自HA中介软件20的传回数据的前摄性信息给核心空间前摄器113。再者,使用者空间前摄器124可利用快取的方式运作,以比较目前取得的数据与先前取得的数据之间是否有差异。如果目前取得的数据与先前取得的数据之间没有差异,则使用者空间前摄器124不需要传送目前取得的数据到核心空间前摄器113。核心空间前摄器113当接收来自核心空间HA模块30的一功能呼叫请求时,首先检查前摄性信息数据库14。如果该传回数据已储存在前摄性信息数据库14中,核心空间前摄器113可通过传送该储存的传回数据来回答该功能呼叫请求,而不需要对使用者空间前摄器124要求任何信息。因此,于使用者空间前摄器124与核心空间前摄器113之间的传送次数可以减少,并可加速反应时间。
大部份而言,功能呼叫请求是由核心空间HA模块30所发起的。但是,HA中介软件20有时候需要产生功能呼叫请求给核心空间HA模块30,例如回呼功能函式,以询问核心空间HA模块30的状态。请参照图4,所示为HA中介软件请求者型式的系统架构,其中核心空间前摄器113会进行预呼叫或主动循环呼叫,以取得包括来自核心空间HA模块30的传回数据的前摄性信息给使用者空间前摄器124。再者,核心空间前摄器113可使用快取方法来改善该前摄性机制的效率。
再者,该前摄性机制可安排用在特定HA中介软件中的服务,例如可用性服务(Availability Service),丛集会员服务(CLM,“Cluster MembershipService”)。特别是,所述这些服务中的一些功能用于检查HA中介软件20所提供的状态或数据,例如在可用性服务中Get HA State及Get ComponentReadiness State功能,或是CLM服务中的Get Membership功能。举例而言,透过Get Membership功能可取得丛集成员信息,其描述该丛集中每个节点中的状态,所以,当有多个核心空间HA模块30以Get Membership功能来持续地检查所有丛集成员的信息时,它们所取得的所有传回数据必定是都相同的。因此,核心空间前摄器113可作为一代理者(Proxy)角色来分享相同的信息给所有核心空间HA模块30,如图5所示。
另一种运用情形,是属于HA中介软件请求者型式的案例。前摄性机制的HA中介软件请求者可用于透过回呼功能函式的方式来发出来自HA中介软件20的Get/Read类型的功能呼叫,例如HA中介软件20可固定地对每个核心空间HA模块30进行一健康状态检查(Health Check)的功能呼叫来Get/Read其健康状态信息,以作为故障切换的依据基准。请参照图6,HA中介软件20对于每个核心空间HA模块30进行健康状态检查,而且假如所述这些核心空间HA模块30都保持在预设的良好健康状态时,核心空间前摄器便可以不需要传送其传回数据到使用者空间前摄器124。使用者空间前摄器124可直接传送储存在前摄性信息数据库14中的前摄性健康检查信息,以回答来自HA中介软件20的功能呼叫请求。此外,使用者空间前摄器124也可涵盖运用于核心空间HA模块30的某些情形,如其有时会以固定的确认信息来回复某些回呼功能呼叫等,即可运用此前摄机制来处理。
本发明的中介软件桥接系统10进一步提供一种以规则为基础(rule-based)的管理方法,以选用的规则来管理该前摄性机制的决策,其中所述这些规则是以系统资源决定如何管理,例如存储器的可用空间、占用的处理时间、递回、CPU负载等等。为了通过那些规则来管理该决策,中介软件桥接系统10必须随时监控所述这些系统资源来决定要采用那一个规则。所以,中介软件桥接系统10可选择适当的方式以管理及平衡所述这些系统资源。
该前摄器机制基于预先定义的规则表13来运作。规则表的具体实施例请参照图7,所示为属于Get/Read类型的功能的一些功能特性及规则的列表,其包括功能名称、属性、优先性基准及规则等栏位。该属性栏位用于表达该功能的特征,进一步决定是否该功能适用于前摄性处理。在该属性栏位中,一请求者(Requeester)变数用于辨识该功能呼叫的发动者,其值可为如分别代表核心应用请求者或HA中介软件请求者等前摄型式的KRN_AP或HAMW等值。一规律性(Regularity)变数用于显示该功能呼叫的稳定性及不变性,其中每个功能仅在当其规律性变数标示为YES时才适用于前摄性处理。一重复性(Repetition)变数用于辨识该功能呼叫的可重复特性,其中当一功能呼叫的重复性变数标示为YES时则可适用于前摄性处理。一Loop_Rate变数用于设定该可重复功能呼叫的执行频率。群组化/群组(Grouping/Group)变数用于设定非重复性功能可进行社群处理的群组,如此该非重复性功能的群组便可允许在前摄性处理中被进行处理。此外还有顺序(Sequence)变数可用于表达一连串功能呼叫序列的顺序,以启动该前摄性机制去主动地前摄执行该序列中的下一个功能。
优先性基准栏位为用于决定该功能的优先性层级的主要因子,代表该功能的重要性及该功能的前摄性执行的预期效益,如此该前摄性机制可在当所述这些系统资源不足时,选择具有较高优先性的功能进行前摄性执行。该优先性基准栏位可设定为高、中、低或预设值,且该前摄性机制在当该优先性基准栏位设定为预设值时,根据重复性及Loop_Rate变数自动地设定该功能的优先性基准。如果重复性变数标示为YES时,且若Loop_Rate标示为CONT以表示连续性的功能请求时,则该功能的优先性基准将被设定为高,否则该功能的优先性基准即设定为中。但是,当重复性变数标示为NO时,该功能的优先性基准将设定为低。
规则栏位用于表明前摄性机制的作业及管理规则。基于所述这些系统资源,该前摄性机制将依照Select_Rule变数来决定及选择所要前摄性执行的功能呼叫的优先性等级,并依照UsersNO_Rule变数来决定在初始化时对该功能呼叫启用前摄性执行的数目大小,即在本具体实施例中为核心空间HA模块30所保留的执行规模。
Select_Rule变数可设定成SYS_MEM、NONE或预设值,其中SYS_MEM代表该前摄性机制会根据该系统存储器的可用存储器空间来管制优先性基准的选用,NONE代表该前摄性机制不管制该优先性基准的选用,而预设值等于SYS_MEM。UsersNO_Rule变数可设定成SYS_MEM、NONE或预设值,其中SYS_MEM代表该前摄性机制会根据该系统存储器的可用存储器空间来管制其执行规模,NONE代表该前摄性机制不管制该执行规模,即采用最大的执行规模,而预设值等于SYS_MEM。不论如何,该前摄性机制必须检查所述这些系统资源,并依照Select_Rule及UsersNO_Rule变数进行运作。
同时,该前摄性机制将保持监视所述这些功能的使用状态,并依照一Tuning_Rule变数来对于各个功能去调动其在前摄性时程中Enable/Disable的管控,以在前摄性时程中加入或移除所述这些功能的前摄性执行。Tuning_Rule变数可设定为USE_TIMES或EFFICIENCY,其中USE_TIMES代表该前摄性机制是依据运作期间的各功能的使用次数来调整,而EFFICIENCY代表该前摄性机制是依各功能的前摄性执行的效率来调整。
请参照图8,所示为前摄性机制用以鉴别那些功能适用于前摄性执行的流程图800。在步骤801中,该前摄性机制首先由规则表13中的属性栏位取得所列选的各Get/Read类型的功能的属性;在步骤802中,检查该列选功能的重复性(Repetition)变数,如果重复性变数标示为YES,则流程进行到步骤803,否则其进行到步骤804;在步骤803中,该功能会被检查规律性(Regularity)变数,如果规律性定期性变数标示为YES,则流程进行到步骤806,否则其进行到步骤805;在步骤804中,该功能会被检查群组化(Grouping)变数,如果群组化变数标示为YES,则流程进行到步骤806,否则进行到步骤805;在步骤805中,该列选功能的前摄性模式将设定为N/A,以代表该功能不能够纳入前摄性执行;在步骤806中,该功能的前摄性模式将可设定为“可应用”;且在步骤807中,该前摄性机制根据该功能的系统资源耗用率(如处理时间)来决定该功能的优先性基准。
请参照图9,所示为前摄性机制的流程图900,显示了其前摄性执行的流程。在步骤901中,该前摄性机制首先辨识每一个所列选功能的前摄性模式及优先性基准;在步骤902中,前摄性机制将由规则表13的Select_Rule变数与系统资源耗用率,如存储器空间等,来决定及选择要进行前摄性执行及预呼叫的功能的优先性层级;在步骤903中,前摄性机制预呼叫所述这些所选择的优先性层级所涵盖的功能,并储存该传回数据;在步骤904中,接收到来自如核心空间HA模块30的客户端的关于所述这些功能的功能呼叫;在步骤905中,检查该功能呼叫的前摄性模式,如果该前摄性模式为可应用时,流程进行到步骤906,否则进行到步骤907;在步骤906中,检查该功能呼叫的有效传回数据,如果有效传回数据已获得时,流程进行到步骤908,否则进行到步骤907;在步骤907中,该功能呼叫被转送到如HA中介软件20的伺服端;而在步骤908中,前摄性机制取得该有效传回数据并用以直接回应给客户端;在步骤909中,该前摄性机制持续监视及记录所述这些功能的前摄性执行的使用状况,以决定是否重新选定那些功能要执行前摄性处理;以及在步骤910中,前摄性机制可进行重新选择后续要予以前摄性处理的功能。
请参照图10,本发明在应用此前摄性机制时可减少核心空间桥接管理器11与使用者空间桥接管理器12之间的通讯。使用者空间桥接管理器12检测来自HA中介软件20的传回数据的变化,并仅在当该传回数据有改变或系统在初始化时才传送该传回数据到该核心空间桥接管理器。因此,核心空间桥接管理器11与使用者空间桥接管理器12的通讯频率可以降低,且核心空间桥接管理器11可直接回答来自核心空间HA模块30的功能呼叫请求。
请参照11图,本发明在应用此前摄性机制于可用性服务的健康状态检查功能中可减少核心空间桥接管理器11与使用者空间桥接管理器12之间的通讯。当HA中介软件20请求如健康状态检查功能的回呼功能时,使用者空间桥接管理器12可立即取得来自核心空间桥接管理器11所事先得到的数据。再者,核心空间桥接管理器11检测来自核心空间HA模块30的传回数据的变化,并仅在当该传回数据有改变或系统在初始化时才传送该传回数据到该使用者空间桥接管理器。因此,核心空间桥接管理器11与使用者空间桥接管理器12的通讯频率可以降低,且使用者空间桥接管理器12可直接回答来自HA中介软件20的功能呼叫请求。
本发明对程式开发者提供一个可在核心空间模块中良好地使用中介软件的环境,并针对多个核心空间模块的运用情境提供一通用的解决方案。
利用本发明多种具体实施例的详细说明,本技术专业人士将可容易地了解到有多种修正及变化可应用到前述的本发明的具体实施例中,其皆不背离在附属权利要求中所定义的本发明的范围。此外,所述这些具体实施例皆不应视为本发明的实际可应用说明的限制。
Claims (21)
1.一种中介软件桥接系统,用于桥接一核心空间模块与具有一使用者空间接口的一使用者空间中介软件,其特征在于,所述中介软件桥接系统包含:
一核心空间桥接管理器,用于提供一核心空间接口以接收来自所述核心空间模块的功能呼叫请求;
一使用者空间桥接管理器,用于经由所述使用者空间接口桥接关于所述功能呼叫请求的一功能呼叫以带至所述使用者空间中介软件,并接收来自所述使用者空间中介软件的一传回数据;
其中所述核心空间接口的结构与所述使用者空间接口的结构相同;所述使用者空间桥接管理器包含一使用者空间前摄器,以事先或主动地预呼叫所述使用者空间中介软件的一预先定义的功能呼叫,然后接收来自所述使用者空间中介软件的传回数据,并传送所接收的传回数据到所述核心空间桥接管理器。
2.如权利要求1所述的中介软件桥接系统,其特征在于,所述使用者空间前摄器判定一功能呼叫所被储存的传回数据与所述功能呼叫的后续传回数据之间的差异,并当存在有差异时传送所述后续传回数据到所述核心空间桥接管理器。
3.如权利要求1所述的中介软件桥接系统,其特征在于,所述系统另包含一规则表,用于储存所述使用者空间前摄器的运作规则,以管理所述预先定义的功能呼叫的预呼叫。
4.如权利要求3所述的中介软件桥接系统,其特征在于,所述中介软件桥接系统随时监控系统资源,以决定对于所述使用者空间前摄器要采用哪一规则来执行运作。
5.如权利要求4所述的中介软件桥接系统,其特征在于,所述系统资源包括一存储器的可用空间,占用的处理时间及CPU的负载。
6.如权利要求1所述的中介软件桥接系统,其特征在于,所述预先定义的功能呼叫为有关于取得或读取具不变及可保存特征的系统数据的功能。
7.如权利要求1所述的中介软件桥接系统,其特征在于,所述核心空间桥接管理器包含一核心空间前摄器以接收所述传回数据,并储存所述传回数据做为前摄性信息。
8.如权利要求7所述的中介软件桥接系统,其特征在于,所述的系统另包含一前摄性信息数据库来储存所述前摄性信息。
9.如权利要求7所述的中介软件桥接系统,其特征在于,所述核心空间前摄器在接收来自核心空间模块的功能呼叫请求时,其立即传送具有关于所述功能呼叫请求的一传回数据的前摄性信息至所述核心空间模块。
10.如权利要求1所述的中介软件桥接系统,其特征在于,所述使用者空间桥接管理器包含一虚拟回呼代理机制,用于当接收来自所述核心空间模块有关于回呼函式注册功能的一功能请求时,其注册一回呼功能函式至所述使用者空间中介软件。
11.如权利要求10所述的中介软件桥接系统,其特征在于,所述虚拟回呼代理机制当接收来自所述使用者空间中介软件的一回呼功能请求时,将寻找一用以执行所述回呼功能函式的真正核心空间模块。
12.一种中介软件桥接方法,用于桥接一核心空间模块与具有一使用者空间接口的一使用者空间中介软件,其特征在于,所述方法包含以下步骤:
模拟所述使用者空间接口成为在核心空间中的一核心空间接口;
经由所述核心空间接口接收来自所述核心空间模块的一功能呼叫请求;
经由所述使用者空间接口桥接关于所述功能呼叫请求的一功能呼叫以带至所述使用者空间中介软件;
经由所述使用者空间接口接收来自所述使用者空间中介软件的一传回数据;及
经由所述核心空间接口传送所述传回数据到所述核心空间模块;
所述的方法还包括:事先或主动地预呼叫一预先定义的功能呼叫,然后接收来自所述使用者空间中介软件的所述传回数据,并传送所接收的传回数据到所述核心空间模块的步骤。
13.如权利要求12所述的中介软件桥接方法,其特征在于,所述方法另包含判定一功能呼叫所被储存传回数据与所述功能呼叫的后续传回数据之间的差异,并当存在有差异时传送所述后续传回数据到所述核心空间桥接管理器的步骤。
14.如权利要求12所述的中介软件桥接方法,其特征在于,所述方法另包含利用一以规则为基础的方式以管理所述预先定义的功能呼叫的预呼叫的步骤。
15.如权利要求14所述的中介软件桥接方法,其特征在于,所述以规则为基础的方式包括多项规则,且系统资源被随时监控以决定要采用那一个规则来管理所述预先定义的功能呼叫的预呼叫。
16.如权利要求15所述的中介软件桥接方法,其特征在于,所述系统资源包括一存储器的可用空间,占用的处理时间及CPU的负载。
17.如权利要求12所述的中介软件桥接方法,其特征在于,所述预先定义的功能呼叫为有关于取得或读取具不变及可保存特征的系统数据的功能。
18.如权利要求12所述的中介软件桥接方法,其特征在于,所述方法另包含储存所述传回数据做为前摄性信息的步骤。
19.如权利要求18所述的中介软件桥接方法,其特征在于,所述方法另包含当接收来自核心空间模块的功能呼叫请求时,其立即传送具有关于所述功能呼叫请求的一传回数据的前摄性信息至所述核心空间模块的步骤。
20.如权利要求12所述的中介软件桥接方法,其特征在于,所述方法另包含当接收来自所述核心空间模块有关于回呼函式注册功能的一功能请求时,其注册一回呼功能函式至所述使用者空间中介软件的步骤。
21.如权利要求20所述的中介软件桥接方法,其特征在于,所述方法另包含当接收来自所述使用者空间中介软件的一回呼功能请求时,将寻找一用以执行所述回呼功能函式的真正核心空间模块的步骤。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/972,300 | 2008-01-10 | ||
US11/972,300 US8549537B2 (en) | 2008-01-10 | 2008-01-10 | Middleware bridge system and method |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101482816A CN101482816A (zh) | 2009-07-15 |
CN101482816B true CN101482816B (zh) | 2011-09-14 |
Family
ID=40758343
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200810149912XA Active CN101482816B (zh) | 2008-01-10 | 2008-10-15 | 中介软件桥接系统及方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8549537B2 (zh) |
CN (1) | CN101482816B (zh) |
DE (1) | DE102008001536A1 (zh) |
TW (1) | TWI381314B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2526088B (en) * | 2014-05-12 | 2016-03-30 | Sony Comp Entertainment Europe | Apparatus and method of data capture |
CN111447046B (zh) * | 2020-03-26 | 2023-04-25 | 广州市百果园信息技术有限公司 | 业务数据传输方法、装置、设备和存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6212574B1 (en) * | 1997-04-04 | 2001-04-03 | Microsoft Corporation | User mode proxy of kernel mode operations in a computer operating system |
US6871350B2 (en) | 1998-12-15 | 2005-03-22 | Microsoft Corporation | User mode device driver interface for translating source code from the user mode device driver to be executed in the kernel mode or user mode |
US7181743B2 (en) * | 2000-05-25 | 2007-02-20 | The United States Of America As Represented By The Secretary Of The Navy | Resource allocation decision function for resource management architecture and corresponding programs therefor |
TW505863B (en) * | 2000-11-24 | 2002-10-11 | Mellanox Technolgies Ltd | Software interface between a parallel bus and a packet network |
US7194652B2 (en) | 2002-10-29 | 2007-03-20 | Brocade Communications Systems, Inc. | High availability synchronization architecture |
TW200713055A (en) * | 2005-09-19 | 2007-04-01 | Atlas Dev Corp | Health-care related database middleware |
-
2008
- 2008-01-10 US US11/972,300 patent/US8549537B2/en not_active Expired - Fee Related
- 2008-05-02 DE DE102008001536A patent/DE102008001536A1/de not_active Withdrawn
- 2008-08-26 TW TW097132488A patent/TWI381314B/zh active
- 2008-10-15 CN CN200810149912XA patent/CN101482816B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
TW200931317A (en) | 2009-07-16 |
US20090183172A1 (en) | 2009-07-16 |
US8549537B2 (en) | 2013-10-01 |
DE102008001536A1 (de) | 2009-07-16 |
TWI381314B (zh) | 2013-01-01 |
CN101482816A (zh) | 2009-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11175913B2 (en) | Elastic application framework for deploying software | |
CN110290189A (zh) | 一种容器集群管理方法、装置及系统 | |
EP3554152B1 (en) | Categorized location identification based on historical locations of a user device | |
Yao et al. | Using crowdsourcing to provide QoS for mobile cloud computing | |
CN111405030B (zh) | 一种消息推送方法、装置、电子设备和存储介质 | |
US20180018363A1 (en) | Time series data processing method and apparatus | |
CN112764920A (zh) | 一种边缘应用部署方法、装置、设备和存储介质 | |
CN115543577B (zh) | 基于协变量的Kubernetes资源调度优化方法、存储介质及设备 | |
CN110516173A (zh) | 一种非法网站识别方法、装置、设备及介质 | |
CN108959048A (zh) | 模块化环境的性能分析方法、装置及可存储介质 | |
US9940361B2 (en) | Intelligent presence server systems and methods | |
CN112788112A (zh) | 设备健康管理微服务自动发布方法、装置和平台 | |
CN107249019A (zh) | 基于业务的数据处理系统、方法、装置和服务器 | |
CN105786941A (zh) | 一种信息挖掘方法和装置 | |
CN101482816B (zh) | 中介软件桥接系统及方法 | |
CN115550849B (zh) | 终端设备选择方法、装置、网络设备及存储介质 | |
CN115563160A (zh) | 数据处理方法、装置、计算机设备和计算机可读存储介质 | |
CN113965563B (zh) | 基于模型的业务处理方法及装置、服务器 | |
CN107707383B (zh) | 放通处理方法、装置、第一网元及第二网元 | |
CN111325484A (zh) | 一种大数据资产管理系统 | |
US11941421B1 (en) | Evaluating and scaling a collection of isolated execution environments at a particular geographic location | |
CN110727419A (zh) | 一种监测系统 | |
WO2023213246A1 (zh) | 模型选择方法、装置及网络侧设备 | |
WO2023185826A1 (zh) | 网元注册方法、模型请求方法、装置、网元、通信系统及存储介质 | |
CN113315676B (zh) | 一种断链检测的方法、装置及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |