内核对象初始化链表组织方式是什么

发布时间:2021-10-13 15:55:19 作者:iii
来源:亿速云 阅读:137

这篇文章主要介绍“内核对象初始化链表组织方式是什么”,在日常操作中,相信很多人在内核对象初始化链表组织方式是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”内核对象初始化链表组织方式是什么”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

背景

链表介绍

/**
 * Double List structure
 */
struct rt_list_node
{
    struct rt_list_node *next;                          /**< point to next node. */
    struct rt_list_node *prev;                          /**< point to prev node. */
};
typedef struct rt_list_node rt_list_t;                  /**< Type for lists. */

双向链表API

/* 来自:object.c :rt_object_init */
        /* insert object into information object list */
        rt_list_insert_after(&(information->object_list), &(object->list));
不是:【容器head】 --- [obj1] --- [obj2] --- [obj2] 
而是:【容器head】 --- [obj3] --- [obj2] --- [obj1]

查看内核对象

msh />list_thread
thread   pri  status      sp     stack size max used left tick  error
-------- ---  ------- ---------- ----------  ------  ---------- ---
persim    16  suspend 0x000001ec 0x0000c000    08%   0x00000003 000
sens      28  suspend 0x000000d8 0x00001000    13%   0x00000019 000
hws       28  suspend 0x000000d8 0x00000800    10%   0x00000032 000
dcm_tpo   10  suspend 0x00000090 0x00000800    14%   0x00000004 000
dcm_tpo   10  suspend 0x00000090 0x00000800    14%   0x00000002 000
dcm_tpo   10  suspend 0x00000090 0x00000800    15%   0x00000004 000
tshell    20  running 0x000001fc 0x00001000    26%   0x0000000a 000
touch     16  suspend 0x00000098 0x00000800    18%   0x00000013 000
usbd       8  suspend 0x000000ac 0x00001000    04%   0x00000014 000
at_clnt    9  suspend 0x000000c0 0x00000600    12%   0x00000002 000
ulog_asy  30  suspend 0x00000084 0x00000c00    09%   0x00000006 000
mmcsd_de  22  suspend 0x000000a0 0x00000400    48%   0x00000014 000
alarmsvc  10  suspend 0x000000a8 0x00000800    27%   0x00000003 000
rils      12  suspend 0x000000b0 0x00000800    08%   0x0000001e 000
tidle0    31  ready   0x00000058 0x00000800    04%   0x0000001d 000
timer      4  suspend 0x00000074 0x00000800    08%   0x00000009 000
main      10  suspend 0x00000120 0x00000800    41%   0x00000012 000  /* 最先创建的线程,最后打印 */

内核对象初始化链表组织方式是什么

到此,关于“内核对象初始化链表组织方式是什么”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

推荐阅读:
  1. JavaScript中链表是什么
  2. 六种组织CSS的方式

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

api

上一篇:怎样实现springboot向elk写日志

下一篇:如何解析SpringBoot整合SpringCache及Redis过程

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》