虚拟设备的驱动程序是如何被加载的?

sshenmeshishenme 2015-06-14 08:47:05
根据windos设备驱动详解和我自己的理解,

物理设备插上总线以后,总线识别出改设备的VID和PID并且在注册表搜索已经安装的inf文件,如果某个文件中的VID以及PID和设备的相符合,则加载这个inf相关联的驱动程序,并且将总线驱动创建的PDO传入其AddDevice

而虚拟设备并不是实际存在的,没有插上计算机以及被总线识别这个说法,那么在AddDevice函数中传入的PDO是什么创建的呢?

书上的例子是编写的一个虚拟的即插即用设备驱动程序,用EzDriverInstaller软件加载这个驱动的inf,我想知道这个驱动的加载历程


...全文
237 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
虚拟设备虽然不是真实存在,但是可以 模拟 / 仿真 物理设备 举个例子: 最近在研究虚拟磁盘,比如要模拟物理设备的 PnP 请求,可以发 IOCTL_MOUNTMGR_VOLUME_ARRIVAL_NOTIFICATION 到挂载管理器来 模拟 / 仿真 PnP 这个过程。 虚拟磁盘的读写 IRP 也不一定要转发的下层设备,也可以在虚拟磁盘这一层用文件来模拟下层的存储介质。
sshenmeshishenme 2015-06-15
  • 打赏
  • 举报
回复

70,020

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧