掌桥专利:专业的专利平台
掌桥专利
首页

一种线上硬件实验双层调度方法

文献发布时间:2023-06-19 18:29:06


一种线上硬件实验双层调度方法

技术领域

本发明属于线上硬件实验教学领域,涉及了一种线上硬件实验双层调度方法。

背景技术

当今社会对于硬件类人才的需求越来越大。硬件类人才的培养质量同高校硬件类课程的教育水平有着密不可分的联系,因此只有在硬件教学方式上进行革新才能推动新时代硬件教育的发展如今虽有诸多远程实验平台的部署方案,但受限于实际的运行环境以及有限的实验资源,系统整体不能保证高效运行,资源不能得到充分利用,这样在一定程度上阻碍了教师的教学任务安排,影响实际的授课效果。考虑到以上各个因素,现亟需一种能满足以上痛点的技术方法及系统来保证高校硬件类教学的有效进行。

发明内容

本发明提供一种线上硬件实验双层调度方法及系统,能够实现线上硬件实验资源的高效利用和灵活调度,满足更多用户在线进行硬件实验的需求。

根据本发明所提供的设计方案,提供一种线上硬件实验双层调度方法,包含以下内容:

用户通过互联网建立同云机房服务器的远程连接关系;

云机房服务器启动第一层调度器,并通过该调度器执行对应的第一层调度策略,第一层调度器根据当前硬件实验资源的运行状态参数,分配实验任务到当前最合适的硬件资源上进行实验环境的部署,实验运行期间,第一层调度器实时监控各个实验运行的状态,若某一实验任务响应时间过长、被分配到的资源不足以满足其流畅运行,则将由该调度器负责调度实验任务到更为合适的硬件资源上继续执行;

硬件资源启动第二层调度器,第二层调度器负责管理硬件资源上运行的多个实验任务的运行次序。该调度器为每个实验任务分配时间片,当某个任务时间片使用完毕后,调度器将该任务运行期间的状态信息保存至存储单元中,并挂起该任务以等待下一次时间片的分配,同时为其他就绪任务提供运行条件。

进一步地,本发明还提供一种线上硬件实验双层调度系统,用于协调硬件资源、云机房服务器的资源调度工作有序进行,包括:实验用户端,通过互联网与用户建立连接的云机房服务器以及与云机房服务器建立通信连接的板卡资源集群;其中,

用户通过互联网建立同云机房服务器的连接,连接建立完成后将实验配置文件上传到服务器上,云机房服务器向板卡资源集群申请空闲资源,并发送实验配置文件到板卡资源上,板卡根据配置文件中确定的管脚约束情况来对开发板实验元件进行自动化配置。随着在线实验用户数目的增加,单个硬件资源将负责运行多个实验任务,维护第二层任务调度队列,并为每个运行时任务分配时间片、同步运行任务产生的实验状态到存储单元中,以便后续实验任务被调度时恢复实验环境。

作为优选,步骤二中包括:

子步骤二一,进行实验资源的可用性筛选:

云服务器通过心跳机制确认实验板卡在线,为节省网络资源,在一次心跳请求中携带 Request标识,同时附带一次实验的请求资源量,实验板卡在接收到网络请求后根据板卡剩余资源量进行应答,若剩余资源不足以支持一次学生实验,板卡侧应答拒绝,表示该资源目前不可用,若资源充足,则应答接受;

云服务器收集到各个实验板卡的应答消息,过滤出应答接受信号的实验板卡进入子步骤二二,若第一阶段没有应答接受信号的实验板卡,则将任务加入调度等待队列中,调度器在预设时间T

子步骤二二,进行可用实验资源的最优选择;

首先计算硬件板卡各个运行属性的加权值,属性加权值计算如下:

其中,Score为加权后所得的值,n为调度器参考的参数个数,c

完成加权计算后,再根据加权所得的值择优选择板卡进行实验任务的环境部署:加权计算中的加权系数由AHP层次分析法确定而来,设定c

构建参数标度矩阵M,并对矩阵进行特征向量的分量ω

求解完成后得到的ω

作为优选,步骤二中还包括:

第一层调度器在确定执行迁移动作时先进行目的板卡的预加载动作;

第一层调度器通知通过两阶段筛选获得的目标板卡并在目标板卡生成一个空任务,设定迁移倒计时时间t

目的板卡在空任务生成成功结束后返回第一层调度器Pre-Located信号,表示环境已预加载,第一层调度器接收到该信号后再进行实验资源的整体迁移,目的板卡接收到实验资源后,将空任务替换为真正的实验任务,替换任务结束后,返回第一层调度器Located信号,第一层调度器接收到该信号后执行原板卡上的任务清除工作;

若目标板卡生成空任务失败,则返回调度器Rejected信号,表示该板卡当前创建新任务出错,不适合安排实验任务执行,调度器接收到该信号后切换到下一块目标板卡重复进行任务转移工作,直到任务转移完成;

若没有其他可用的板卡,则将迁移任务保存在队列中,等待后续可用资源出现;

若第一层调度器没能接收到目的板卡发送的Pre-Located信号,则在预设等待时间间隔 t

若没有其他可用的板卡,则将迁移任务保存在队列中,等待后续可用资源出现;此时,原目标板卡由于预设倒计时时间t

作为优选,步骤三中第二层调度器负责管理同一板卡上运行的多个实验任务:

调度器为处于运行状态的任务分配时间片,当时间片到期时,任务被暂停挂起,同时,任务产生的硬件状态被记录在板卡存储单元中;

此后,该任务被第二层调度器安排到队列末尾等待下一次调度,与此同时,第二层调度器选取队首任务,为其分配时间片以及将存储单元中该任务被暂停挂起之前的硬件状态恢复到硬件资源上,硬件状态恢复阶段结束后,该任务即处于运行状态。

作为优选,步骤三中还包括:

当第一层调度器确定要求将某一硬件板卡上的任务转移到其他资源上运行时,第一层调度器通过硬件板卡对外接口,向第二层调度器传输任务转移指令;

当第二层调度器接收到指令后,随即移除任务队列中的该任务,若该任务处于运行状态,调度器立即停止该任务,并将该任务产生的硬件状态返回至第一层调度器,此后,任务队列的队首任务开始运行;

第一层调度器接收到任务对应的硬件状态后,携带该状态转移任务到择优选取的硬件板卡上;

被选取的板卡上运行的第二层调度器接收到转移的任务,并保存其携带的硬件状态至本硬件存储单元中,此后,将该任务加入到任务队列中等待第二层调度器的调度运行。

本发明还提供一种线上硬件实验双层调度系统,用于协调硬件资源、云机房服务器的资源调度工作有序进行,包括:实验用户端,通过互联网与用户建立连接的云机房服务器以及与云机房服务器建立通信连接的板卡资源集群;其中,

用户通过互联网建立同云机房服务器的连接,连接建立完成后将实验配置文件上传到服务器上,云机房服务器向板卡资源集群申请空闲资源,并发送实验配置文件到板卡资源上,板卡根据配置文件中确定的管脚约束情况来对开发板实验元件进行自动化配置。随着在线实验用户数目的增加,单个硬件资源将负责运行多个实验任务,维护第二层任务调度队列,并为每个运行时任务分配时间片、同步运行任务产生的实验状态到存储单元中,以便后续实验任务被调度时恢复实验环境。

本发明的有益效果:用户通过互联网建立同云服务器的连接,并在远程设备上进行实验操作,真正实现了硬件设备的远程配置,达到了远程实验的要求,并且通过执行线上硬件实验双层调度策略,实验系统能够为更大基数的用户群体提供有效的服务,达到了高效利用实验资源的目的,具有较好的现实应用前景。

附图说明

图1为实施例中线上硬件实验双层调度系统流程示意;

图2为实施例中线上硬件实验双层调度系统的结构图。

具体实施方式

下面通过具体实施例,并结合附图,对本发明的技术方案作进一步的具体说明。

实施例1

如图1和图2所示,本发明实施例提供了一种线上硬件实验双层调度方法及系统,包含如下内容:

本发明实施例提供了一种线上硬件实验双层调度方法及系统,包含如下内容:

S101、用户端通过互联网建立与云机房服务器之间的远程连接关系;

S102、云机房服务器启动第一层调度器,并通过该调度器执行对应的第一层调度策略,第一层调度器根据当前硬件实验资源的运行状态参数,分配实验任务到当前最合适的硬件资源上进行实验环境的部署;

S103、硬件资源接收云服务器分配的实验任务,并根据实验任务配置文件中确定的管脚约束情况来对开发板实验元件进行自动化配置。同时,硬件资源启动第二层调度器,第二层调度器负责管理硬件资源上运行的多个实验任务的运行次序。

用户通过前端页面向后端云服务器发起请求建立连接,建立连接完成后,用户通过服务器的对外接口向服务器传输用户唯一标识、硬件配置文件以及硬件操作序列,其中,用户唯一标识用于服务器确认请求源自该用户,并为其提供专一服务;硬件配置文件规定了硬件资源的管脚约束情况,用于硬件资源自动化配置元器件状态信息;硬件操作序列为用户在线交互式操作所传输到服务器的操作指令,用于服务器解析指令并转化为实际的硬件指令到硬件资源上执行。

云服务器在确认连接后,将用户本次实验资源与用户唯一标识包装为实验任务对象,同时,云服务器开始进行第一层调度工作,第一层调度工作分为两个阶段:

第一阶段进行实验资源的可用性筛选,云服务器通过心跳机制确认实验板卡在线,为节省网络资源,在一次心跳请求中携带Request标识,同时附带一次实验的请求资源量,实验板卡在接收到网络请求后根据板卡剩余资源量进行应答,若剩余资源不足以支持一次学生实验,板卡侧应答拒绝,表示该资源目前不可用,若资源充足,则应答接受。云服务器收集到各个实验板卡的应答消息,过滤出应答接受信号的实验板卡进入第二阶段的筛选。若第一阶段没有应答接受信号的实验板卡,则将任务加入调度等待队列中,调度器在预设时间T

第二阶段进行可用实验资源的最优选择。服务端首先计算硬件板卡各个运行属性的加权值,属性加权值计算如下:

其中,Scpre为加权后所得的值,n为调度器参考的参数个数,c

根据上表构建参数标度矩阵M,并对矩阵进行特征向量的分量ω

求解完成后得到的ω

对于用户上传的硬件配置文件,服务器首先将其备份至存储模块中,再通过硬件板卡上的对外接口将文件传输到择优选择的硬件板卡上,配置开发板的芯片管脚约束方案,载入用户实验的基础环境。

为了解决用户请求速率和云服务器处理速率之间的差异问题,实施例在第一层调度中设置了任务队列,用以存放暂未处理的实验任务。

第一层调度器实时监控实验任务的响应情况,并将服务响应不及时的实验任务重新安排到合适的硬件资源上进行继续实验,即当满足以下条件时,第一层调度器负责将实验任务迁移到其他板卡上运行:

t

其中,t

实验任务被分配到板卡上时,第二层调度器负责管理同一板卡上运行的多个实验任务。调度器为处于运行状态的任务分配时间片,在一个时间片内,任务正常运行在硬件环境中,当时间片到期时,任务被暂停挂起,同时,任务产生的硬件状态被记录在板卡存储单元中。此后,该任务被第二层调度器安排到队列末尾等待下一次调度,与此同时,第二层调度器选取队列首部任务,为其分配时间片以及将存储单元中该任务被暂停挂起之前的硬件状态恢复到硬件资源上,硬件状态恢复阶段结束后,该任务即处于运行状态。

当第一层调度器确定要求将某一硬件板卡上的任务转移到其他资源上运行时,第一层调度器通过硬件板卡对外接口,向第二层调度器传输任务转移指令。当调度器接收到指令后,随即移除任务队列中的该任务,若该任务处于运行状态,调度器立即停止该任务,将该任务产生的硬件状态返回至第一层调度器,此后,任务队列的队首任务开始运行。

第一层调度器接收到任务对应的硬件状态后,携带该状态转移任务到择优选取的硬件板卡上。

被选取的板卡上运行的第二层调度器接收到转移的任务,并保存其携带的硬件状态至本硬件存储单元中,此后,将该任务加入到任务队列中等待第二层调度器的调度运行。

为确保实验任务顺利转移,第一层调度器在确定执行迁移动作时先进行目的板卡的预加载动作。调度器通知通过两阶段筛选获得的优质板卡生成一个空任务,并设定迁移倒计时时间t

若优质板卡生成空任务失败,则返回调度器Rejected信号,表示该板卡当前创建新任务出错,不适合安排实验任务执行,调度器接收到该信号后切换到下一块优质板卡重复进行任务转移工作,直到任务转移完成。若没有其他可用的板卡,则将迁移任务保存在队列中,等待后续可用资源出现。

若调度器没能接收到目的板卡发送的Pre-Located信号,则在预设等待时间间隔t

相关技术
  • 一种线上硬件实验透明化配置方法及系统
  • 硬件资源调度方法、装置及硬件资源调度设备
技术分类

06120115582135