摘要:
下面这是kruglinski关于学习驱动编写的文章。虽然是入门级文章,但是也需要对驱动有一些了解后才可以看的比较透彻。《DDK学习笔记》1---入门1.驱动程序的结构:1.1、一个入口点(DriverEntry):用于创建设备对象及符号连接,以及其它初使化操作,如分配池内存等.1.2、一个出口(DriverUnload):删除符号连接与设备对象,并释放已经分配的各种资源,如池内存等1.3、几个DispatchHandler:用于响应Ring3程序的请求及其它驱动事件,并做相关处理2.内存管理2.1、分配系统池内存(ExAllocatePool):它有点像C中malloc,只不过存在分页和紧急选 阅读全文
摘要:
通常驱动程序的调试都是用ddk在cmd中完成的。这部分我暂时略过。下面先介绍如何设置vc++6.0在Visual Studio 6.0集成环境中开发设备驱动程序的方法。在Windows上,WindowsDDK提供的开发环境是基于命令行的,操作起来极为不便,而VisualStudio6.0给我们提供了非常友好易用的集成环境,让我们有如虎添翼之感。 那么,能否利用VisualStudio的集成环境来开发驱动程序呢?答案是可以的。通过对VisualStudio集成环境的简单设置,创建好自己的驱动开发集成环境就可以了。1,第一:安装Vc++6.0,我装的是英文版,中文版应该也可以,不过我没试。第二:. 阅读全文
摘要:
驱动对象 设备对象 设备栈 乱杂谈作者: JIURL 主页: http://jiurl.yeah.net/ -------------------------------------------------------------------------------- 用有限的几句话就舒舒服服的建立起对驱动对象和设备对象的概念是不可能的。刚开始是一片模糊,了解的多了,慢慢就清楚。下面的内容会使你对他们了解的清楚些。为了后面的叙述方便,首先列出驱动对象和设备对象的结构。驱动对象结构 DRIVER_OBJECT ,定义如下struct _DRIVER_OBJECT (sizeof=168)+0.. 阅读全文
摘要:
心里总感觉 SOFTICE 的发展快到末路了。果然在 2006 年时Compuare 宣布停止 SOFTICE 开发。这里消息确实令很多人心痛。但与此同时,Windows 的配套调试器 windbg , cdb 等不断更新,功能不断强大,你必须选择它,虽然它内核调试速度不理想。后来我知道了 syser debuger, 国人写的不错的调试器,基本上 SOFTICE 命令等相似,上手很快,单机调试即可,速度挺快。但是要开发windows 内核程序,最好还是 windbg,至少 windbg 与系统的兼容肯定不会差吧。因为我自己的机器配置不高,所以平时玩的时候就用 syser , 但在公司真正解决 阅读全文
摘要:
1.驱动简介 1.1.驱动是什么计算机的外部设备需要和计算机进行数据交换,生产外部设备的厂家如何使计算机和自己的设备交换数据呢,就是通过驱动程序,从设备中读入到计算机中,早期的Win3.1,Win9x设备驱动是vxd,Win NT是kdm, Win2k 统一发展成wdm模式。 1.2.sys文件 sys文件是驱动程序的可执行代码,其扩展名为.sys,驱动程序安装后保存在windows/system32/drivers目录中。 对于PnP设备,在设备插入后,sys文件会被windows装载到内存中,系统线程调用sys中的函数来和设备进行通信。 1.3.inf文件inf文件是安装设备驱动程序时必须 阅读全文