Syser初始化所做的事

来源:互联网 发布:240光束灯编程视频教程 编辑:程序博客网 时间:2024/06/06 07:41

一.先初始化配置信息包括:

1.SyserDirectory
2.用于hookIDT的信息

3.SyerDefaultConfig

4.SyserColorConfig

5.创建并初始化SyserHeap

6.初始化段寄存器信息

7. 初始化Cpu信息

8.获取PDE和PTE

9.检查CPU版本信息和是否在VMWARE或VirtualPc上跑

10.HOOK#14(页异常处理函数)并做记录

11.获取PsActiveProcessHead

二.

注册回调历程

IRP_MJ_DEVICE_CONTROL(与用户层交互)

IRP_MJ_SHUTDOWN(清理工作)

三.

1.创建包含驱动在注册表路径和其他重要信息的结构体,大小0x248

00000000 _REGISTER_INFO  struc ; (sizeof=0x248)
00000000 DriverRegisterPath dw 256 dup(?)
00000200 Unknow          dd ?                    ; 默认是0
00000204 SofticeExistCheck dd ?
00000208 TimerInterrupt  dd ?
0000020C DebugRegisterMontior dd ?
00000210 KeyboardLedProgram dd ?
00000214 DisableDisplay  dd ?
00000218 DebugKeyboardInterrupt dd ?
0000021C PatchKeBugCheckEx dd ?                  ; 默认是1
00000220 ExceptionDebugInfo dd ?
00000224 CheckPS2Mouse   dd ?
00000228 PS2MouseType    dd ?
0000022C NULLPS2Keyboard dd ?
00000230 MouseDoubleClickTimeInterval dd ?       ; XREF: DriverEntry+E1r
00000234 DisableUSBInput dd ?
00000238 DisableRWPortHook dd ?
0000023C DisableHookException dd ?
00000240 SupportVMWareMouse dd ?
00000244 DisableCopyOnWrite dd ?
00000248 _REGISTER_INFO  ends

2.InitOtherInformation(初始化一个非常大的结构,包含几乎所有信息)大量的结构体和CALLBACK

3.修改鼠标双击时间间隔,默认0x190

4.获取CPU频率和时间戳

5.\\Device\\Syser(创建设备)

6.调用gpSyserPluginUI

7.创建符号链接供3环打开

8.IoRegisterShutdownNotification(注册关机通知回调)


阅读全文
0 0
原创粉丝点击