1.2.2 驱动程序在内核中的位置 在 Linux 内核的浩瀚代码森林中,驱动程序从来不是游离于体系之外的“插件式”存在——它是一根深入骨髓的神经末梢,是内核与物理世界之间唯一被允许直接握手的接口。当我们谈论“驱动程序在内核中的位置”,绝非指某个文件路径或模块加载时的内存地址;而是追问:它如何被调度?如何被识别?如何与 VFS、PCI 子系统、电源管理框架、中断子系统乃至内存管理单元(MMU)发生精确咬合?它的生命周期由谁裁决?它的错误传播路径是否可控?它的并发访问边界在哪里?这些问题的答案,藏在 的初始化链表里,埋在 的调用栈深处,刻在 的遍历逻辑中,也悬于 函数返回值的一念之间。 我们不谈“驱动是运行在内核态的软件”,这如同说“心脏是跳动的器官”一样空洞。