update the content of kernel/task.md

This commit is contained in:
Yan_yan 2020-11-09 10:05:23 +08:00
parent d3cb4ae39a
commit 4fc9e0ce3e
1 changed files with 8 additions and 6 deletions

View File

@ -26,7 +26,7 @@
<img src="./imagesrc/task_status.png" width =100%/>
任务在创建完成后会进入就绪状态并被加入就绪队列等待内核调度。当任务被调度开始运行时,任务会进入运行状态。若任务在运行过程中被更高优先级的任务抢占,则被占的任务会回到就绪队列并再次进入就绪状态。当任务在运行过程中申请资源失败时,任务会被挂起并进入挂起状态,并在所申请资源能够被满足时回到就绪状态。当任务执行完成,即从入口函数返回时,会进入终止状态,并由内核回收其相关资源。
任务在创建完成后会进入就绪状态并被加入就绪队列等待内核调度。当任务被调度开始运行时,任务会进入运行状态。若任务在运行过程中被更高优先级的任务抢占,则被占的任务会回到就绪队列并再次进入就绪状态。当任务在运行过程中申请资源失败时,任务会被挂起并进入挂起状态,并在所申请资源能够被满足时回到就绪状态。当任务执行完成,即从入口函数返回时,会进入终止状态,并由内核回收其相关资源。
<span id="sched"></span>
### 任务调度
@ -51,9 +51,9 @@ struct task_descriptor
struct t_baseinfo t_baseinfo_x;
#ifdef XS_USING_SMP
#ifdef XS_USING_SMP
struct smp_info smp_info_x;
#endif
#endif
#if defined(XS_USING_EVENT)
xs_uint32 event_ctrl1:3;
@ -109,7 +109,7 @@ struct dync_sched_member结构的成员用于记录与调度相关的信息。st
```c
struct smp_info {
xs_uint8 combined_coreid;
xs_uint8 runing_coreid;
xs_uint8 running_coreid;
};
```
@ -377,6 +377,7 @@ xs_int32 xs_UserSemaphoreSetValue(xs_uint16 id, xs_uint16 val);
#### 互斥量结构定义
```c
struct xs_Mutex
{
xs_uint16 id;
@ -389,7 +390,7 @@ struct xs_Mutex
XS_DOUBLE_LINKLIST pend_list;
XS_DOUBLE_LINKLIST link;
};
```
| 成员 | 描述 |
| --- | --- |
| id | 互斥量ID用于唯一标识一个互斥量 |
@ -481,7 +482,8 @@ xs_int32 xs_UserEventCreate(xs_uint32 options);
| options | 事件集配置选项须在XS_EVENT_AND及XS_EVENT_OR中指定其一并可以按位或上XS_EVENT_AUTOCLEAN |
```c
void xs_UserEventDele##
void xs_UserEventDele(xs_uint16 id);
```
该函数用于删除一个已创建的事件集。
| 参数 | 描述 |