找回密码
 注册
关于网站域名变更的通知
查看: 260|回复: 1
打印 上一主题 下一主题

Linux——内核链表list.h文件剖析(上)

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-8-7 14:22 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
内核链表list.h文件剖析

$ `( v1 M- I5 k$ J% e

( q6 Y, ?, }( A* ]0 s1 M一、内核链表的结构【双向循环链表】
5 s" j# w4 ~: P  u  p9 o0 {& @7 \/ {4 Q6 P' c& v

( I7 E3 v8 f$ d, g7 b/ k; W! F    内核链表的好主要体现为两点,1是可扩展性,2是封装。可以将内核链表复用到用户态编程中,以后在用户态下编程就不需要写一些关于链表的代码了,直接将内核中list.h中的代码拷贝过来用。
8 t& d  q- E. E9 ^% ^$ |. ~
* i% F  w6 ?% F0 g! q
% G0 u; w$ T' T! X
  • struct list_head
  • {
  •   struct list_head *next, *prev;
  • }; // 包含了两个指向list_head结构体的指针next,prev[后驱和前驱]0 L" x( ]8 ?0 }, ]% c0 D9 f
+ X4 F' }& r8 C- Q6 e* g
- N+ d- x7 f+ Y0 A( R" k( P

% w6 v$ ^- o7 [& @. t9 @# {

, ~; m' M' f2 p- p3 t1 c/ ^二、内核链表常用接口
8 r  D$ N8 `, Y/ l3 v
9 U$ ]$ K9 A& x5 @$ V
! T1 X5 t- F' z. z. k3 i# S' V, _
1、INIT_LIST_HEAD:创建链表
! V, Q. |" x( [, p$ T. B5 \  D9 u& T/ f+ ]& A+ ]

4 v# A8 ^' e0 ]( d  J; l
游客,如果您要查看本帖隐藏内容请回复

$ U1 }1 k( k5 p( J$ z# }
$ }) Z# ]7 X$ g7 h8 R" Q% L

6 q" D# r- B' a% @% P0 m2 {$ R) z. W5 _
  N" X  `( U0 ]! P

  ^+ S9 ~" j; N1 {) i
7 ?' q1 q2 ~( l  K) I5 R& l
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-25 01:03 , Processed in 0.171875 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表