是否可以在一个模块中定义单个tasklet,并且" export"它供别人使用?我想知道这在理论上是否可行,同步和有序访问tasklet怎么样?或者这样的想法是愚蠢的?
感谢。
答案 0 :(得分:1)
不确定。没理由你不能这样做。我不明白为什么这样做是个好主意,但没有什么能阻止你。 tasklet框架提供了一些保证,其中之一是tasklet不能一次在多个CPU上运行。所以没有真正的同步问题。
但是,对于tasklet也没有“有序访问”,因为你可以为它排队工作。如果在tasklet已经运行时调用tasklet_schedule,则将再次执行tasklet,但其执行可能会延迟到ksoftirqd线程。
上有关tasklet的LDD3部分