说明:收录全网最新的团体标准 提供单次或批量下载
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202211226254.6 (22)申请日 2022.10.09 (71)申请人 电子科技大 学 地址 611731 四川省成 都市高新区 (西区) 西源大道 2006号 申请人 中移物联网有限公司 (72)发明人 李蒙 肖堃 汪澜涛 罗蕾  陈丽蓉  (74)专利代理 机构 成都行之智 信知识产权代理 有限公司 5125 6 专利代理师 温利平 (51)Int.Cl. G06F 9/48(2006.01) G06F 9/50(2006.01) (54)发明名称 微内核中系统服 务并发调用方法 (57)摘要 本发明公开了一种微内核中系统服务并发 调用方法, 系统服务向内核进行注册, 内核为每 个系统服务提生成服务描述符, 各个系统服务将 自己的处理函数注册至对应的服务描述符中; 内 核为注册完成的系统服务创建一个线程池, 该线 程池包括管理线程、 工作线程和任务等待队列; 当客户端需要调用系统服务时, 基于LRPC模型向 内核进行系统服务调用。 本发明通过结合线程池 和LRPC模型, 提高微内核操作系统中系统服务的 并发性。 权利要求书2页 说明书5页 附图1页 CN 115480904 A 2022.12.16 CN 115480904 A 1.一种微内核中系统服 务并发调用方法, 其特 征在于, 包括以下步骤: S1: 系统服务向内核进行注册, 内核为每个系统服务提供服务的抽象, 即为其生成服务 描述符, 各个系统服 务将自己的处 理函数注 册至对应的服 务描述符中; S2: 在内核启动并初始化后, 内核会创建第一个用户态线程并进入用户态; 此后 每当有 系统服务注册完成后, 内核为该系统服务创建一个线程池, 该线程池包括管理线程、 工作线 程和任务 等待队列, 其中: 管理线程用于 接收来自客户端的调用请求, 并将其指派到 工作线程执 行; 工作线程对应系统服务提供的全部服务或部分服务, 具体配置根据实 际情况设置, 用 于对管理线程指派的调用请求进行 执行; 任务等待队列用于记录自客户端接收的、 等待执 行的调用请求; S3: 基于LRPC模型进行系统服 务调用, 具体方法如下: 1)客户端创建一个线程, 向内核发送对系统服务的调用请求, 内核验证客户端的正确 性, 如果验证不通过, 则向客户端反馈错误提示信息, 如果验证通过, 则查找得到系统服务 对应的服务描述符, 为服务描述符分配两个资源: 参数栈和连接记录, 并返回给客户端线程 一个该服务描述符的绑定对 象, 客户端线程将需要向系统服务传递的参数存放至参数栈, 并通过绑定对象找到系统服 务对应的服 务描述符, 然后向系统服 务发起通信; 2)内核验证参数栈和连接记录的正确性, 如果验证未通过, 则向客户端反馈错误提示 信息, 如果验证通过, 进入步骤3); 3)内核检测当前是否存在并发调用, 如果存在, 则将该调用请求存放至所调用系统服 务线程池的任务 等待队列中, 如果 不存在, 进入步骤4); 4)内核将客户端 线程的返回地址和栈指针存放到连接记录; 5)内核将连接记录发送至线程池中管理线程的栈上, 管理线程为本次调用分配相应的 工作线程, 然后内核将参数栈同时映射到 本次调用系统服 务的工作线程和客户端 线程; 6)内核切换至 本次调用的系统服 务工作线程的线程 地址空间; 7)内核找到系统服 务线程池中本次调用的工作线程的运行栈(执 行代码所用的栈); 8)内核将当前运行的客户端线程的栈指针设置为本次调用系统服务工作线程的运行 栈地址; 9)内核将当前运行的客户端线程的代码指针指向本次调用系统服务工作线程地址空 间中的处 理函数; 10)内核在当前运行的客户端线程执行系统服务提供的处理函数, 得到本次调用的执 行结果, 根据连接记录中客户端 线程的返回地址将执 行结果返回至客户端, 本次调用结束。 2.根据权利要求1所述的微内核中系统服务并发调用方法, 其特征在于, 所述线程池的 初始大小N 根据系统服 务的服务范围和服 务频率计算: 其中, K表示历史数据中调用该系统服务的客户端数量, Pk表示历史数据中调用该系统 服务的客户端的频率, λ表示预设的常数, 其取值范围为[0.5,1]。 3.根据权利要求1所述的微内核中系统服务并发调用方法, 其特征在于, 所述管理线程权 利 要 求 书 1/2 页 2 CN 115480904 A 2对线程池的使用情况进行监控并进行动态调整, 具体方法如下: 内核对线程池中工作线程的使用率进行统计, 当工作线程的使用率大于等于预设阈值 T1, 则新建工作线程, 当工作线程的使用率小于等于预设阈值T2, T2<T1, 则关闭部分未调用 的工作线程。 4.根据权利要求1所述的微内核中系统服务并发调用方法, 其特征在于, 所述管理线程 在检测到工作线程发生死锁时, 将该工作线程杀死, 然后将在其上执行 的客户端调用请求 重新放入任务等待队列。权 利 要 求 书 2/2 页 3 CN 115480904 A 3

.PDF文档 专利 微内核中系统服务并发调用方法

文档预览
中文文档 9 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共9页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 微内核中系统服务并发调用方法 第 1 页 专利 微内核中系统服务并发调用方法 第 2 页 专利 微内核中系统服务并发调用方法 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 13:13:51上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。