请问:驱动是由哪个程序加载的?

xiaoxiao_8 2007-12-07 08:45:02
请问:驱动是由哪个程序加载的?
...全文
137 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
oushengfen 2007-12-12
  • 打赏
  • 举报
回复
呵呵,学习一下。
zswolf2000 2007-12-11
  • 打赏
  • 举报
回复
DriverEntry是由系统进程加载的,也就是在进程管理器有个叫做system的进程。
zswolf2000 2007-12-11
  • 打赏
  • 举报
回复
进程号是4或者8的进程,这个进程比较怪,没有对应哪个具体的exe,要么怎么叫系统进程呢。
xiaoxiao_8 2007-12-11
  • 打赏
  • 举报
回复
system这个进程是哪个程序呀,怎么找不到
xiaoxiao_8 2007-12-10
  • 打赏
  • 举报
回复
感谢楼上的二位,
我主要想知道在XP系统中,驱动是由哪个程序加载的,然后我想修改这个程序来预防 驱动型木马。
比如服务型木马,我修改services.exe,不让他加载陌生的服务。就可以了。
zhanzhenbo 2007-12-08
  • 打赏
  • 举报
回复
你好:
在每个系统中呈现给你的方法不同。
但能够总结为以下两种方式, 这样有助于你的理解。

1:静态方式: 这种方式的驱动加载多在系统的启动阶段就把驱动初始化了,形成了一个结构体(类),也就是说已经存在于
内存中。系统启动后,当需要调用则可以调用这个已经初始化了的模块的接口。
楼上所说的就是这种方式的LINUX下的一种表现形式。

2:动态加载:在系统启动后,这时候有的操作系统,比喻LINUX 可以通过INMODULE等方法插入这个驱动模块,
       实际上也就是注册到了系统的驱动模块表中,并初始化。 当需要调用的时候就找到然后使用公开的接口。 


了解这两点至关重要。
嵌云阁主 2007-12-08
  • 打赏
  • 举报
回复
基本上是通过module_init将驱动的初始化函数地址放在一个固定的区域,内核初始化时按顺序执行这块区域中的所有函数,这样驱动就加载了。

21,595

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
  • 驱动开发/核心开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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