![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
windows kernel
babala512
这个作者很懒,什么都没留下…
展开
-
PTE_Addr 证明
最近在看 Windows 2000 secrete 是遇到一个公式 PTE_Addr = (VirtualAddr >> 12) * 4 + 0xC0000000通过查找网络资料之后得到如下证明:因为1024个页表被映射在0xC0000000 - 0xC03FFFFF地址中,这样就可以得到一个关系,页目录索引n指向的页表就等于0xC0000000 + n * 页表大小,一个页表的大原创 2009-07-08 15:21:00 · 693 阅读 · 0 评论 -
为啥页目录的地址为什么是C0300000H
1. Windows 把页目录表映射到0xC0000000到0xC03FFFFF 这4MB的地址空间中,对于这4M的地址空间也有一个页表与之对应。不妨设为Px。既然Windows 把全部页表都映射到上述的4M地址空间,那么页表Px自然也在其中。该页表对应的线性地址为0xC0000000H。利用公式PTE_Addr = (VirtualAddr >> 12) * 4 + 0xC0000000,将0x原创 2009-07-08 15:25:00 · 707 阅读 · 0 评论 -
搞明白IRP这个东东了
按照ms的步骤走了一遍,搞明白了,整点笔记记录一下,别忘了。IRP的结构:typedef struct DECLSPEC_ALIGN(MEMORY_ALLOCATION_ALIGNMENT) _IRP { CSHORT Type; USHORT Size; // // Define the common fields used to contro原创 2009-12-12 11:34:00 · 2164 阅读 · 0 评论 -
记忆几个函数
dosdefinedevice:用于文件路径映射欺骗ZwCreateSymbolicLinkObject:可以给一个既有对象起名字原创 2009-12-21 13:55:00 · 534 阅读 · 0 评论