【技术实现步骤摘要】
基于Barrelfish的时间触发实时调度方法
[0001]提出了一种基于Barrelfish的时间触发实时调度方法,将Barrelfish进行实时化改 造并与时间触发实时通信系统相结合,属于面向实时分布式系统的网络通信
(H04W)
领域。
技术介绍
[0002]信息物理融合系统(Cyber Physical System,CPS)。与传统实时系统不同的是,CPS 系统对计算能力,计算实时性和通信实时性都具有比较高的要求,CPS系统广泛用于飞行 器、智能工业、汽车电子等安全关键领域。目前CPS系统的发展主要有两个趋势:一是, 分布式节点数量和种类增多。如在智能工厂中,通过增加传感器的数量和种类,更好的获取 当前工厂的运行状态,从而进行更智能的反馈控制。二是,单个节点内的处理器核心数目和 种类的增多。如在自动驾驶领域,需要计算能力更强的处理器和专用的加速芯片来支撑AI 任务的运行。目前CPS系统上运行的实时操作系统并不能完全满足CPS系统的发展趋势, 特别是第二个发展趋势。
[0003]在多核、异构硬件架构的支持方面,苏黎世理工大学提出的基于多内核(MultiKernel) 架构的新型操作系统Barrelfish,因为其在每一个处理器核心上都有一个操作系统内核, 内核之间并不共享数据,可以更好地支持未来众核、异构的硬件架构。但Barrelfish是一 个面向高性能通用领域的操作系统,并不具有实时性。
[0004]在分布式实时通信的支持方面,Kopetz等人针对分布式实时系统提出了时间触 ...
【技术保护点】
【技术特征摘要】
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类型任务有两个优化目标:和将所述两个优化目标转化为一个可解的优化目标:针对当目标取得最优值时该目标可能会导...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。