udev-FAQ 中文翻译

双模音频解码器设计:USB+蓝牙LDAC平衡输出方案 音频解码器是数字音频系统中实现数模转换的核心组件,其性能直接决定音质保真度与系统延迟。基于高集成SoC的解码方案通过统一时钟域与片内DSP处理,有效抑制Jitter并简化硬件拓扑;结合全平衡模拟输出架构,可显著提升共模抑制比(CMRR)与信噪比(SNR)。该技术路径广泛应用于便携式Hi-Res音频设备、USB-C小尾巴DAC及蓝牙高解析耳机放大器等场景。本文围绕ES9038Q2M双模SoC展开,详解其在LDAC协议支持、UAC2.0兼容性及平衡电流型DAC输出方面的工程实现,为高性能、可量产音频硬件开发提供 阅读详情

udev-FAQ 中文翻译

                                      

原文出处 http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev-FAQ
中文翻译 王旭 http://gnawux.blogchina.com
本文档遵循 GPL 2 及以后版本发布,修改、发布请保持许可证不变

问: udev是什么? 它的目的何在?
答: 看看那篇 OLS 2003 上的有关 udev 的文章吧,可以在 docs 目录里找到,也能在这
里找到:

OLS 2003 上还有一个关于 udev 的幻灯片,可以在这里找到:


问: udev 和 devfs 是什么关系
答: udev 完全在用户态 (userspace) 工作,利用设备加入或移除时内核所发送的
hotplug 事件 (event) 来工作。关于设备的详细信息是由内核输出 (export) 到位
于 /sys 的 sysfs 文件系统的。所有的设备命名策略、权限控制和事件处理都是在
用户态下完成的。与此相反,devfs 是作为内核的一部分工作的。

问: 如果 udev 不能完成所有 devfs 的工作的话,为什么把 devfs 标记为
OBSOLETE/removed?
答: 引用 Al Viro (Linux VFS 内核维护者):
- devfs 所做的工作被确信可以在用户态来完成。
- devfs 被加入内核之时,大家寄望它的质量可以迎头赶上。
- devfs 被发现了一些可修复和无法修复的 bug。
- 对于可修复的 bug,几个月前就已经被修复了,其维护者认为一切良好。
- 对于后者,同样是相当常一段时间以来没有改观了。
- devfs 的维护者和作者对它感到失望并且已经停止了对代码的维护工作。

问: 但是当一个并不存在的 /dev 节点被打开的时候,udev 并不能如 devfs 一样自动加
载驱动程序。
答: 的确如此,但 Linux 的设计是在设备被发现的时候加载模块,而不是当它被访问的时
候。

问: 不过等等,我确实希望 udev 可以在不存在的节点被打开的时候自动加载驱动。这是
我使用 devfs 的唯一原因了。给 udev 增加这个功能吧。
答: 不,udev 是用来管理 /dev 的,不是用来加载内核驱动的。

问: 嗨,求你们了。这不难做到的。
答: 这么个功能对于一个配置正确的计算机是多余的。系统中所有的设备都应该产生
hotplug 事件、加载恰当的驱动,而 udev 将会注意到这点并且为它创建对应的
设备节点。如果你不想让所有的设备驱动停留在内存之中,应该使用其它东西来
管理你的模块 (如脚本, modules.conf, 等等) 这不是 udev 的工作。

问: 但是我真的喜欢那个功能,还是加上吧
答: devfs 用的方法导致了大量无用的 modprobe 尝试,以此程序探测设备是否存在。
每个试探性探测都新建一个运行 modprobe 的进程,而几乎所有这些都是无用的。

问: 我喜欢 devfs 的设备文件命名方式,udev 可以这样命名么?
答: 可以,udev 可以使用 /dev 的命名策略来创建节点。通过一个配置文件,可以把内
核缺省的名字映射到 devfs 的名字。可以看看 udev 中带的 udev.rules.devfs 文
件。
注意: devfs 的命名方式是不被建议并且不被官方支持的,因为它所用的简单枚举设
备的方式在设备可能被随时加入或删除的情况下确实是一个比较笨的方法。这些编号
代给你的将只有麻烦,而并不能用来确定设备。看看那个永久性磁盘 (persistent
disk) 的规则就知道如何在用户态下正确的做这件事,而不是傻傻地列出设备。

问: udev 可以为哪些设备创建节点?
答: 所有在 sysfs 中显示的设备都可以由 udev 来创建节点。如果内核中增加了其它设
备的支持,udev 也就自动地可以为它们工作了。现在所有的块设备都在被支持之列,
大部分的主字符设备也是被支持的。内核开发者们正致力于让所有的字符设备都被支
持。可以到 linux-kernel 邮件列表上寻找补丁或是查看补丁的状态。

问: udev 是否会去掉匿名设备数量的限制?
答: udev 完全工作于用户态。如果内核支持了更多的匿名设备,udev 就会支持。

问: udev 是否会支持符号链接?
答: udev 现在就支持符号链接,每个设备节点拥有多个符号链接也是被支持的。

问: udev 如何处理 /dev 文件系统?
答: 建议使用一个每次启动系统的时候重新创建的 tmpfs 作为 /dev 的文件系统。不过
实际上 udev 并不关心那种文件系统在被使用。

问: 在 init 运行之前,udev 如何处理设备?
答: udev 可以被放入 initramfs 之中,并在每个设备被发现的时候运行。也可以让
udev 工作在一个真的根分区被加载之后根据 /sys 的内容创建的初始 /dev 目录
之中。

问: 我是否可以利用 udev 在一个 USB 设备被加载的时候自动加载上这个设备?
答: 技术上讲是可以的,但是 udev 不是用于这个工作的。所有的主流发布版 (distro)
都包含了 HAL (http://freedesktop.org/wiki/Software_2fhal) 用于这个工作,它
也是专门用于监视设备变更的,并且集成进入了桌面软件。

换个角度说,这可以简单的通过 fstab 来实现:
/dev/disk/by-label/PENDRIVE /media/PENDRIVE vfat user,noauto 0 0

这样,用户可以用如下命令来访问设备:
$mount /media/PENDRIVE
同样不需要管理员权限,但却拥有了设备的全部访问权限。使用永久性磁盘链接
(label, uuid) 将可以指定同一设备,无论其实际上的内核名字是什么。

问: 有什么我需要注意的安全问题么?
答: 当使用动态设备编号的时候,一个给定的主/从设备号可能在不同时间对应不同的设
备,如果一个用户拥有对这个节点的访问权限,并且可以创建一个到这个节点的硬链
接,他就可以如此得到一个这个设备节点的拷贝。当设备被移除之后,udev 删除了
设备节点,但硬链接依然存在。如果这个设备节点之后被重新使用不同的访问权限被
创建的时候,其硬链接仍然可以使用先前的访问权限来访问。
(同样的问题也存在在使用 PAM 改变访问权限的 login 上。)

简单的解决方案就是通过把 /dev 放在 tmpfs 这样的单独的文件系统之上来防止建
立硬链接。

问: 我有其他的关于 udev 的问题,我应该问谁?
答: linux-hotplug-devel 正是问这些的地方。邮件列表的地址是
linux-hotplug-devel@lists.sourceforge.net
加入邮件列表的相关信息可以在如下地址找到

邮件列表的上的既往讨论记录可以在下面地址找到

【StarRocks】-- DATETIME 与 TIMESTAMP 区别详解 本文详细解析了StarRocks中DATETIME/DATETIMEV2与TIMESTAMP的区别及使用场景。DATETIME系列存储人类可读时间,不携带时区;TIMESTAMP实际指Unix时间戳,建议用BIGINT存储。关键差异包括:精度选择(DATETIMEV2支持微秒级)、时区处理(仅函数计算时影响)、存储方式等。针对不同场景提供选型建议:单时区展示用DATETIMEV2,跨时区计算用BIGINT存储Epoch。特别强调与MySQL迁移时的注意事项,并给出常见问题解决方案和最佳实践清单,包括统一入口 阅读详情

相关推荐

计算机网络实验六 RIP 配置实验

Man! What can I say?

AClerk的博客 1593

什么是udev

什么是udev 分类: Redhat linux学习2006-04-10 16:01 3979人阅读 评论(0) 收藏 举报 阅读总结:swain@126.com     20060410 linux传统上使用静态设备创建方法,因此大量设备节点在 /dev 下创建(有时上千个),而不管相应的硬件设备是否真正存在。通常这由一个MAKEDEV脚本,组成它由许多calls of m

pointfish的专栏 709

下水管道损坏检测数据集总结

下水管道损坏检测数据集包含 6708 张图像,为下水管道损坏情况的检测提供了丰富的数据基础。该数据集提供了 YOLO 和 VOC 两种常见的标注方式,方便不同需求的使用者进行模型训练和研究。

crz1336768325的博客 870

devfs、sysfs、udev介绍

devfs、sysfs、udev介绍 一、devfs Linux下有专门的文件系统用来对设备进行管理,devfs和sysfs就是其中两种。在2.6内核以前一直使用的是devfs,devfs挂载于/dev目录下,提供了一种类似于文件的方法来管理位于/dev目录下的所有设备,我们知道/dev目录下的每一个文件都对应的是一个设备,至于当前该设备存在与否先且不论,而且这些特殊文件是位于根文件系统上的,

gmq_syy的博客 513

【技术解析】Point-NeRF:如何通过点云优化加速神经辐射场渲染

本文深入解析了Point-NeRF技术,它通过引入3D点云作为几何先验,有效解决了传统神经辐射场渲染速度慢的痛点。该方法利用神经点云构建局部辐射场,结合点剪枝与生长策略进行动态优化,在保证高渲染质量的同时,实现了高达30倍的训练加速,为高效3D场景重建提供了新范式。

weixin_29159127的博客 268

Codex驱动AEDT完成无线充电仿真——从双线圈建模到三维电磁场动画

本文介绍了一个利用Codex、PyAEDT和Ansys Electronics Desktop 2025 R2实现双线圈无线充电系统自动建模与仿真的案例。通过简化模型(平面线圈+铁氧体磁芯),完成了从参数化建模、电磁场求解到后处理的全流程自动化,获得了耦合系数(k=0.17)、三维电磁场分布及多周期动态可视化效果。研究发现:线圈间距对传输效率影响最大(10-30mm间距时效率从40.2%降至5.57%),横向偏移15mm会使效率下降35%,而磁芯厚度增加带来的效率提升有限(3→7mm仅提高1.67%)。该框

sjjsjjsjjsjjsjj的博客 447

linux下dev下没有disk目录,linux – / dev / disk / by-uuid不显示所有磁盘

我在安装XenServer时使用本地存储库,我正在尝试使用UUID删除错误的SR.当我通过-id查看磁盘时,输出是:[root@xenser111 lib]# ls -l /dev/disk/by-idtotal 0lrwxrwxrwx 1 root root 9 Jul 16 09:02 scsi-3600050e02e433200d7110000d6930000 -> ../../sd...

weixin_33099015的博客 1156

Truncated SVD for faster dection

Truncated SVD方法最先被提出在《Fast R-CNN》论文中,用于降低全连接层的运算量,提升模型的速度。在卷积神经网络的分类任务中,FC层的运算速度远远大于CONV层,而在Fast R-CNN的目标检测任务中,大多数的运算时间发生在FC 的运算中,是因为针对每张输入图片,只进行一次卷积操作,而要对生成的Region Proposal,大致两千个,进行全连接操作进行分类与Bounding...

weixin_35747666的博客 1535

Linux┊详解udev

如果你使用Linux比较长时间了,那你就知道,在对待设备文件这块,Linux改变了几次策略。在Linux早期,设备文件仅仅是是一些带有适当的属性集的普通文件,它由mknod命令创建,文件存放在/dev目录下。后来,采用了devfs, 一个基于内核的动态设备文件系统,他首次出现在2.3.46内核中。Mandrake,Gentoo等Linux分发版本采用了这种方式。devfs创建 的设备文件是动态的。...

weixin_33860528的博客 1064

准静态电磁场

叠加法 缺点:对于连续分布的电荷,叠加法的计算比较困难 虚位移法 概念 广义坐标:确实系统中导体形状、尺寸与位置的一组独立几何量。 广义力:企图改变某一广义坐标的力。 功:广义力乘上由它引起的广义坐标的改变量。 公式 ...

qq_35912930的博客 1860

高通量测序数据分析:RNA-seq

深度测序相关数据库与数据格式 SRA toolkit 一、NCBI 和EBI、DDBJ组成INSDC,数据内容相同所以找NCBI就行。 (一)NCBI常用数据库 GenBank:遗传序列数据库,收集了所有公开的DNA序列及其注释 GEO (Gene Expression Omnibus) :收集整理各种表达芯片数据,后来加入了甲基化、lncRNA、miRNA、CNV等其他芯片,还有高通量测序数据...

qq_41134363的博客 3万+

udev详解

原文出处 http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev-FAQ 中文翻译 王旭 http://gnawux.blogchina.com 本文档遵循 GPL 2 及以后版本发布,修改、发布请保持许可证不变 问: udev是什么? 它的目的何在? 答: 看看那篇 OLS 2003 上的有关 udev 的文章吧,可以在 doc

铁匠Smith先生的专栏 1741

手把手教你学simulink(90.1)--直流电动机实例:基于Simulink的基本模型的直流电动机(DC Motor)建模

直流电动机(DC Motor)因其结构简单、控制方便和良好的调速性能,广泛应用于各种工业自动化、机器人技术、家用电器以及航空航天等领域。为了更好地理解和应用直流电动机的工作原理及其控制系统,本项目旨在通过Simulink对直流电动机进行基本模型的建模与仿真。

MHD0815的博客 439

Linux中的devfs 与 udev

Linux中的devfs 与 udev udev-FAQ 中文翻译 中文翻译 王旭 http://gnawux.blogchina.com                                     原文出处 http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev-FAQ本文档遵循 GPL 2 及以后版

1421

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Linux设备模型(热插拔、mdev 与 firmware)

转自:http://blog.chinaunix.net/space.php?uid=20543672&do=blog&cuid=460882 热插拔有 2 个不同角度来看待热插拔: 从内核角度看,热插拔是在硬件、内核和内核驱动之间的交互。 从用户角度看,热插拔是内核和用户空间之间,通过调用用户空间程序(如hotplug、udev 和 mdev)的交互。 当需要通知用户内...

weixin_30853329的博客 138

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

linux 热插拔

热插拔 有 2 个不同角度来看待热插拔:    从内核角度看,热插拔是在硬件、内核和内核驱动之间的交互。    从用户角度看,热插拔是内核和用户空间之间,通过调用用户空间程序(如hotplug、udev 和 mdev)的交互。 当需要通知用户内核发生了某种热插拔事件时,内核才调用这个用户空间程序。 现在的计算机系统,要求 Linux 内核能够在硬件从系统中增删时,可靠稳定地运行。这就对设备驱动作者...

yingqiangli的专栏 1802

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

Linux设备驱动程序学习(15)-Linux设备模型(热插拔、mdev 与 firmware)

热插拔有 2 个不同角度来看待热插拔:   从内核角度看,热插拔是在硬件、内核和内核驱动之间的交互。   从用户角度看,热插拔是内核和用户空间之间,通过调用用户空间程序(如hotplug、udev 和 mdev)的交互。 当需要通知用户内核发生了某种热插拔事件时,内核才调用这个用

iotplan.com 物联网技术专栏 586

Linux设备驱动程序学习(15)-Linux设备模型(热插拔、mdev 与 firmware)

Linux设备驱动程序学习(15) -Linux设备模型(热插拔、mdev 与 firmware) 热插拔 有 2 个不同角度来看待热插拔:    从内核角度看,热插拔是在硬件、内核和内核驱动之间的交互。    从用户角度看,热插拔是内核和用户空间之间,通过调用用户空间程序(如hotplug、udev 和 mdev)的交互。 当需要通知用户内核发生了某种热插拔事件时,内核才调用这

tigerly的专栏 838

Linux设备驱动程序学习(15)

热插拔有 2 个不同角度来看待热插拔:   从内核角度看,热插拔是在硬件、内核和内核驱动之间的交互。   从用户角度看,热插拔是内核和用户空间之间,通过调用用户空间程序(如hotplug、udev 和 mdev)的交互。 当需要通知用户内核发生了某种热插拔事件时,内核才调用这个用户空间程序。现在的计算机系统,要求 Linux 内核能够在硬件从系统中增删时,可靠稳定地运行。这就对设备驱动作者增加了压

临时工 Temporary's Space 4910

LINUX热插拔

有 2 个不同角度来看待热插拔: 从内核角度看,热插拔是在硬件、内核和内核驱动之间的交互。 从用户角度看,热插拔是内核和用户空间之间,通过调用用户空间程序(如hotplug、udev 和 mdev)的交互。 当需要通知用户内核发生了某种热插拔事件时,内核才调用这个用户空间程序。 现在的计算机系统,要求 Linux 内核能够在硬件从系统中增删时,可靠稳定地运行。这就对设备驱动作者增...

xie0812的专栏 3497
上一篇: 什么是udev
下一篇: udev轻松上路
pointfish
博客等级 码龄17年 58粉丝 11原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值