一、数据结构介绍
双向链表: linux-5.10.165/include/linux/list.h
红黑树: linux-5.10.165/include/linux/rbtree.h
哈希表: linux-5.10.165/include/linux/hashtable.h
内核无锁队列: linux-5.10.165/include/linux/kfifo.h
二、内核使用到的地方
双向链表的使用随处可见,可以在内核源码中 grep -rn struct\ list_head ./ 进行查看;
红黑树主要用在内核虚拟内存管理中;
哈希表用于通过进程pid获取 task_struct ,挂载的文件系统识别等;
内核无锁队列在内核驱动中使用的较多,提供了一种便捷的无锁的生产者/消费者消息机制;