随笔分类 -  驱动编程

摘要:关于驱动读写异步超时的处理,网络上的资料相对稀少,正好最近在工作上遇到了这个问题,所以就研究了一下,发现还是有些门道的。如果完全按照应用层读写超时的处理逻辑来处理驱动层的话就会出现蓝屏等问题 只要涉及到读写超时,那么我们第一印象肯定会想到事件和事件等待相关操作与函数的调用,那么我们来看一下驱动的几个 阅读全文
posted @ 2019-06-09 17:40 magicdmer 阅读(792) 评论(0) 推荐(0)
摘要:这是我对UsbDk官方文档的翻译,希望对大家有帮助,有错误之处还请谅解. UsbDk开发套件是由一套软件工具和模块组成,它把USB设备从PNP管理器和设备驱动分离,并提供了一系列API供用户层程序直接独占的访问USB设备,进行USB设备相关操作。 UsbDk一开始是用来为spice远程桌面程序提供U 阅读全文
posted @ 2019-06-09 17:35 magicdmer 阅读(7458) 评论(0) 推荐(0)
摘要:SSDT(systemservicedispatchtable)系统服务分派表SSPT(systemserviceparametertable)系统服务参数表#pragmapack(1)//SSDT表的结构typedefstructServiceDescriptorEntry{unsignedint... 阅读全文
posted @ 2015-04-29 14:29 magicdmer 阅读(2998) 评论(0) 推荐(0)
摘要:有两种方法可以用于控制设备驱动程序的加载顺序。这两种方法都利用了位于\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control的注册表项。第一种方法是修改ServiceGroupOrder。第二种方法是根据GroupOrderList分配用于决定驱动程序... 阅读全文
posted @ 2013-03-15 12:30 magicdmer 阅读(817) 评论(0) 推荐(0)
摘要:应用程序(CreateFile,ReadFile)I/O子系统(向FS发送I/O请求)文件系统设备栈----------------------------------------------------------------------------------------------------... 阅读全文
posted @ 2013-02-27 09:38 magicdmer 阅读(430) 评论(0) 推荐(0)
摘要:刚学linux驱动的同学,首先遇到的障碍就是驱动的编译问题,这里做个笔记方便他人: 1.首先我们要写个源文件,这里就叫hello.c,内容如下: #include <linux/module.h> #include <linux/init.h> MODULE_LICENSE("GPL"); //这个 阅读全文
posted @ 2012-11-11 16:39 magicdmer 阅读(389) 评论(0) 推荐(1)
摘要:EeasySyS是方便大家创建vs驱动工程的一款非常方便好用的软件。这款软件很久都没有更新过了,但它是开源的,所以我对其做了一些修改,来适应现在驱动编程环境。这里提供我修改的代码,大家可以在此基础上随意发挥,程序是MFC的,VS2008编译。下面是软件截图:本次修改版更新如下:1.支持vc6.0,支... 阅读全文
posted @ 2012-11-07 11:45 magicdmer 阅读(224) 评论(0) 推荐(0)
摘要:VPB是WindowsI/OManager子系统的一个重要的数据结构,全称为VolumeParameterBlock。它的任务是绑定卷设备(如磁盘分区或虚拟磁盘)和接管此卷设备的文件系统(如FastFat,NTFS)。Windows系统上的挂载点(MountPoint,如盘符C:)只能定位至卷设备(... 阅读全文
posted @ 2012-08-23 22:41 magicdmer 阅读(906) 评论(0) 推荐(0)
摘要:(1)启动加电(2)BIOS加电自检(poweronselftest-POST)。BOIS在内存中的起始位置为0ffff:0000,BIOS的加电自检就是从地址0ffff:0000开始执行。自检完毕后更新ESCD(Extendedsystemconfigurationdata扩展系统配置数据)。(3... 阅读全文
posted @ 2012-01-24 12:58 magicdmer 阅读(165) 评论(0) 推荐(0)