windows零碎知识点
三个概念:
(1)RPL(Request Privilege Level) 请求特权级别,段选择子的后两位。
(2)DPL(Descriptor Privilege Level) 段描述特权级别,13位与14位。
(3)CPL(Current Privilege Level)当前特权级别,当前工作在CS\SS段的RPL。
FS:[0]
在进行WINDOWS开发的过程中,有一个重要的地址保存着每个程序或者说代码运行的关键信息,它就是段寄存器fs中fs:[0]地址的所指向的一块数据区。
这块数据区就是用来保存当前进程关键信息的进程控制块数据结构。在内核态环境下,它表示的是进行控制块KPCB结构体,在用户态环境下,它的表示形式是线程控制块的用户态形式TEB.
kernel32.dll、user32.dll、gdi32.dll的作用
kernel32.dll是Windows9x/Me中非常重要的32位动态链接库文件,属于内核级文件。它控制着系统的内存管理、数据的输入输出操作和中断处理,当Windows启动时,kernel32.dll就驻留在内存中特定的写保护区域,使别的程序无法占用这个内存区域。
user32.dll是Windows用户界面相关应用程序接口,用于包括Windows处理,基本用户界面等特性,如创建窗口和发送消息。
gdi32.dll是Windows GDI图形用户界面相关程序,包含的函数用来绘制图像和显示文字。