首页
社区
课程
招聘
[求助]内存读写驱动加锁问题
发表于: 2018-8-20 14:05 3587

[求助]内存读写驱动加锁问题

2018-8-20 14:05
3587
ring3程序会多线程调用DeviceIoControl给驱动发送消息请求读写内存
现在的情况是,ring0驱动在处理时会读取一个ULONGLONG型的全局变量,内存的读写核心操作用的RtlCopyMemory,尝试过加FAST_MUTEX锁,但是过快调用 写内存功能 会导致ring3调用程序未响应?不加锁会导致ring3调用程序已停止工作,错误代码是c0000005,没有找到问题在哪。。。
ring0部分代码:
	//read physical address
	VirtualAddress = PAtoVA(PhysicalAddress, Size);
	//change cr0 WP
	//KIRQL irql;
	//irql = WPOFFx64();
	//_disable();
	if (MmIsAddressValid(VirtualAddress))
	{
		RtlCopyMemory(VirtualAddress, pWriteBuffer, Size);
		status = STATUS_SUCCESS;
	} 
	//_enable();
	//WPONx64(irql);

	MmUnmapIoSpace(VirtualAddress, Size);

ring3部分代码:

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 12848
活跃值: (9147)
能力值: ( LV9,RANK:280 )
在线值:
发帖
回帖
粉丝
2
PAtoVA(PhysicalAddress, Size);
if (MmIsAddressValid(VirtualAddress))
 WPOFFx64();
嗯?那是真的牛批
2018-8-20 14:21
0
雪    币: 6
活跃值: (3310)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
膜拜易语言大手子
2018-8-20 15:41
0
游客
登录 | 注册 方可回帖
返回
//