【发布时间】:2017-09-03 17:36:52
【问题描述】:
我正在为 bcache Linux 模块编写一个补丁,并且很难在 Linux 核心中找到通用的 LIFO 实现。我在defines 和without 上都找到了几个FIFO 实现。然而,后进先出没有什么相似之处。
在哪里可以找到一个?最好 C 不是 asm,也不是基于定义,但任何都应该工作。
如果没有提供抽象的 LIFO,那么最容易实现 LIFO 的结构是什么(例如 Linux 内核中的通用堆栈实现)?
【问题讨论】:
-
一个数组加上一个索引可能太微不足道而无法概括?
-
"not based on defined" - 你将如何在 C 中实现通用数据结构?你想要带有函数指针的“虚拟方法”吗?我不会把这个开销放在内核中。
-
@wildplasser 我想这将是我的下一步行动。我无法摆脱我正在重新发明一辆自行车的感觉,LIFO 被广泛使用以至于它已经 to be in Linux 内核。