随笔分类 - Windows 系统知识
摘要:背景:在写一个应用,需要和系统窗口进行通讯,所以通讯数据要兼容32位和64位系统。故事:以为挺简单的一件事情,直接搜索“VC判断 64位系统”,搜到很多结果,但答案很一致,好像上学时候交的作业: 1 typedef BOOL (WINAPI *LPFN_ISWOW64PROCESS) (HANDLE, PBOOL); 2 3 LPFN_ISWOW64PROCESS fnIsWow64Process; 4 5 BOOL IsWow64() 6 { 7 BOOL bIsWow64 = FALSE; 8 9 //IsWow64Process is not available o...
阅读全文
摘要:参考:http://www.fmddlmyy.cn/text7.html 用户态和内核态是不同的CPU特权级别,X86用户态为RING3,内核态在RING0。 win32系统可以使用的最大内存空间为4GB,用户态代码可以使用的是0x00000000——0x7FFFFFFF。 从用户态进入核心态最常用方法是将功能码写入EAX中,然后INT 2E,类似DOS中断调用BIOS的功能;这种机制在NT架构中叫做system service。 核心态主要有ntoskrnl.dll 、win32k.sys 两个模块提供system service。ntoskrnl.exe是windows的大脑,其上层是ex
阅读全文
浙公网安备 33010602011771号