看流星社区

 找回密码
 注册账号
查看: 2030|回复: 0

驱动是如何运行的

[复制链接]

该用户从未签到

发表于 2017-6-1 13:34:36 | 显示全部楼层 |阅读模式
<ul class="text" style="margin:0px; padding:0px; list-style:none; font-size:14px; word-wrap:break-word; color:rgb(63,62,60); font-family:'Hiragino Sans GB',微软雅黑,黑体,Arial,sans-serif">

已我所知
1.创建一个服务(通过注册表)
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\XXX
(ps:通过枚举这个表可以得到所有服务 还能知道他们的类型)
其中GROUP与Start决定了驱动加载的早晚
若Start相同 则根据在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GroupOrderList顺序驱动
GROUP的&#20540;就是HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GroupOrderList下的键名

启动Start
Start:
0==由核心装载器装载 1==由I/O子系统装载 2==自动启动 3==手工启动 4==禁止启动
Start &#20540;分0、1、2、3、4,数&#20540;越小就越早启动,SERVICE_BOOT_START(0)是内核刚刚初始化之后,此时加载的都是与系统核心有关的重要的驱动程序,例如磁盘驱动;SERVICE_SYSTEM_START(1)稍晚一些;
SERVICE_AUTO_START(2)是在登录界面出现的时候开始,如果登录较快,很可能驱动还没有加载就登录进去了;
SERVICE_DEMAND_START(3)是在需要的时候动态加载;SERVICE_DISABLED(4)是不加载,要加载之前必须把Start&#20540;改为小于4的&#20540;。

Type:如下 应用程序一般10(百度),1驱动模块

/*
“DisplayName”,字符串&#20540;,对应服务名称;
  “Descrīption”,字符串&#20540;,对应服务描述;
  “ImagePath”,字符串&#20540;,对应该服务程序所在的路径;
  “ObjectName”,字符串&#20540;,&#20540;为“LocalSystem”,表示本地登录;
  “ErrorControl”,DWORD&#20540;,&#20540;为“1”;
  “Start”,DWORD&#20540;,&#20540;为2表示自动运行,&#20540;为3表示手动运行,&#20540;为4表示禁止;
  “Type”,DWORD&#20540;,应用程序对应10,其他对应20。

类型如下:
#define SERVICE_KERNEL_DRIVER 0×00000001 //内核模块
#define SERVICE_FILE_SYSTEM_DRIVER 0×00000002 //文件系统驱动
#define SERVICE_ADAPTER 0×00000004 //保留
#define SERVICE_RECOGNIZER_DRIVER 0×00000008 //保留

以下来自百度
SERVICE_WIN32_OWN_PROCESS
0×00000010
运行于独立进程的服务程序
SERVICE_WIN32_SHARE_PROCESS
0×00000020
被多个进程共享的服务程序。
若使用了SERVICE_WIN32_OWN_PROCESS 或 SERVICE_WIN32_SHARE_PROCESS且使用LocalSystem帐号来运行该服务程序,则还可以附加使用下面的&#20540;:
&#20540;
含义
SERVICE_INTERACTIVE_PROCESS
0×00000100
该服务可以与桌面程序进行交互操作。
*/

2.对象管理器生成驱动对象(DriverObject)并传递给DriverEntry(),执行DriverEntry入口函数
3.创建控制设备对象
4.创建控制设备符号链接(对RING3可见)
5.如果是过滤驱动,创建过滤设备对象,绑定
5.注册分发函数
6其它初始化动作
点击按钮快速添加回复内容: 支持 高兴 激动 给力 加油 苦寻 生气 回帖 路过 感恩
您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

小黑屋|手机版|Archiver|看流星社区 |网站地图

GMT+8, 2024-3-19 17:07

Powered by Kanliuxing X3.4

© 2010-2019 kanliuxing.com

快速回复 返回顶部 返回列表