ar3*_*r31 5 c module thread-local linux-kernel
是否可以在Linux内核模块中创建线程本地数据?
我需要为调用我的模块的每个进程/线程存储一些数据.是否有一种使用线程本地数据的简单方法,或者我是否必须编写使用当前进程的pid作为键的哈希映射?
假设内核模块的接口是字符设备驱动程序,那么文件结构中就有一个 private_data 字段(类似于用户空间文件描述符)。
只需在打开文件操作时分配并指定一个指向您选择的结构的指针即可。
它不完全是线程或进程本地的,但在大多数情况下,一个文件描述符到进程的映射是正确的,并且它可能对您来说足够好了。