提交 628cdcbe 编写于 作者: 星e雨's avatar 星e雨

IssueNo:#I3IK07

Description:liteos_m scheduling optimization and low power design.
Sig:kernel
Feature or Bugfix:Feature
Binary Source:No

Change-Id: I56bb190c73c8d7497ddbf2ad49ad522143008117
上级 cd30e629
......@@ -445,6 +445,7 @@ VOID OsSchedStart(VOID)
g_losTask.newTask = newTask;
g_losTask.runTask = g_losTask.newTask;
g_taskScheduled = 1;
newTask->startTime = OsGetCurrSchedTimeCycle();
OsSchedTaskDeQueue(newTask);
......@@ -453,7 +454,6 @@ VOID OsSchedStart(VOID)
OsSchedSetNextExpireTime(newTask->startTime, newTask->taskID, newTask->startTime + newTask->timeSlice);
PRINTK("Entering scheduler\n");
g_taskScheduled = 1;
}
BOOL OsSchedTaskSwitch(VOID)
......@@ -501,6 +501,8 @@ VOID LOS_SchedTickHandler(VOID)
UINT64 currTime;
BOOL needSched = FALSE;
LOS_ASSERT(g_taskScheduled);
UINT32 intSave = LOS_IntLock();
if (g_schedResponseID == OS_INVALID) {
......@@ -512,7 +514,7 @@ VOID LOS_SchedTickHandler(VOID)
}
g_schedResponseTime = OS_SCHED_MAX_RESPONSE_TIME;
if (g_taskScheduled && needSched && LOS_CHECK_SCHEDULE) {
if (needSched && LOS_CHECK_SCHEDULE) {
HalTaskSchedule();
} else {
currTime = OsGetCurrSchedTimeCycle();
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册