Windows内核基本结构

Posted cyhcs

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Windows内核基本结构相关的知识,希望对你有一定的参考价值。

一、Windows模式结构

Windows采用了双模式结构,分为用户模式和内核模式

技术图片

 

 二、windows内核模式结构

Windows 内核模式分为三层,与硬件直接打交道的这一层称为硬件抽象层(Hardware Abstraction Layer,简称HAL),这一层的用意是把所有与硬件相关联的代码逻辑隔离到一个专门的模块中,从而使上面的层次尽可能做到独立于硬件平台。HAL之上是内核层,有时候也称为微内核(micro-kernel),这一层包含了基本的操作系统原语和功能,如线程和进程、线程调度、中断和异常的处理、同步对象和各种同步机制。在内核层之上则是执行体(executive)层,这一层的目的是提供一些可供上层应用程序或内核驱动程序直接调用的功能和语义。Windows 内核的执行体包含一个对象管理器,用于一致地管理执行体中的对象。执行体层和内核层位于同一个二进制模块中,即内核基本模块,其名称为ntoskrnl.exe。(ntoskrnl.exe在任务管理器中以system显示)

Windows内核模式部分为用户提供了系统服务,kernel32.dll和user32.dll中的所有win32 API 最终都是调用ntdll.dll中的函数实现的,它连接用户模式代码和内核模式系统服务的桥梁。

ntdll.dll是Windows系统从ring3到ring0的入口。位于Kernel32.dll和user32.dll中的所有win32 API 最终都是调用ntdll.dll中的函数实现的。ntdll.dll中的函数使用SYSENTRY进入ring0,函数的实现实体在ring0中。

技术图片

以上是关于Windows内核基本结构的主要内容,如果未能解决你的问题,请参考以下文章

从hook开始聊聊那些windows内核数据结构

如何探索windows内核中未知的数据结构

怎么学习windows内核编程?

转载关键的Windows内核数据结构一览

2017-2018-2 20179223《网络攻防技术》第七周作业

WINDOWS内核对象