[发明专利]一种基于众核处理器的容器管理方法及其系统在审
申请号: | 202111584390.8 | 申请日: | 2021-12-22 |
公开(公告)号: | CN114327758A | 公开(公告)日: | 2022-04-12 |
发明(设计)人: | 陶永超;魏明;吴翔虎 | 申请(专利权)人: | 深圳航天科技创新研究院 |
主分类号: | G06F9/455 | 分类号: | G06F9/455;G06F9/50 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 侯丽燕 |
地址: | 518000 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 处理器 容器 管理 方法 及其 系统 | ||
1.一种基于众核处理器的容器管理方法,其特征在于,包括以下步骤:
启动运行容器管理器程序,获取目标容器资源池对应的资源配置请求,根据容器配置表将对应的属性信息配置至每个容器;
根据预设的调度策略,通过容器管理器对所有的容器进行调度,由各个容器执行容器管理器的命令以及反馈自身的状态和故障信息;
容器管理器实时监控当前运行容器的运行时间片是否耗尽,若容器运行时间片耗尽,则继续从调度表中选取一个容器运行;否则,更新容器的运行时间片,并判断当前容器是否上报安全错误信息,如是,容器管理器根据该信息做出执行相应处理并判断是否需要重置当前容器,如不需要,则允许该容器继续运行,直至该容器的运行时间片耗尽后,继续调度下一个容器运行。
2.根据权利要求1所述的方法,其特征在于:
在启动运行容器管理器程序后,容器管理器程序运行在TI C6678平台的处理器上,根据容器配置表将对应的属性信息配置至每个容器,其中,容器的属性信息包括容器索引id、容器名称、容器时间片、容器中主核id、容器中最大CPU数、内存分区的起始地址、内存分区的大小等。
3.根据权利要求1所述的方法,其特征在于:
当容器被调度之前,由容器管理器判断容器的状态:当容器管理器读取容器配置表为系统创建一个新的容器时,此时该容器为初始化状态;
若要在系统中运行创建的容器,需要将容器添加到容器就绪表中,则将该容器状态设置为就绪态,以便容器管理器从容器就绪表调度容器运行。
4.根据权利要求3所述的方法,其特征在于:
当容器被容器管理器调度运行时,容器设置为运行态,直到容器运行的时间片耗尽,容器管理器将容器的状态设置为就绪态并将其重新添加到就绪表中,以便下一次的调度运行;
若容器在运行过程中产生容器一级的故障,并且容器无法处理该故障,将容器的状态更新为停止状态,并向容器管理器注入容器错误,由容器管理器处理相对应的容器错误,并重启容器或恢复容器运行;若重启,则重启产生错误的容器,将其设置为就绪态并添加到就绪表,以保证容器能够继续运行。
5.根据权利要求3所述的方法,其特征在于:
在进行容器调度时,采用时间片轮转调度算法作为调度策略,通过容器管理器按照容器创建先后顺序选取各个容器进行调度,在调度管理器中提供一个调度表,该调度表按照FIFO策略实现对表元素的添加和选取,在系统初始化时,容器管理器按照容器配置表创建容器并将所创建的容器添加到调度表。
6.根据权利要求5所述的方法,其特征在于:
当容器管理器要从调度表中选取一个容器来运行,选取的是在调度表中头部的容器来运行;其中,调度表头部容器变化为id为2的容器,当第一个容器的运行时间片耗尽,容器管理器从调度表选取容器id为2的容器运行,同时将正在运行的容器添加到调度表的尾部。
7.根据权利要求6所述的方法,其特征在于:
在系统启动之后,容器调度器从调度表中选取第一个容器准备执行调度,设置所选容器为就绪态,并为该容器配置运行时间片,向容器所配置的主DSP核心发送启动命令的核间中断。
8.根据权利要求7所述的方法,其特征在于:
开启容器管理器的tick定时器以产生调度时间片,在每个tick定时器中断处理中减少当前运行容器的时间片并检查其时间片是否用尽,若当前容器的时间片已消耗尽,则停止当前容器的运行,向容器所配置的主DSP核心发送停止命令的核间中断;
然后,容器管理器从调度表中获取下一个要运行的容器句柄,设置容器配置运行时间片,并向容器主DSP核心发送启动命令的核间中断。
9.根据权利要求1至8任一项所述的方法,其特征在于:
在容器执行期间,每个容器有其预先定义好的内存区域,每个容器只能访问其所属的内存区域,不可以越界访问,从而实现多个应用在运行空间上隔离保护。
10.一种基于众核处理器的容器管理系统,其特征在于,包括:
配置单元,用于启动运行容器管理器程序,获取目标容器资源池对应的资源配置请求,根据容器配置表将对应的属性信息配置至每个容器;
调度单元,用于根据预设的调度策略,通过容器管理器对所有的容器进行调度,由各个容器执行容器管理器的命令以及反馈自身的状态和故障信息;
管理单元,通过容器管理器实时监控当前运行容器的运行时间片是否耗尽,若容器运行时间片耗尽,则继续从调度表中选取一个容器运行;否则,更新容器的运行时间片,并判断当前容器是否上报安全错误信息,如是,容器管理器根据该信息做出执行相应处理并判断是否需要重置当前容器,如不需要,则允许该容器继续运行,直至该容器的运行时间片耗尽后,继续调度下一个容器运行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳航天科技创新研究院,未经深圳航天科技创新研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111584390.8/1.html,转载请声明来源钻瓜专利网。