一、
1、NTDLL。DLL
系统支持库,用于子系统DLL,包含以下两种类型的函数:
(1)系统服务分发存根,会调用WINDOWS执行体系统服务
(2)内部支持函数,供子系统、子系统DLL及其他的原生映像文件使用
第一组函数为执行体系统服务提供了接口,在用户模式下可以通过这些接口函数调用执行体的系统服务。对于每个这样的函数,NTDLL包含了一个同名的入口点。函数内部的代码包含了与处理器体系结构相关的模式切换指令,通过该指令可以转换到内核模式下,从而调用系统服务分发器,分发器检验了参数后,调用真正的内核模式系统服务,其中包括NTOSKRNL。EXE内部的实际代码。
2、执行体
执行体是NTOSKRNL。EXE的上层(内核是下层),包括以下函数
(1)可在用户模式下调用的导出函数。通过NTDLL被导出
(2)通过DEVICEIOCONTROL函数来调用的设备驱动器函数
(3)只能在内核模式下调用的导出函数,且已经文档化
(4)在内核模式下调用但未文档化
(5)定义为全局符号但是未被导出的函数,包括在NTOSKRNL内调用的内部支持函数
(6)未定义为全局符号,而是在一个模块内部的函数
执行体包括以下主要组件
(1)配置管理器。负责系统注册表的实现和管理
(2)进程和线程管理器,创建或终止进程和线程
(3)安全引用监视器,强制在本地计算机上实行安全策略
(4)I/O管理器,实现了与设备无关的I/O操作
(5)即插即用管理器
(6)电源管理器
(7)WDM WINDOWS管理堆满全程,允许设备驱动程序发布有关性能和配置的信息
(8)调整缓存管理器,提高了以文件基础的I/O操作的性能
(9)内存管理器,实现了虚拟内存
(10)逻辑预取器,加速系统和进程的启动过程
另外执行体还包含四组主要的支持函数
(1)对象管理器
(2)LPC设施,在同一台机器上的客户进程和服务器进程之间传递消息
(3)公共运行库函数,比如:字符串处理、算术操作、数据类型转换以及安全结构处理
(4)执行体支持例程,比如系统内存分配、同步对象等
二、
内核是由NTOSKRNL。EXE中的一组函数以及对于硬件体系结构的低层支持(比如中断和异常分发)构成,主要以C编写,对于特殊指令和寄存器,使用汇编
[内核对象]
提供一组定义明确的、可预知的操作系统低层原语和机制,从而使得执行体中的高层组件可以做它们需要做的事情。将所有策略决定给了执行体,仅有线程调度和分发展由内核自己来实现
从内核外部来看,执行体将线程和其他可共享的资源表示为对象,这些对象要求一些策略开销,这些开销在内核中不存在,内核实现一组简单的对象,执行体层的大部分对象包装了一个或多个内核对象。
一组称为控制对象的内核对象建立了有关控制各种操作系统功能的语义。
一组称为分发器对象的内核对象整合了同步的能力,改变或影响了线程的调度。
[硬件支持]
内核的另一个主要任务是将执行体和设备驱动程序从各种硬件体系结构中抽象出来,企图使公共代码最大化支持内核的这一功能,支持一组可移植的接口。
有些内核接口在HAL实现,有些涉及与X86有关的接口
三、
[硬件抽象层HAL]
设备驱动程序调用HAL例程来保持可移植性
[设备驱动程序]
可加载的内核模式模块,通过以。SYS结尾,在I/O管理器与相应的硬件之间建立起链接,设备驱动程序位于以下三种执行环境之一:
1、在发起I/O功能的用户线程环境中
2、在内核模式系统线程的环境中
3、作为一个中断的结果
通过调用HAL来维护硬件是设备驱动程序的工作,分为以下类型
1、硬件设备驱动程序
2、文件系统驱动程序
3、文件系统过滤器驱动程序
4、网络重定向器和服务器
5、协议驱动程序
6、内核流式过滤器驱动程序
从WDM的角度有以下几种:
1、总线型驱动程序
2、功能型驱动程序
3、过滤型驱动程序
分享到:
相关推荐
该书详细介绍了Windows操作系统的核心组件、设计架构以及内部运作流程,帮助读者深入理解Windows的复杂性和强大功能。 在书中,作者们涵盖了以下几个关键知识点: 1. **系统架构**:讲解了Windows操作系统的层次...
《深入解析Windows操作系统》是一本详尽介绍Windows操作系统内部工作原理的专业技术书籍,本书的英文版第七版分为上下两册。本书由Pavel Yosifovich、Alex Ionescu、Mark E. Russinovich和David A. Solomon四位专家...
全书内容丰富、信息全面,主要包括的Windows操作系统深度知识有:理解Windows的关键机制,包括系统服务分发和调度机制、启动和停机,以及注册表;挖掘Windows的安全模型,包括访问控制、特权和审计;利用内核调试器...
第6版)》是操作系统内核专家Russinovich等人的Windows操作系统原理的最新版著作,针对Windows 7和Windows Server 2008 R2进行了全面的更新,主要讲述Windows的底层关键机制、Windows的核心组件(包括进程/线程/...
这本书深入探讨了Windows操作系统的核心组件、工作原理以及如何进行系统级编程。书中涵盖了C++语言在Windows系统编程中的应用,这对于理解和实践系统编程至关重要。 在Windows系统编程中,C++是一种常用的高级编程...
《Windows操作系统核心技术——讲义与实验》是一份深入探讨Windows操作系统内部机制的教育资源,涵盖了从底层硬件交互到高级编程接口的广泛主题。这份资料主要针对Java、VB.NET、.NET、C/C++以及C#等编程语言的...
在详细介绍Windows操作系统相关知识点之前,我们先对涉及的几个核心概念进行定义和解释。操作系统是管理计算机硬件与软件资源的程序,它为...这些组件的相互配合,确保了Windows操作系统的稳定运行和用户的高效使用。
2. **Windows架构**:详述Windows操作系统的层次结构,包括用户界面、内核模式组件、系统服务、设备驱动程序模型以及硬件抽象层。 3. **进程与线程**:深入分析Windows中的进程创建、调度、同步、通信机制,以及...
《深入解析Windows操作系统》中文版 第四版 1/5 第1章 概念和工具 1.1 Windows操作系统的版本 1.2 基础概念和术语 1.3 挖掘Windows内部机理 1.4 本章总结 第2章 系统结构 2.1 需求和设计目标 2.2 操作系统模型 2.3 ...
深入解析Windows操作系统 4/5 第1章 概念和工具 1.1 Windows操作系统的版本 1.2 基础概念和术语 1.3 挖掘Windows内部机理 1.4 本章总结 第2章 系统结构 2.1 需求和设计目标 2.2 操作系统模型 2.3 总体结构 2.4 关键...
### 深入解析Windows操作系统 第4版 中文版 —— Microsoft Windows Server 2003 Windows XP Windows 2000技术内幕 #### 重要知识点解析 **1. Windows NT 的需求和设计目标** - **32位操作系统**:Windows NT ...
本课程以Windows2000\XP为代表介绍Windows操作系统的基本概念和术语,关键系统组件及其相互关系,进程管理的基本原理和操作,内存管理的基本原理,文件系统NTFS的基本原理,输入输出系统的结构和相关处理以及安全...
在Windows操作系统中,开发应用程序时,了解系统的环境变量是至关重要的。这可以帮助开发者适配不同用户的系统配置,确保软件能够正确运行。`Windows 系统环境检测组件`就是这样一个工具,它专为Delphi编程语言设计...
第6版)》是操作系统内核专家Russinovich等人的Windows操作系统原理的最新版著作,针对Windows7和Windows Server2008 R2进行了全面的更新,主要讲述Windows的底层关键机制、Windows的核心组件(包括进程/线程/作业...
《Windows操作系统》是一份详细讲解Windows操作系统的参考资料,主要涵盖了Windows 2000/XP的核心技术。这份文档旨在提供操作系统原理的全面理论知识以及Windows操作系统的具体构成,适合学习者和专业人士参考使用。...
"系统必备组件下载常用运行库合集64位"这个标题所指的是一个集合了多个64位系统所需的关键组件和运行库的打包下载资源,主要用于Windows 7操作系统。这个合集的目的是确保用户能够顺利运行各种软件,特别是那些依赖...
2. **Windows内核结构**:详细解析Windows操作系统的内核架构,包括执行体、调度程序、中断处理、系统调用等关键组件。 3. **进程与线程**:阐述Windows中的进程和线程模型,包括创建、同步、通信和调度机制。 4. ...