基于Barrelfish的时间触发实时调度方法技术

技术编号:30085476 阅读:34 留言:0更新日期:2021-09-18 08:44
本专利提出了一种新的基于Barrelfish时间触发实时调度方法,将Barrelfish进行实时化改造并与时间触发实时通信系统相结合,属于面向实时分布式系统的网络通信

【技术实现步骤摘要】
基于Barrelfish的时间触发实时调度方法


[0001]提出了一种基于Barrelfish的时间触发实时调度方法,将Barrelfish进行实时化改 造并与时间触发实时通信系统相结合,属于面向实时分布式系统的网络通信
(H04W)
领域。

技术介绍

[0002]信息物理融合系统(Cyber Physical System,CPS)。与传统实时系统不同的是,CPS 系统对计算能力,计算实时性和通信实时性都具有比较高的要求,CPS系统广泛用于飞行 器、智能工业、汽车电子等安全关键领域。目前CPS系统的发展主要有两个趋势:一是, 分布式节点数量和种类增多。如在智能工厂中,通过增加传感器的数量和种类,更好的获取 当前工厂的运行状态,从而进行更智能的反馈控制。二是,单个节点内的处理器核心数目和 种类的增多。如在自动驾驶领域,需要计算能力更强的处理器和专用的加速芯片来支撑AI 任务的运行。目前CPS系统上运行的实时操作系统并不能完全满足CPS系统的发展趋势, 特别是第二个发展趋势。
[0003]在多核、异构硬件架构的支持方面,苏黎世理工大学提出的基于多内核(MultiKernel) 架构的新型操作系统Barrelfish,因为其在每一个处理器核心上都有一个操作系统内核, 内核之间并不共享数据,可以更好地支持未来众核、异构的硬件架构。但Barrelfish是一 个面向高性能通用领域的操作系统,并不具有实时性。
[0004]在分布式实时通信的支持方面,Kopetz等人针对分布式实时系统提出了时间触发架构 (Time

Triggered Architecture,TTA),时间触发架构包含了经过工业界验证的时间触发 实时通信子系统。现有的时间触发实时通信系统主要包括两类:一种是基于时间触发总线协 议TTP(Time

Triggered Protocol)的总线型网络,另外一种是时间触发以太网TTE[14] (Time

Triggered Ethernet),可以根据实际需求选用。
[0005]与传统的通用操作系统不同,实时操作系统更加关注的是应用执行在时间上的确定性和 整个系统在组件发生错误时的容错性能,而且在实时系统领域,越来越多的系统呈现出分布 式的趋势,诸如综合化航空电子系统IMA和信息物理融合系统CPS,实时系统的分布式趋势 对传统实时任务调度和实时通信提出了新的要求。然而现有的实时系统中,大多数实时操作 系统对于多核处理器的支持还不够完善,而对多核处理器支持完善的操作系统绝大多数面向 通用领域,实时性较差。Barrelfish操作系统作为面向异构多核架构的操作系统,对异构 多核处理器具有良好的支持,适合改造为实时操作系统。针对未来可能出现的多核节点分布 式实时系统,将Barrelfish进行实时化改造并与时间触发实时通信系统相结合是解决CPS 系统发展所面临问题的一种可行的解决方案。

技术实现思路

[0006]本权利的目的是针对多内核操作系统的实时化改造和时间触发实时通信,基于 Barrelfish提出了一种新的时间触发实时调度方法,来实现一个基于时间触发的实时系统 以解决CPS发展过程中所面对的实时性差等问题。
[0007]本权利提出了一种新的时间触发实时调度方法。它在已有任务模型的基础上,通过添加 通信亲和性参数来描述任务对消息发送和接收的偏向程度,从而在此基础上提出了一种新的 任务与通信分离式调度模型,基于此调度模型实现了对任务与通信依赖的拆分,使得任务与 通信可以并行的进行离线调度,在调度解空间损失尽可能小的情况下,使得任务与消息可以 独立的求解,以降低大规模系统调度问题求解的计算时间,以提升系统的实时性。
[0008]本专利技术包括下列步骤:
[0009]1.一种基于Barrelfish时间触发实时调度方法,其特征在于,所述方法运行于采用TTP/C 时间触发式通信协议的分布式实时系统;所述分布式实时系统包括多个节点;所述分布 式实时系统的节点包括端节点计算机和时间触发以太网交换节点,实时任务在端节点计 算机上执行,并通过时间触发以太网传递和接收消息;
[0010]其中实时任务用四参数模型来表示,其中τi代表第i个实时 任务,φ表示该实时任务在每个周期内被释放的时刻相对于周期开始时刻的偏移,C表 示该实时任务在最坏的情况下需要运行的时间,D表示该实时任务相对于任务释放时刻 的截止期限,T表示该实时任务两次被释放的时间间隔;
[0011]其中时间触发以太网是一个二层的交换网络,网络拓扑可以表示成一个有向图其中时间触发以太网是一个二层的交换网络,网络拓扑可以表示成一个有向图其中是节点的集合,包括端节点和交换节点,表示网络中边的集合,通常时间触 发以太网采用双向的全双工的物理链路,数学表示如下:
[0012][0013]其中[v
a
,v
b
]表示节点v
a
和节点v
b
之间的一条有向逻辑链路,一条物理链路(Link)[v
a
,v
b
] 的数学表示如下:
[0014]<[v
a
,v
b
].s,[v
a
,v
b
].d,[v
a
,v
b
].mt>
[0015]其中参数s表示传输速率;参数d表示链路延迟,参数延迟主要由传播和处理延迟构成;参 数mt表示时间触发以太网的宏拍粒度;
[0016]一对通信节点的通信路径为虚链路,端节点v
a
通过交换节点与端节点v
b
建立通信连接,那 么端节点v
a
与端节点v
b
之间的虚链路vl[v
a
,v
b
]表示如下:
[0017]vl[v
a
,v
b
]=[[v
a
,v1],[v1,v2],[v1,v2],

,[v
n
‑1,v
n
],[v
n
,v
b
]][0018]消息在虚链路上传输,在传输过程中消息的实例和进行通信调度的基本单位为帧,虚链路 vl上传输的消息mi在第j条物理链路[v
a
,v
b
]上的帧实例记为虚链路vl上所有的帧 集合记为整个系统内所有的帧集合记为F,一个帧的表示如下: 其中参数T为发送周期,φ为发送偏移,L为发送占用时 长;
[0019]所述方法包括以下步骤:
[0020]步骤1、在实时任务中添加通信亲和性参数δ:
[0021]引入通信亲和性参数δ在所述分布式实时系统中描述实时任务对消息发送和接收 的偏向程度,
[0022]依赖于时间触发以太网通信的实时任务包括Pro本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于Barrelfish时间触发实时调度方法,其特征在于,所述方法运行于采用TTP/C时间触发式通信协议的分布式实时系统;所述分布式实时系统包括多个节点;所述分布式实时系统的节点包括端节点计算机和时间触发以太网交换节点,实时任务在端节点计算机上执行,并通过时间触发以太网传递和接收消息;其中实时任务用四参数模型束表示,其中τi代表第i个实时任务,φ表示该实时任务在每个周期内被释放的时刻相对于周期开始时刻的偏移,C表示该实时任务在最坏的情况下需要运行的时间,D表示该实时任务相对于任务释放时刻的截止期限,T表示该实时任务两次被释放的时间间隔;其中时间触发以太网是一个二层的交换网络,网络拓扑可以表示成一个有向图其中时间触发以太网是一个二层的交换网络,网络拓扑可以表示成一个有向图其中是节点的集合,包括端节点和交换节点,表示网络中边的集合,通常时间触发以太网采用双向的全双工的物理链路,数学表示如下:其中[v
a
,v
b
]表示节点v
a
和节点v
b
之间的一条有向逻辑链路,一条物理链路(Link)[v
a
,v
b
]的数学表示如下:<[v
a
,v
b
].s,[v
a
,v
b
].d,[v
a
,v
b
].mt>其中参数s表示传输速率;参数d表示链路延迟,参数延迟主要由传播和处理延迟构成;参数mt表示时间触发以太网的宏拍粒度;一对通信节点的通信路径为虚链路,端节点v
a
通过交换节点与端节点v
b
建立通信连接,那么端节点v
a
与端节点v
b
之间的虚链路vl[v
a
,v
b
]表示如下:vl[v
a
,v
b
]=[[v
a
,v1],[v1,v2],[v1,v2],

,[v
n
‑1,v
n
],[v
n
,v
b
]]消息在虚链路上传输,在传输过程中消息的实例和进行通信调度的基本单位为帧,虚链路vl上传输的消息mi在第j条物理链路[v
a
,v
b
]上的帧实例记为虚链路vl上所有的帧集合记为整个系统内所有的帧集合记为F,一个帧的表示如下:其中参数T为发送周期,φ为发送偏移,L为发送占用时长;所述方法包括以下步骤:步骤1、在实时任务中添加通信亲和性参数δ:引入通信亲和性参数δ在所述分布式实时系统中描述实时任务对消息发送和接收的偏向程度,依赖于时间触发以太网通信的实时任务包括Producer类型,Shaper类型和Consumer类型的任务,Free类型为与消息无关的任务,则通信依赖的任务模型描述为:其中:

通信依赖任务τi不支持并行以及多关键性任务;

任务的通信亲和力参数δ是一个[0,1]之间的数,描述任务对消息发送和接收的偏向程度;

仅同周期之间的任务存在优先序约束;

不同周期的任务之间是独立的;

Shaper类型任务任务一个周期内只能发送或者接受一个消息或者接收并发送一个消息;Free类型的任务不发送或者接受任何消息;

任务不能被跨核迁移;被分配完成后的任务只能在指定核上运行;步骤2、拆分任务模型与通信模型的依赖进行分离调度:
对于由描述的Producer类型,Shaper类型和Consumer类型的任务,对于Producer类型或Shaper类型的发送消息的任务与Shaper类型或者Consumer类型的接收消息的任务若任务与之间存在通信关系,则设置发送消息任务执行完毕后,其发送的消息m
i
才可以被发送到网络中,并且消息m
i
到接收节点之前,接收消息的任务不可执行;步骤3、统一三种通信依赖任务的约束表示:在所有节点任务可以调度的情况下通过调整参数和参数τ
i
·
D使得通信调度的解空间尽量变大以满足Free类型任务,Producer类型任务,Shaper类型任务和Consumer类型任务的需求,具体如下;Free类型若Free任务集Γ
free
中任务τ
i
与任务τ
j
具有优先序依赖,仅设置约束τ
i
·
D<τ
j
·
D.且

Producer类型,设Producer类型任务τ
i
对应的Consumer类型任务为则使得消息的调度余量尽量大的形式化目标为:其中d
i,c
表示任务τi以及任务之间的预期网络传输延迟;

Consumer类型,设Consumer类型任务τ
i
的生产者任务为则消息的调度余量尽量大的形式化目标为:其中d
p,i
表示任务τ
i
以及任务之间的预期延迟;

Shaper类型,Shaper类型任务有两个优化目标:和将所述两个优化目标转化为一个可解的优化目标:针对当目标取得最优值时该目标可能会导...

【专利技术属性】
技术研发人员:童超陈逊杨婷婷
申请(专利权)人:北京航空航天大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1