摘要: 驱动程序的主要功能是用来处理IO请求,而大部分的IO请求是在派遣函数中完成的,用户模式下所有的IO请求都会被IO管理器封装为一个IRP结构,类似于Windows窗口程序中的消息,不同的IRP被发送到不同的派遣函数中处理IRP与派遣函数IRPIRP(I/O Request Packag... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(811) 评论(0) 推荐(0)
摘要: 应用层对设备的同步与异步操作以WriteFile为例,一般的同步操作是调用WriteFile完成后,并不会返回,应用程序会在此处暂停,一直等到函数将数据写入文件中并正常返回,而异步操作则是调用WriteFile后会马上返回,但是操作系统有另一线程在继续执行写的操作,这段时间并不影响应... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(605) 评论(0) 推荐(0)
摘要: duilib的基本流程如上图,通过解析一个xml文件,将文件中的内容渲染为窗口界面,这个解析过程由WindowImplBase类来完成。 基本框架如下: 1. 首先在公共头文件中加入如下内容:#include #include using namespace DuiLib;#ifd... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(884) 评论(0) 推荐(0)
摘要: 驱动程序运行在系统的内核地址空间,而所有进程共享这2GB的虚拟地址空间,所以绝大多数驱动程序是运行在多线程环境中,有的时候需要对程序进行同步处理,使某些操作是严格串行化的,这就要用到同步的相关内容。 异步是指两个线程各自运行互不干扰,而当某个线程运行取决与另一个线程,也就是要在线程之... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(302) 评论(0) 推荐(0)
摘要: 最近在学WFP驱动框架,在使用VS2013写代码调用WFP的函数时会包含fwpmu.h这个头,但是在包含这个头的时候会报错,就像下面这个图这样: 我百度了一下,然后在这个网站上面找到了解决方案: https://social.msdn.microsoft.com/Forums/wi... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(271) 评论(0) 推荐(0)
摘要: 就像题目上说的,今天在写一个例子代码时遇到了这个问题,下面是当时驱动层和应用层的代码:#include #define BASE_CODE 0x800#define CREATE_THREAD_COMMAND CTL_CODE(FILE_DEVICE_UNKNOWN, BASE_CO... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(2119) 评论(0) 推荐(1)
摘要: 字符串处理在驱动中一般使用的是ANSI字符串和宽字节字符串,在驱动中我们仍然可以使用C中提供的字符串操作函数,但是在DDK中不提倡这样做,由于C函数容易导致缓冲区溢出漏洞,针对字符串的操作它提供了一组函数分别用来处理ANSI字符串和UNICODE字符串。 针对两种字符串,首先定义了它... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(1773) 评论(0) 推荐(0)
摘要: 内存管理的要点内核内存是在虚拟地址空间的高2GB位置,且由所有进程所共享,进程进行切换时改变的只是进程的用户分区的内存驱动程序就像一个特殊的DLL,这个DLL被加载到内核的地址空间中,DriverEntry和AddDevice例程在系统的system进程中运行,派遣函数会运行在应用程... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(319) 评论(0) 推荐(0)
摘要: 一般在写Windows内核程序的时候,经常会出现蓝屏的问题,这个时候一般是采用记录下dump文件然后用windbg查看得方式,具体的过程就不说了,网上一大堆的内容。现在我主要记录自己当初按照网上的方案出现windbg的open crashdump项呈现灰色的情况。就像下面这样 这个... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(697) 评论(0) 推荐(0)
摘要: 我在编写有关JNI的代码的时候回报这个错误,我在网上搜了相关的资料后,找到了一篇文章解决了这个问题,点击这里查看这篇文章,我在照着这篇文章尝试的时候,总有一些错误,现在我把自己详细的解决流程贴出来,供大家参考。 首先在工程目录下的gradle.properties文件的末尾加上一句:... 阅读全文
posted @ 2017-10-24 20:55 masimaro 阅读(90) 评论(0) 推荐(0)