CN106371903B - 飞机机载可信计算平台的任务调度方法 - Google Patents

飞机机载可信计算平台的任务调度方法 Download PDF

Info

Publication number
CN106371903B
CN106371903B CN201610708035.XA CN201610708035A CN106371903B CN 106371903 B CN106371903 B CN 106371903B CN 201610708035 A CN201610708035 A CN 201610708035A CN 106371903 B CN106371903 B CN 106371903B
Authority
CN
China
Prior art keywords
task
trustworthy
request
priority
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610708035.XA
Other languages
English (en)
Other versions
CN106371903A (zh
Inventor
马建峰
吴奇烜
李亚晖
孙聪
牛文生
孙召昌
白林亭
帕尔哈提江·斯迪克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xidian University
Xian Aeronautics Computing Technique Research Institute of AVIC
Original Assignee
Xidian University
Xian Aeronautics Computing Technique Research Institute of AVIC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xidian University, Xian Aeronautics Computing Technique Research Institute of AVIC filed Critical Xidian University
Priority to CN201610708035.XA priority Critical patent/CN106371903B/zh
Publication of CN106371903A publication Critical patent/CN106371903A/zh
Application granted granted Critical
Publication of CN106371903B publication Critical patent/CN106371903B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/48Indexing scheme relating to G06F9/48
    • G06F2209/484Precedence

Abstract

一种飞机机载可信计算平台的任务调度方法,该方法的具体步骤包括:(1)建立相关调度线程;(2)接收用户的可信任务请求;(3)分发可信任务并执行;(4)更新任务优先级;(5)计算预期时长(6)判断预期时长是否大于可信任务请求中所包含的超时时长;(7)删除超时节点,向发送可信任务请求的用户返回超时;(8)增大任务优先级。本发明采用任务等待队列对可信任务请求进行调度,避免了多个任务请求对硬件的同时访问而造成数据丢失问题。本发明克服了现有调度方法不具备动态调节机制的缺陷,能动态调整任务优先级,使得任务调度更加合理,保证不同优先级的任务能及时得到有效的处理。

Description

飞机机载可信计算平台的任务调度方法
技术领域
本发明属于计算机技术领域,更进一步涉及航空电子技术领域中的一种飞机机载可信平台的任务调度方法。本发明可应用在搭载有可信计算平台的飞控计算机上,对计算资源进行合理分配,使得可信软件栈中的任务能够及时得到执行。
背景技术
对于具有高安全性要求的飞机机载计算系统,有必要向其添加一个可信平台模块TPM,以增强该系统的安全性。由于TPM硬件只能串行处理任务请求,而不能同时处理多个任务请求;且硬件平台针对不同的任务请求所需的处理时间不同。因此需要设计有效的调度算法,保证不同优先级的任务得到有效和及时的处理。现有调度方法大多根据任务优先级判定执行顺序。
惠州TCL移动通信有限公司在其申请的专利“一种任务的实时调度实现方法及系统”(专利申请号201510302282.5,公开号104915256A)中公开了一种任务的实时调度实现方法。其方法的步骤包括:1,创建新任务时,执行该任务,并判断等待调度队列中执行优先级最高的任务是否大于新任务优先级;2.当大于时,切换新任务至等待队列,并将等待调度队列中执行优先级最高的任务调入CPU运行。该方法存在的不足之处是,该方法仅针对可中断的任务,且仅通过优先级对任务进行调度,该方法实现简单,不具备调节机制,若某任务执行时间长且优先级高容易造成整个系统的瘫痪。
广州华多网络科技有限公司在其申请的专利“一种基于HIVE任务的任务调度方法”(专利申请号201410831524.5,公开号104536811A)中公开了一种基于HIVE任务的任务调度方法。该方法包括:确定需要进行调度的多个任务及各个任务之间的依赖关系;根据依赖关系确定各个任务的前置依赖任务及后置依赖任务;在所有需要进行调度的任务中选择当前需要调度的任务,得到被选任务;根据被选任务的前置依赖任务的调度结果对被选任务进行调度;按照选择被选任务的方式及调度被选任务的方式处理被选任务的后置依赖任务及所有未调度的任务,直至调度完所有需要进行调度的任务。该方法存在的不足之处是,由于该方法通过对待调度任务的前置及后置任务分析确定执行顺序,以使任务有序执行,因此需要调度系统能实时获取任务之间存在的依赖关系,且没有考虑到任务优先级,容易由于某些任务的前置、后置任务繁杂使重要任务迟迟得不到执行。
对于机载可信平台模块TPM及其可信软件栈TSS而言,存在以下问题:(1)硬件平台只能串行处理任务请求,而不能同时处理多个任务请求;(2)硬件平台针对不同的任务请求所需的处理时间不同。而同时,可能存在多个上层应用程序同时向可信平台模块TPM发送任务请求。因此需要设计有效的调度算法,保证不同优先级的任务得到有效和及时的处理。
发明内容
本发明的目的是为了克服上述现有技术存在问题,提出一种为飞机机载嵌入式可信平台提供一种任务调度方法。
本发明实现的基本思路是:使用任务等待队列对可信任务请求进行排序,提供多线程同步机制以访问仅允许单线程访问的可信平台模块TPM;并根据任务错过率动态调整可信任务请求的任务优先级,合理利用可信计算模块的硬件资源,
为实现上述目的,本发明的具体步骤如下:
(1)建立相关调度线程:
(1a)设置一个任务等待队列;
(1b)初始化飞机机载可信计算平台,在机载计算机嵌入式实时操作系统中分别建立一个接收线程、一个分发线程、一个监控线程;
(2)接收用户的可信任务请求:
(2a)多个用户并行向飞机机载可信计算平台发送可信任务请求,接收线程持续性地监听可信任务请求;
(2b)对接收线程监听到的每个可信任务请求,使用任务优先级计算公式,计算每个可信任务请求的任务优先级,得到初始任务优先级;
(2c)将计算过初始任务优先级的可信任务请求加入到任务等待队列中;
(3)分发可信任务并执行:
(3a)分发线程遍历任务等待队列,取出任务等待队列中任务优先级最高的可信任务请求;
(3b)分发线程将任务优先级最高的可信任务请求分发至可信平台模块中的功能模块,执行任务优先级最高的可信任务请求,分发线程阻塞;功能模块将可信任务请求的执行结果返回给发送可信任务请求的用户后,分发线程停止阻塞;
(4)更新任务优先级:
(4a)监控线程每经过T个时间片,利用任务错过率公式,计算一次当前任务错过率,并将计算结果反馈给分发线程,其中,T表示执行一个可信任务平均所需要的时间片的个数;
(4b)分发线程遍历任务等待队列,使用任务优先级计算公式,计算每个可信任务请求的任务优先级,得到反馈任务优先级;
(5)计算预期时长:
计算可信任务请求排队时间与任务执行时间之和,得到预期时长;
(6)判断预期时长是否大于可信任务请求中所包含的超时时长:若是,则执行步骤(7),否则,执行步骤(8);
(7)删除超时的可信任务请求,向发送可信任务请求的用户返回超时;
(8)增大任务优先级:
(8a)按照下式,根据每个可信任务在任务队列中等待的时间增大每个可信任务请求的任务优先级:
其中,TPi'表示第i个可信任务请求增大后的任务优先级,TPi表示第i个可信任务请求的任务优先级,WTi表示第i个可信任务请求在任务队列中等待的时间,T表示执行一个可信任务平均所需要时间片的个数,Δt表示时间片的长度;
(8b)用计算得到的增大的任务优先级替换原任务优先级。
本发明与现有技术相比具有以下优点:
第一,由于本发明通过更新任务优先级,实现了可信任务请求优先级的动态调整,克服了现有技术中任务的实时调度实现方法仅根据静态优先级对所有任务进行排序,不具备调节机制的缺点,解决了多个用户同时发起可信任务请求的排序问题,使得本发明任务调度更加合理,更有效的利用飞机机载计算平台。
第二,由于本发明通过判断可信任务在队列中排队时间与任务执行时间之和是否大于超时设定时长,实现了任务超时判断与增大等待时间较长的任务优先级,克服了现有技术中任务调度实现方法中由于某任务执行时间长且优先级高容易造成整个系统的瘫痪的缺点,使得本发明能够使优先级较低的任务也能在等待一段时间后得到执行。
第三,由于本发明采用任务等待队列对可信任务请求进行调度,针对可信平台模块TPM仅允许单线程访问的特点,提供了多线程同步机制,克服了现有技术中任务的调度实现方法仅支持可中断任务的缺陷,使得本发明避免了多个任务请求对硬件的同时访问而造成数据丢失问题。
附图说明
图1为本发明的流程图。
具体实施方式
参照附图1,本发明的具体步骤如下。
步骤1,建立相关调度线程。
设置一个任务等待队列。
机载可信计算平台初始化时,在机载计算机嵌入式实时操作系统中分别建立一个接收线程、一个分发线程、一个监控线程。
调度组件以服务线程的形式常驻系统,在机载可信计算平台启动时一同启动,实时维护任务等待队列。接收线程负责监听并发任务请求,分发线程负责从任务等待队列中取出优先级最高的节点送往可信平台模块执行,监控线程统计任务状态信息并反馈给分发线程,这些信息可用于动态调整任务优先级。
步骤2,接收用户的可信任务请求。
多个用户并行向机载可信计算平台发送可信任务请求,接收线程持续性监听可信任务请求。
所述的用户并行发送可信任务请求包括可信请求部分、结果返回地址、任务的关键性、超时时长、任务执行所需时间。
对接收线程监听到的每个可信任务请求,使用任务优先级计算公式,计算每个可信任务请求的任务优先级,得到初始任务优先级。
所述的任务优先级计算公式如下:
其中,TPi表示第i个可信任务请求的任务优先级,C表示可信任务请求所包含的任务的关键性,a0表示任务的关键性的系数,其取值范围为[0,1],TET表示可信任务请求中所包含的任务执行所需时间,k表示调整任务执行所需时间与任务的关键性C处于同一数量级的调控参数,a1表示任务执行时间的系数,其取值范围为[0,1]。经过调控,当一个任务越关键,执行任务用时越短,则任务优先级越高。
将计算过任务初始任务优先级的可信任务请求加入到任务等待队列中。
步骤3,分发可信任务并执行。
分发线程遍历任务等待队列,取出任务等待队列中任务优先级最高的可信任务请求。
分发线程在取出任务等待队列中节点后进行审计分析,若为合法请求,则依据可信请求码为请求分发至相应可信平台模块的相应功能模块,执行任务优先级最高的可信任务请求,分发线程阻塞;功能模块将可信任务请求的执行结果返回给发送可信任务请求的用户后,分发线程停止阻塞。
步骤4,更新任务优先级。
监控线程每经过T个时间片,利用任务错过率公式,计算一次当前任务错过率,并将计算结果反馈给分发线程,其中,T表示执行一个可信任务平均所需要的时间片个数。
所述的任务错过率TMR的计算公式如下:
其中,TMR表示任务错过率,m表示由监控线程在可信任务超时时记录的错过时限的可信任务总数,f表示由监控线程在可信任务正常执行返回结果时记录在时限内完成的可信任务总数。
易知,TMR的值域为[0,1],当其为0时表示所有任务都能够按时得到服务,从而只需根据任务的关键性对可信请求进行调度即可;而当TMR增大时,加强对任务执行时间的重视程度,即增加a1,以此实现在系统繁忙时能够调度优先执行时间相对较短的任务使大部分任务能够按时得到执行;
分发线程在遍历任务等待队列时,根据任务错过率调整任务的关键性的系数a0与任务执行时间的系数a1,令a0=1-TMR,a1=TMR,使用任务优先级计算公式,计算每个任务的反馈任务优先级。
所述的任务优先级计算公式如下:
其中,TPi表示第i个可信任务请求的任务优先级,C表示可信任务请求所包含的任务的关键性,a0表示任务的关键性的系数,其取值范围为[0,1],TET表示可信任务请求中所包含的任务执行所需时间,k表示调整任务执行所需时间与任务的关键性C处于同一数量级的调控参数,a1表示任务执行时间的系数,其取值范围为[0,1]。
用计算得到的反馈任务优先级替换初始任务优先级。
步骤5,分发线程计算可信任务在队列中排队时间与任务执行时间之和,得到预期时长。
步骤6,判断预期时长是否大于可信任务请求中所包含的超时设定时长:若是,则执行步骤(7),否则,执行步骤(8)。
步骤7,删除超时节点,向发送可信任务请求的用户返回超时。
步骤8,增大任务优先级。
按照下式,根据可信任务在任务队列中等待的时间增大每个任务的优先级:
其中,TPi'表示第i个可信任务请求增大后的任务优先级,TPi表示第i个可信任务请求的任务优先级,WTi表示第i个可信任务请求在任务队列中等待的时间,T表示执行一个可信任务平均所需要时间片的个数,Δt表示时间片的长度。
用计算得到的增大的任务优先级替换任务优先级。

Claims (5)

1.一种飞机机载可信计算平台的任务调度方法,具体步骤如下:
(1)建立相关调度线程:
(1a)设置一个任务等待队列;
(1b)初始化飞机机载可信计算平台,在机载计算机嵌入式实时操作系统中分别建立一个接收线程、一个分发线程、一个监控线程;
(2)接收用户的可信任务请求:
(2a)多个用户并行向飞机机载可信计算平台发送可信任务请求,接收线程持续性地监听可信任务请求;
(2b)对接收线程监听到的每个可信任务请求,使用任务优先级计算公式,计算每个可信任务请求的任务优先级,得到初始任务优先级;
(2c)将计算过初始任务优先级的可信任务请求加入到任务等待队列中;
(3)分发可信任务并执行:
(3a)分发线程遍历任务等待队列,取出任务等待队列中任务优先级最高的可信任务请求;
(3b)分发线程将任务优先级最高的可信任务请求分发至可信平台模块中的功能模块,执行任务优先级最高的可信任务请求,分发线程阻塞;功能模块将可信任务请求的执行结果返回给发送可信任务请求的用户后,分发线程停止阻塞;
(4)更新任务优先级:
(4a)监控线程每经过T个时间片,利用任务错过率公式,计算一次当前任务错过率,并将计算结果反馈给分发线程,其中,T表示执行一个可信任务平均所需要的时间片的个数;
(4b)分发线程遍历任务等待队列,使用任务优先级计算公式,计算每个可信任务请求的任务优先级,得到反馈任务优先级;
(5)计算预期时长:
计算可信任务请求排队时间与任务执行时间之和,得到预期时长;
(6)判断预期时长是否大于可信任务请求中所包含的超时时长:若是,则执行步骤(7),否则,执行步骤(8);
(7)删除超时的可信任务请求,向发送可信任务请求的用户返回超时;
(8)增大任务优先级:
(8a)按照下式,根据每个可信任务在任务队列中等待的时间增大每个可信任务请求的任务优先级:
其中,TPi'表示第i个可信任务请求增大后的任务优先级,TPi表示第i个可信任务请求的任务优先级,WTi表示第i个可信任务请求在任务队列中等待的时间,T表示执行一个可信任务平均所需要时间片的个数,Δt表示时间片的长度;
(8b)用计算得到的增大的任务优先级替换原任务优先级。
2.根据权利要求1所述的飞机机载可信计算平台的任务调度方法,其特征在于,步骤(2a)中所述的可信任务请求包括可信请求部分、结果返回地址、任务的关键性、超时时长、任务执行所需时间。
3.根据权利要求1所述的飞机机载可信计算平台的任务调度方法,其特征在于,步骤(2b)、步骤(4b)中所述的任务优先级计算公式如下:
其中,TPi表示第i个可信任务请求的任务优先级,C表示可信任务请求所包含的任务的关键性,a0表示任务的关键性的系数,其取值范围为[0,1],TET表示可信任务请求中所包含的任务执行所需时间,k表示调整任务执行所需时间与任务的关键性C处于同一数量级的调控参数,a1表示任务执行时间的系数,其取值范围为[0,1]。
4.根据权利要求1所述的飞机机载可信计算平台的任务调度方法,其特征在于,步骤(3a)中所述的任务优先级最高的可信任务请求是指,初始任务优先级或反馈任务优先级中任务优先级最高的可信任务请求。
5.根据权利要求1所述的飞机机载可信计算平台的任务调度方法,其特征在于,步骤(4a)中所述的任务错过率公式如下:
其中,TMR表示任务错过率,m表示由监控线程在可信任务超时时记录的错过时限的可信任务总数,f表示由监控线程在可信任务正常执行并返回结果时记录的在时限内完成的可信任务总数。
CN201610708035.XA 2016-08-23 2016-08-23 飞机机载可信计算平台的任务调度方法 Active CN106371903B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610708035.XA CN106371903B (zh) 2016-08-23 2016-08-23 飞机机载可信计算平台的任务调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610708035.XA CN106371903B (zh) 2016-08-23 2016-08-23 飞机机载可信计算平台的任务调度方法

Publications (2)

Publication Number Publication Date
CN106371903A CN106371903A (zh) 2017-02-01
CN106371903B true CN106371903B (zh) 2019-05-24

Family

ID=57878194

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610708035.XA Active CN106371903B (zh) 2016-08-23 2016-08-23 飞机机载可信计算平台的任务调度方法

Country Status (1)

Country Link
CN (1) CN106371903B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108668331B (zh) * 2017-03-30 2020-08-07 展讯通信(上海)有限公司 一种多模设备的任务调度方法及装置
CN107577523B (zh) * 2017-07-31 2021-01-05 创新先进技术有限公司 一种任务执行的方法及装置
CN108920264B (zh) * 2018-06-12 2020-08-28 深圳市德明利技术股份有限公司 一种命令超时处理方法及系统
CN112100186B (zh) * 2020-08-26 2024-04-05 金蝶软件(中国)有限公司 基于分布式系统的数据处理方法、装置、计算机设备
CN116700913A (zh) * 2022-09-13 2023-09-05 荣耀终端有限公司 嵌入式文件系统的调度方法、设备及存储介质
CN115776524B (zh) * 2023-02-10 2023-04-25 广东瑞恩科技有限公司 用于智能制造的物联网海量数据多级调度传输系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104503832A (zh) * 2014-12-22 2015-04-08 西安电子科技大学 一种公平和效率均衡的虚拟机调度系统及方法
CN104536827A (zh) * 2015-01-27 2015-04-22 浪潮(北京)电子信息产业有限公司 一种数据调度方法和装置
CN105511950A (zh) * 2015-12-10 2016-04-20 天津海量信息技术有限公司 大数据集的任务队列优先级的调度管理方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160210174A1 (en) * 2015-01-15 2016-07-21 Microsoft Corporation Hybrid Scheduler and Power Manager

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104503832A (zh) * 2014-12-22 2015-04-08 西安电子科技大学 一种公平和效率均衡的虚拟机调度系统及方法
CN104536827A (zh) * 2015-01-27 2015-04-22 浪潮(北京)电子信息产业有限公司 一种数据调度方法和装置
CN105511950A (zh) * 2015-12-10 2016-04-20 天津海量信息技术有限公司 大数据集的任务队列优先级的调度管理方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
云计算下保障公平性的多资源分配算法;卢笛 等;《西安电子科技大学学报(自然科学版)》;20140630;第41卷(第3期);162-168

Also Published As

Publication number Publication date
CN106371903A (zh) 2017-02-01

Similar Documents

Publication Publication Date Title
CN106371903B (zh) 飞机机载可信计算平台的任务调度方法
CN106844198B (zh) 一种分布式调度自动化测试平台及方法
CN112882813B (zh) 任务调度方法、装置、系统及电子设备
CN105978960B (zh) 一种基于海量视频结构化处理的云调度系统及方法
US9588809B2 (en) Resource-based scheduler
CN111399989B (zh) 一种面向容器云的任务抢占调度方法及系统
CN101290668B (zh) 一种分时作业动态调度方法和装置
US8056083B2 (en) Dividing a computer job into micro-jobs for execution
CN103019835A (zh) 一种多核处理器中断资源优化处理系统和方法
CN106209482A (zh) 一种数据中心监控方法及系统
CN106293919A (zh) 一种时间触发的嵌入式任务调度装置与方法
CN107370799B (zh) 一种混合移动云环境中高能效的多用户在线计算迁移方法
CN105389206A (zh) 一种云计算数据中心虚拟机资源快速配置方法
CN110262881A (zh) 一种Spark作业的提交方法及装置
CN110764915A (zh) 一种针对kubernetes主节点选择的优化方法
CN109445921A (zh) 一种分布式数据任务处理方法及装置
Balla et al. Reliability enhancement in cloud computing via optimized job scheduling implementing reinforcement learning algorithm and queuing theory
CN103268258A (zh) 一种卫星地面遥控发令安全控制方法
US20180039520A1 (en) Methods and Nodes for Scheduling Data Processing
CN101576831A (zh) 一种分布式计算系统及实现方法
CN103442087B (zh) 一种基于响应时间趋势分析的Web服务系统访问量控制装置和方法
CN115292039A (zh) 一种面向异构计算平台的多任务分布式调度负载均衡方法
CN103853713B (zh) 海量数据高效入库方法
CN103617083B (zh) 存储调度方法和系统、作业调度方法和系统及管理节点
US20110055168A1 (en) System, method, and computer-readable medium to facilitate application of arrival rate qualifications to missed throughput server level goals

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant