2012年9月21日

内核文件sys节

摘要: INIT: 初始化完毕后就被释放;PAGE: 位于可以进行分页交换的内存空间,在内存空间紧张时可以被交换到硬盘上以节省内存;PAGELK: 位于不可分页交换的内存空间;PAGE节中的函数不能在Dispatch级调用,因为PAGE可能引发缺页中断。 阅读全文

posted @ 2012-09-21 16:59 kaixian 阅读(118) 评论(0) 推荐(0)

RtlCopyMemory和RtlMoveMemory区别

摘要: RtlCopyMemory与RtlMoveMemoryRtlCopyMemory和RtlMoveMemory都是内存复制。其区别是,RtlCopyMemory非重叠复制,而RtlMoveMemory是重叠复制,具体解释如下:ABCD分别代表三段内存的起始地址和终止地址。如果需要将A到C段的内存复制到B到D段内存上,这是B到C段的内存就是重叠部分。RtlCopyMemory函数的内部实现方法是依靠memcpy函数实现的。根据C99定义,memcpy没有考虑重叠的部分,因此他不能保证重叠部分是否被复制。为了保证重叠部分也被正确复制,C99规定memmove函数完成这个任务。这个函数对两个内存是否重 阅读全文

posted @ 2012-09-21 15:30 kaixian 阅读(811) 评论(0) 推荐(0)

内核函数前缀和名称

摘要: Ndis : 与NDIS网络驱动开发相关的函数;ExAllocatePool: 内存分配(malloc);ExFreePool :内存释放(free);ExAcquireFastMutex : 获取一个快速互斥体;ExReleaseFastMutex : 释放一个快速互斥体;ExRaiseStatus : 抛出一个异常;关于文件处理的函数前缀Zw和NtZwCreateFile = NtCreateFile : 打开文件(设备);ZwReadFile = NtReadFile : 读文件;ZwWriteFile = NtWriteFile: 写文件;ZwQueryDirectoryFile = 阅读全文

posted @ 2012-09-21 15:29 kaixian 阅读(422) 评论(0) 推荐(0)

导航