上一页 1 2 3 4 5 6 7 8 ··· 13 下一页
摘要: 《Windows驱动开发技术详解 》331页, 在将IRP发送给底层驱动或其他驱动之前,可以对IRP设置一个完成例程,一旦底层驱动将IRP完成后,IRP完成例程立刻被处罚,通过设置完成例程可以方便地使程序员了解其他驱动对IRP进行的处理, 不管是调用自己的底层驱动或是调用其他驱动,都是使用内核函数I 阅读全文
posted @ 2020-02-25 18:38 AGB 阅读(562) 评论(0) 推荐(0) 编辑
摘要: 手动创建IRP有以下几个步骤: 1,先得到设备的指针,一种方法是用IoGetDeviceObjectPointer内核函数得到设备对象指针,另外一种方法是用zwCreateFile内核函数先得到设备句柄,然后调用ObReferenceObjectByHandle内核方法通过设备句柄得到设备对象指针; 阅读全文
posted @ 2020-02-24 19:31 AGB 阅读(311) 评论(0) 推荐(0) 编辑
摘要: IRP被送到底层驱动程序以后,由于硬件设备的问题,IRP不能得到及时处理,甚至有可能永远不会被处理,这时候需要对IRP超时情况进行处理,一旦在规定时间内,IRP没有被处理,操作系统就会进入到IRP的处理函数种 阅读全文
posted @ 2020-02-24 16:03 AGB 阅读(288) 评论(0) 推荐(0) 编辑
摘要: DCP是一种使用更加灵活的定时器,可以对任意间隔时间进行定时。DPC定时器的内部使用了一个定时器对象KTIMER,当你设定了定时器之后,从设定开始起经过这个时间之后操作系统会将一个DPC定时器的例程插入到DPC的队列,操作系统读取DPC队列的时候定时器例程就能够被执行。这里的DPC定时器例程就相当于 阅读全文
posted @ 2020-02-24 12:36 AGB 阅读(1937) 评论(1) 推荐(0) 编辑
摘要: 驱动程序代码 #pragma once #define IO_CONTROL_TRANSMIT_EVENT CTL_CODE(FILE_DEVICE_UNKNOWN,0x8080,METHOD_BUFFERED,FILE_ANY_ACCESS) typedef struct _DEVICE_EXTE 阅读全文
posted @ 2020-02-23 18:49 AGB 阅读(401) 评论(0) 推荐(0) 编辑
摘要: 互斥+有序 线程同步是线程之间所具有的一种制约关系,一个线程的执行依赖另一个线程的消息,当它没有得到另一个线程的消息时应该等待,知道消息到达时才被唤醒 阅读全文
posted @ 2020-02-23 17:08 AGB 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 相关函数 1,CreateEvent HANDLE WINAPI CreateEvent( LPSECURITY_ATTRIBUTES lpEventAttributes, //表示安全控制,一般直接传入NULL,表示不能被子进程继承 BOOL bManualReset, //参数确定事件是手动置位 阅读全文
posted @ 2020-02-23 16:47 AGB 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 内核版的令牌 相关函数 HANDLE CreateMutexA( LPSECURITY_ATTRIBUTES lpMutexAttributes, BOOL bInitialOwner,//FALSE的时候,互斥体创建出来就可以用 LPCSTR lpName ); 示例代码,下面是两个程序,代表两个 阅读全文
posted @ 2020-02-23 16:09 AGB 阅读(225) 评论(0) 推荐(0) 编辑
摘要: 多个线程有对同一个全局变量进行写的操作时,会出现线程安全问题。 1,临界区 / 临界资源 临界资源时一次只允许一个线程使用的资源。 访问临界资源的那段代码称为临界区。 临界区实现之线程锁 如图 1,创建全局变量,一个全局令牌 CRITICAL_SECTION cs;//相当于一个令牌,让线程去拿,谁 阅读全文
posted @ 2020-02-23 15:27 AGB 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 线程切换的时候,要保存当前运行状态,以便后续切换回来 CONTEXT结构体保存的是一堆寄存器 两个函数 //You cannot get a valid context for a running thread. Use the SuspendThread function to suspend t 阅读全文
posted @ 2020-02-23 14:49 AGB 阅读(405) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 13 下一页