-
- 译自:《udev – A Userspace Implementation of devfs》
- 原作:Greg Kroah-Hartman
- 注意:原文写于2003年,文中udev实现的一些术语现今可能不复存在
- 刘建文略译
Abstract
自2.5版内核起,用户空间的进程可以通过sysfs文件系统访问按层次组织的所有系统的外部设备(包括物理设备和虚拟设备)的元信息。另外,“/sbin/hotplug” 会在系统设备热插拔时向用户空间发出提示。具备了这两项功能后,在用户空间内动态管理设备文件(/dev目录)成为现实,一直需求的更灵活的设备名分配策略成为现实。
本报告文分析udev,一支代替devfs——只是实现动态管理/dev目录条目的方案——的用户空间程序,解决由devfs不能单独解决的一些问题:
- 第一,无论设备何时何处插入都使用同一个设备名;
- 第二,发现并用户空间提示系统设备发生变动;
- 第三,灵活的设备命名方案;
- 第四,允许内核使用动态的主设备号和次设备号;
- 第五,将命名策略移出内核空间
本文将解释为什么在用户空间实现的udev会优于在内核实现的devfs,并且详述在实现udev上的一些设计考虑。另外,这里也讲解udve的工作原理和怎样给udev制作插件(如命名方案naming scheme),还有一些udev使用上需要考虑的事情。 Continue reading →