update the content of kernel/task.md
This commit is contained in:
parent
d3cb4ae39a
commit
4fc9e0ce3e
|
@ -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);
|
||||
```
|
||||
该函数用于删除一个已创建的事件集。
|
||||
|
||||
| 参数 | 描述 |
|
||||
|
|
Loading…
Reference in New Issue