买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明公布】一种基于linux内核与KVM而实现的虚拟机vcpu线程专用调度器_天翼云科技有限公司_202311693749.4 

申请/专利权人:天翼云科技有限公司

申请日:2023-12-11

公开(公告)日:2024-04-09

公开(公告)号:CN117850961A

主分类号:G06F9/455

分类号:G06F9/455

优先权:

专利状态码:在审-实质审查的生效

法律状态:2024.04.26#实质审查的生效;2024.04.09#公开

摘要:本发明公开了一种基于linux内核与KVM而实现的虚拟机vcpu线程专用调度器,主体为VMSCH,其特征在于:所述VMSCH即为虚拟机vcpu调度器,所述VMSCH优先级介于RT调度策略与CFS调度策略之间,优先级为99,并将RT优先级由1‑99调整为1‑98,所述VMSCH仅管理vcpu线程的调度,不管理其它线程。本发明中vcpu独占pcpu的占空比可动态配置,也无需开机启动配置,避免了采用isolate隔离出pcpu给vcpu使用方案缺少的灵活性,避免了RT调度策略在带宽限制发生之后且idle状态导致的pcpu资源浪费,且本发明具备CPU架构无关性,实现之后,即可天然支持任何CPU体系架构,比如X86、ARM和龙芯等,具有极为广泛的适用范围。

主权项:1.一种基于linux内核与KVM而实现的虚拟机vcpu线程专用调度器,主体为VMSCH,其特征在于:所述VMSCH即为虚拟机vcpu调度器,所述VMSCH优先级介于RT调度策略与CFS调度策略之间,优先级为99,并将RT优先级由1-99调整为1-98,所述VMSCH仅管理vcpu线程的调度,不管理其它线程;所述VMSCH的调度方法包括以下步骤:S1:新增加支持VMSCH调度器调度实体rq的数据结构,增加VMSCH调度实体数据结构,在task_struct数据结构里增加对VMSCH调度实体的支持;增加VMSCH调度rq数据结构且只分配一个优先级队列,在rq数据结构中增加对VMSCH调度rq的支持,增加VMSCH带宽限制数据结构,内核CGOURP接口sched_create_group增加对VMSCH调度的支持;VMSCH调度实体增加对CGROUP的支持;S2:确定VMSCH的带宽限制,当VMSCH调度实体运行时刻,启动一个定时器,周期性的检查Tvm是否到期,检查时间点设置为Tvm在当前带宽限制周期内的到期时间点。如果到期,那么就切换到其它进程运行,开始Toth时间段带宽限制,直到Tall到期,关闭该定时器,若此时无可运行的其它进程,那么重新调度当前VMSCH调度实体,重新启动该定时器,重启新一轮Tvm带宽限制检测;S3:在linux内核目录kernelsched目录增加VMSCH调度器的算法代码实现;S4:在linux内核启动期间,在函数init_sched_vmsch_class里面增加VMSCH调度器的初始化,在函数sched_init里面增加VMSCH调度器rq的初始化,增加VMSCH对CGROUP支持的初始化,增加VMSCH调度器默认Tvm带宽的初始化;S5:将VMSCH调度类的优先级定义为99,RT调度类的优先级定义为1-98。即,VMSCH调度器的优先级介于RT与CFS之间;S6:在内核带宽限制回调tablecpu_legacy_files[]增加VMSCH调度器带宽限制参数配置的读写接口;S7:初始化一个带宽限制的定时器,在定时器里面检查Tvm是否到期,到期将产生软中断,切换到当前cpurq以外的其它调度实体,此时如果没有其它可运行的调度实体,重新运行VMSCH调度实体,并重启该定时器;S8:在idle任务里面,进入睡眠前重新将VMSCH调度实体入队运行,重新激活带宽限制定时器;S9:实现其它辅助接口对VMSCH调度的支持,比如判断优先级是否为VMSCH的优先级,调度实体是否为VMSCH调度策略,设置获取进程优先的接口增加对VMSCH的支持,内核编译配置文件增加对VMSCH的编译宏定义,负载统计增加对VMSCH的支持,fork接口增加对VMSCH调度策略的支持;S10:KVMAPIkvm_vcpu_ioctl,在该函数里面将虚拟机vpcu的调度策略修改为SCHED_VMSCH;S11:qemu虚拟机XML配置,增加qemuvcpu的pin配置,将vpcupin到期望的pcpu上。

全文数据:

权利要求:

百度查询: 天翼云科技有限公司 一种基于linux内核与KVM而实现的虚拟机vcpu线程专用调度器

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。