gpt4 book ai didi

linux - 我可以在 INSMOD 或 MODPROBE 期间将参数传递给驱动程序吗?

转载 作者:太空宇宙 更新时间:2023-11-04 09:38:54 26 4
gpt4 key购买 nike

我目前写了一个 USB 设备驱动程序,我在其中从 probe() 函数创建了一个 Kthread。通用的 kthread_create() 函数在最不忙的 CPU 上创建线程。

我想做的是在特定 CPU 上创建 kthread (kthread_create_on_cpu()),这样我就可以将单独的核心分配给处理输出设备的设备线程。
如何在加载模块/驱动程序时将 CPU 编号传递给模块。

要么我可以使用一个全局变量,该变量将在系统启动时设置一次并由驱动程序读取,或者在加载时将 CPU 编号传递给模块。

请建议使用和实现哪种方法更可行。

感谢和问候,
Mitesh G

最佳答案

您可以传递命令行参数。为此,您必须在模块中添加 module_parammodule_param_array

当然可以根据您的要求在您的模块中添加这些行

int myintdata = 100;
module_param(myintdata, int, 0);

char mychardata = 'A';
module_param(mychardata, char, 0);

int myarray[2];
module_param_array(myarray, int, NULL, 0);

静态字符 *名称;
module_param(name, charp, 0);
//这里你必须提到 charp 作为数据类型

module_param_string(name, string, len, perm); for String

插入模块时

insmod module_name.ko myintdata=5 mychardata = 'X' name= "xyz"myarray =99,100 `

关于linux - 我可以在 INSMOD 或 MODPROBE 期间将参数传递给驱动程序吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23425998/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com