热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

windows内核_Windows内核基本结构

篇首语:本文由编程笔记#小编为大家整理,主要介绍了Windows内核基本结构相关的知识,希望对你有一定的参考价值。一、Windows模式结构

篇首语:本文由编程笔记#小编为大家整理,主要介绍了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中。

技术图片


推荐阅读
author-avatar
晴儿19082
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有