一、Windows系统结构概述
1、Windows采用双模式来保护操作系统本身,内核模式和用户模式。在Windows中,用户代码和内核代码有各自的运行环境,而且它们可以访问的内存空间也并不相同。在x86中,内核代码可以访问当前进程的4GB虚拟地址空间,而用户代码只能访问底端2GB虚拟地址(一般情况下)。
2、Windows子系统与系统内核一起构成了用户程序的执行环境。Windows子系统既有内核模式部分,也有用户模式部分。用户模式部分包括一个单独的子系统进程和一组链接到各个应用进程中的系统DLL。
3、Windows还包括一组系统进程和服务进程。
二、Windows内核结构概述
1、Windows操作系统的内核分为三层。HAL层,HAL之上的内核层(微内核 micro-kernel,这层包含操作系统原语和功能,例如线程和进程,线程调度,中断和异常处理,同步对象和各种同步机制),执行体(executive)层(这一层提供一些可供上层应用程序或内核驱动程序直接调用的功能和语义)。Windows内核的执行体包含一个对象管理器,用于一致地管理执行体中的对象。执行体层和内核层位于同一个二进制模块中,即内核基本模块ntoskrnl.exe。

2、在Windows 32位中用户模式代码只能访问2GB一下的虚拟内存地址孔家,而内核模式代码可以访问当前进程整个4GB虚拟地址范围。两者间有一个特殊的64KB地址空间位于0x7FFF0000-0x7FFFFFFF,两种模式下都不能访问。这块地址是给ProbeForRead服务的。
三、Windows内核中的关键组件概述
1、HAL hal.dll 支持标准PC HAL的设计是将硬件的差别隐藏起来,给OS提供一个抽象的资源模型
2、微内核
3

本文深入探讨了Windows内核的基本结构,包括双模式运行环境、子系统和内核的构成。详细阐述了内核的三层结构,以及关键组件如HAL、微内核、执行体。同时,介绍了内存管理的策略,如非换页和换页内存池,以及进程和线程的管理机制。文章还涵盖了中断、异常处理,并简要概述了Windows的启动和初始化流程。
最低0.47元/天 解锁文章
2121

被折叠的 条评论
为什么被折叠?



