做为最流行的的桌面操做系统,Windows系统的发展在经历数次硬件革命以后,其系统架构也基本稳定,微软号称Windows 10是最后一代操做系统,并统一了Windows各版本的底层架构。缓存
Windows系统是分层的架构,主要分为内核态和用户态,内核态自下而上分为硬件抽象层(HAL)->内核和驱动层->执行体,以及窗口管理系统。用户态主要是NTDLL抽象层,以及各类进程,如:底层的系统支持进程->服务进程->用户应用程序,如图所示:sass
Ntdll.dll是一个特殊系统支持库,主要用于子系统dll,主要包含两种类型函数:安全
环境子系统就是针对Windows不一样版本(如:Windows 7 旗舰版,Windows Server2008 R2这种)上的运行环境。每一个exe可执行映像,未必可在全部版本Windows系统上运行。VC++中link命令的/SUBSYSTEM修饰符能够指定该exe映像的可执行环境(如:dll集)。服务器
环境子系统进程Csrss.exe(Client/Server Run-Time Subsystem)就是客户机/服务器运行时子系统,子系统是会话管理器(Smss.exe)进程起来的。网络
Windows执行体是Ntoskrnl.exe的上层(其下层是内核),主要包含如下组件:架构
内核是Ntoskrnl.exe的下层,主要包括:框架
设备驱动程序运行在内核模式下,主要为发起I/O请求的用户线程中,设备驱动程序主要分为如下几种:ide
硬件抽象层是的Windows能够被移植到各类硬件平台,它是一个可加载的内核模块,针对不一样的硬件平台,提供了统一的服务接口。函数