作为最流行的的桌面操作系统,Windows系统的发展在经历数次硬件革命之后,其系统架构也基本稳定,微软号称Windows 10是最后一代操作系统,并统一了Windows各版本的底层架构。
Windows系统是分层的架构,主要分为内核态和用户态,内核态自下而上分为硬件抽象层(HAL)->内核和驱动层->执行体,以及窗口管理系统。用户态主要是NTDLL抽象层,以及各种进程,如:底层的系统支持进程->服务进程->用户应用程序,如图所示:
Ntdll.dll
Ntdll.dll是一个特殊系统支持库,主要用于子系统dll,主要包含两种类型函数:
- 系统服务分发存根,调用Windows执行体系统服务
- 内部支持函数,供子系统,子系统dll,以及exe映像文件使用
Ntdll.dll里面提供的函数大多未文档化,并以Nt开头命名。
环境子系统
环境子系统就是针对Windows不同版本ÿ