Android 系统中设备节点的创建

本文深入探讨了Linux系统中设备节点的创建过程,纠正了关于内核与设备节点创建的传统误区,详细解释了实际创建过程及关键角色,如udev与mdev的作用,并介绍了热插拔事件处理机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

       查了很多资料,有很多人错误地认为是kernel创建的/dev/yourdevice       

       在最近的kernel中这种说法是不对的, 其实是kernel仅负责在/sys/创建一大堆下目录和文件,

       而真正的设备节点是在用户空间创建的, 在android系统中,由init进程负责处理这种uevent事件,如果是"add" device事件, init会在/dev/下创建相应的节点。具体代码可查看 system/core/init/devices.c: handle_device_event->make_device。节点的用户,组,权限都可以在devperms中定制。

       对于linux系统,我想应该是udev实现的吧

       对于非android系统,应该是mdev

      其实到底谁来处理,关键看kernel发送uevent事件,应用层通过什么方式处理的,是侦听socket还是通过设置/proc/sys/kernel/hotplug命令文件

      转载自:kickxxx的专栏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值