我知道我们可以使用udev配置脚本分配权限给设备驱动程序在根/组/用户模式下运行,但我不确定如何运行使用Android HAL中的驱动程序在特定用户模式下运行的程序?只有在/dev/ttyOx上执行chmod 777之后,我才能执行程序。
我在Android脚本中看到udev config中的蓝牙模块,如下所示
chmod 0660 /dev/ttyO1 chown system system /dev/ttyS0
我的问题是,如何将使用特定驱动程序的程序注册到特定的组或用户权限,如上述脚本中的蓝牙,并仅使该特定程序使用设备驱动程序?
发布于 2012-08-06 19:26:34
免责声明::我不是Android程序员。我只使用Linux内核。
但我仍然相信,驱动程序只能由特权用户(即超级用户/ root )加载到内核中。
/dev/ttyO1和/dev/ttyS0仅为设备文件。它将由用户空间应用程序打开。因此可以设置对这些设备文件的权限。
无法将特定的驱动程序分配给特定的组/用户。所有驱动程序都是LKM(可加载内核模块),即插入到内核中。
内核在特权模式下运行。用户没有直接与内核打交道。它受空间(用户空间/内核空间)的限制。
在脚本中,您可以检查当前用户并决定是否允许加载蓝牙驱动程序。
https://stackoverflow.com/questions/11813794
复制相似问题