系统相关
首页 > 系统相关> > 如何获得Linux设备驱动程序的免费次要号码?

如何获得Linux设备驱动程序的免费次要号码?

作者:互联网

我的Linux环境中有多个进程,这些进程必须使用相同的设备驱动程序来访问许多相似的设备.我的问题是,如果一个进程实例化一个设备(通过实例化,我的意思是mknod)文件,并且为两个设备使用一个较小的数字(例如0和1).那么,其他进程在做同一件事时又如何知道要使用哪个次要号码呢?

简而言之,在应用程序空间中是否可以找到使用同一驱动程序的设备文件数量?

解决方法:

假设您引用的是正在创建的驱动程序,或者至少具有源代码,请尝试以数字顺序(为简单起见)使用从零开始的次要数字.让驱动程序跟踪实例化了多少个次设备/设备,并通过sysfs中的条目公开该计数.当您实例化一个新设备时,请将该变量的当前值用作新设备的次设备号,然后将该变量递增(在驱动程序内部).

标签:device-driver,linux
来源: https://codeday.me/bug/20191106/1999305.html