毕业论文

打赏
当前位置: 毕业论文 > 计算机论文 >

面向服务的开放式平台架构(6)

时间:2017-02-18 09:52来源:毕业论文
4.2.1.1.2. 内核契约 内核契约定义了微内核、内核扩展、内核监视器间进行交互的消息格式。内核中 各组件的交互通过请求响应的模式进行。内核契约中给


4.2.1.1.2. 内核契约
内核契约定义了微内核、内核扩展、内核监视器间进行交互的消息格式。内核中
各组件的交互通过请求——响应的模式进行。内核契约中给出了系统中所需要用到的
所有的请求——响应报文对的格式,并提供了统一的接口用以协调所有的内核扩展和
内核监视器。微内核、内核扩展和内核监视器仅依赖于内核契约,三者之间并不存在     
互相依赖。
4.2.1.1.3. 内核监视器
内核监视器负责监视内核中的请求——响应的过程,并依据各个监视器的不同关
注点给出不同的操作,如进行性能监测、错误和异常监测、事件记录等操作。内核监
视器只负责监视,并不修改整个请求——响应的流程。
4.2.1.1.4. 内核扩展
内核扩展主要用于实现核心业务。内核扩展向微内核表明自己可以处理的请求类
型,并实现相应的请求处理逻辑,从而实现核心业务。整个系统的体系结构并不关心
各个业务模块的数据持久化操作,内核扩展需要自行处理数据的持久化操作。
一个内核扩展可以通过微内核发出特定请求,从而实现与其他内核扩展之间的交
互。内核扩展同时可以关注指定类型的请求——响应的处理结果,并在响应给出时得
到通知。这一设计可以允许内核扩展监视指定事件,从而丰富内核扩展之间的交互。
4.2.1.2.  基本流程
内核中的主要有如下几个基本流程。这些基本流程负责文护内核中各组件的生命
周期。
4.2.1.2.1. 加载内核扩展
加载内核扩展时,系统将会执行如下操作,具体示意图如图 4-3所示。
 
图 4-3:内核扩展加载过程      
1.  发现内核扩展
微内核发现所有可用的内核扩展并加以装配。
2.  注册内核扩展
微内核扫描各内核扩展的元数据,并依据各内核扩展声明的可处理的消息类型将
内核扩展放入各消息类型对应的内核扩展队列中。
3.  连接内核扩展
微内核调用内核扩展的相关方法,将自身与内核扩展进行连接,从而允许内核扩
展与微内核进行交互。
4.  初始化内核扩展
微内核调用内核扩展的初始化方法,以完成内核扩展的初始化操作。
4.2.1.2.2. 加载内核监视器
加载内核监视器的操作与加载内核扩展类似,如图 4-4所示。
 
图 4-4:内核监视器加载过程
1.  发现内核监视器
微内核发现所有可用的内核监视器并加以装配。
2.  注册内核监视器
微内核扫描各内核监视器的元数据,并依据各内核监视器声明的需要监视的消息
类型将内核监视器放入各消息类型对应的消息监视器队列中。
4.2.1.2.3. 自定义处理器
系统允许内核扩展注册处理器以监控指定的请求——响应报文对。当一个内核扩
展注册处理器时,系统会将该处理器加入指定消息类型所对应的处理器队列中,当消
息所对应的请求——响应过程成功完成后,系统将会调用处理器队列中的所有处理器
的相应方法。
4.2.1.2.4. 请求处理    
内核中进行请求处理的流程如图 4-5所示:
 
图4-5:请求处理流程
1.  发出请求
上层模块或内核扩展向微内核发出指定请求。
2.  检索内核扩展、内核监视器和处理器
微内核依据请求所对应的消息类型检索相应的内核扩展、内核监视器和处理器。
3.  若没有可用的内核扩展用于处理请求,微内核将会抛出异常。 面向服务的开放式平台架构(6):http://www.youerw.com/jisuanji/lunwen_3091.html
------分隔线----------------------------
推荐内容