[发明专利]基于MPK技术的微内核模块间通讯方法、系统及介质在审
申请号: | 202010778265.X | 申请日: | 2020-08-05 |
公开(公告)号: | CN111949596A | 公开(公告)日: | 2020-11-17 |
发明(设计)人: | 吴新月;古金宇;夏虞斌;陈海波;臧斌宇 | 申请(专利权)人: | 上海交通大学 |
主分类号: | G06F15/163 | 分类号: | G06F15/163;G06F21/52 |
代理公司: | 上海汉声知识产权代理有限公司 31236 | 代理人: | 胡晶 |
地址: | 200240 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 mpk 技术 内核 模块 通讯 方法 系统 介质 | ||
1.一种基于MPK技术的微内核模块间通讯方法,其特征在于,包括:
基于MPK技术的执行域步骤:通过MPK技术控制内存域的读写权限,执行域之间资源与状态互相隔离;
内核模块间通讯的关卡函数步骤:关卡函数通过WRPKRU指令修改当前时刻对内存域的读写权限,进行执行域的切换;在被请求服务的内核模块所属的执行域中,在关卡函数中以函数调用的形式请求该内核模块的服务。
2.根据权利要求1所述的基于MPK技术的微内核模块间通讯方法,其特征在于,所述基于MPK技术的执行域步骤:
每个执行域对应一个内核模块,内核模块有独立的寄存器状态以及独立的堆栈,以及可供执行的代码;
内核模块中存在一组入口函数,供进程间通讯使用。
3.根据权利要求2所述的基于MPK技术的微内核模块间通讯方法,其特征在于,所述基于MPK技术的执行域步骤:
每个内核模块对应着一组对所有内存域的读写权限,内核模块至少可以读写自身代码及堆栈所处的内存域,内核拥有所有内存域的读写权限;
内核以外的内核模块不能读写其他执行域代码及堆栈所在的内存域。
4.根据权利要求3所述的基于MPK技术的微内核模块间通讯方法,其特征在于,所述基于MPK技术的执行域步骤:
多个执行域可对一个内存域同时拥有读写权限,用于在通讯时传递数据。
5.根据权利要求1所述的基于MPK技术的微内核模块间通讯方法,其特征在于,所述内核模块间通讯的关卡函数步骤:
所述关卡函数,在请求目标内核模块服务前进行寄存器状态的保存和清空,并将栈切换为请求处理者栈;
在请求处理结束后,恢复请求发起者的寄存器状态,并将栈切换为请求发起者栈。
6.根据权利要求5所述的基于MPK技术的微内核模块间通讯方法,其特征在于,所述内核模块间通讯的关卡函数步骤:
执行域切换过程中的身份验证方法,包括:寄存器状态验证和内存访问权限验证;
寄存器状态验证:在执行域切换前,使用内核随机生成的标记值对寄存器进行标记,并在执行域切换后检查标记过的寄存器,如果值与标记值一致,则寄存器状态验证通过;如果值与标记值不一致,则认为身份验证失败,抛出错误进行相应错误处理。
内存访问权限验证:在执行域切换前,访问请求发起者拥有读写权限的内存域。如果能够成功进行读操作,则内存访问权限验证通过;如果不能成功进行读操作,则认为内存访问权限验证失败,抛出错误进行相应错误处理。
7.一种基于MPK技术的微内核模块间通讯系统,其特征在于,包括:
基于MPK技术的执行域模块:通过MPK技术控制内存域的读写权限,执行域之间资源与状态互相隔离;
内核模块间通讯的关卡函数模块:关卡函数通过WRPKRU指令修改当前时刻对内存域的读写权限,进行执行域的切换;在被请求服务的内核模块所属的执行域中,在关卡函数中以函数调用的形式请求该内核模块的服务。
8.根据权利要求7所述的基于MPK技术的微内核模块间通讯系统,其特征在于,所述基于MPK技术的执行域模块:
每个执行域对应一个内核模块,内核模块有独立的寄存器状态以及独立的堆栈,以及可供执行的代码;
内核模块中存在一组入口函数,供进程间通讯使用;
所述基于MPK技术的执行域模块:
每个内核模块对应着一组对所有内存域的读写权限,内核模块至少可以读写自身代码及堆栈所处的内存域,内核拥有所有内存域的读写权限;
内核以外的内核模块不能读写其他执行域代码及堆栈所在的内存域;
所述基于MPK技术的执行域模块:
多个执行域可对一个内存域同时拥有读写权限,用于在通讯时传递数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海交通大学,未经上海交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010778265.X/1.html,转载请声明来源钻瓜专利网。