【方案描述】:
【背景】:
调度、线程、软件定时器、sortlink、percpu、异常、workqueue模块相互耦合,存在很多不属于本模块的实现,导致这几个模块间依赖混乱、且到处引用其它模块的内部成员。
【方案描述】:
解决上述依赖混乱的问题,为后续调度框架打基础,优化后依赖关系:
| ---> los_swtmr_pri.h --> workqueue
los_sortlink_pri.h: ---> los_sched_pri.h --> los_task_pri.h -->
作为基础算法 | ---> ipc
(现在为双向链表),
做到功能最小化,
便于后续其它算法替换
【调度框架大体方案描述】:
1.cpu run queue ----> 任务延时队列
|---- 调度队列
|---- EDF --->
| |---- 方法(Delay、Suspend、Resume、EntReadyQue、Exit等)
|
| |---- 调度队列
2.task ---> 调度策略----> SCHED_RR --->
| |---- 方法(Delay、Suspend、Resume、EntReadyQue、Exit等)
|
| |---- 调度队列
|----> SCHED_IDLE --->
|---- 方法(Delay、Suspend、Resume、EntReadyQue、Exit等)
feat: 优化调度结构
将软件定时器相关的东西抽离,使得workqueue只依赖软件定时器提供的方法
Close #I4RPRW:【调度实时性】【调度框架】【模块间解耦】
Signed-off-by: zhushengle zhushengle@huawei.com
Change-Id: Ia6db62468968405e1aaa8c569e130b45ec593118
-----来自 commit 5e583ec
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
feat: 调度模块架构优化
将内核内核的私有字段抽离,使其只依赖内核提供的方法
Close #I4RPRW:【调度实时性】【调度框架】【模块间解耦】
Signed-off-by: zhushengle zhushengle@huawei.com
Change-Id: Ie23621693ba2cafd48f360a3b832fe2ec823a685
-----来自 commit a69079c
feat: 调度相关模块间依赖优化
背景:
调度、线程、软件定时器、sortlink、percpu、异常、workqueue模块相互耦合,存在很多不属于本模块的实现,
导致这几个模块间依赖混乱、且到处引用其它模块的内部成员。
方案描述:
解决上述依赖混乱的问题,为后续调度框架打基础,优化后依赖关系:
| ---> los_swtmr_pri.h --> workqueue
los_sortlink_pri.h: ---> los_sched_pri.h --> los_task_pri.h -->
作为基础算法 | ---> ipc
(现在为双向链表),
做到功能最小化,
便于后续其它算法替换
调度框架大体方案描述:
1.cpu run queue ----> 任务延时队列
|---- 调度队列
|---- EDF --->
| |---- 方法(Delay、Suspend、Resume、EntReadyQue、Exit等)
|
| |---- 调度队列
2.task ---> 调度策略----> SCHED_RR --->
| |---- 方法(Delay、Suspend、Resume、EntReadyQue、Exit等)
|
| |---- 调度队列
|----> SCHED_IDLE --->
|---- 方法(Delay、Suspend、Resume、EntReadyQue、Exit等)
Close #I4RPRW:【调度实时性】【调度框架】【模块间解耦】
Signed-off-by: zhushengle zhushengle@huawei.com
Change-Id: Ia54dc1b8a4801a225a52e40555490c1dce0bd75e
-----来自 commit 0e3936c
登录 后才可以发表评论