首页
社区
课程
招聘
[原创][原创]Windows内核分析之win7 x86&x64篇第一章
发表于: 2017-4-4 16:29 10157

[原创][原创]Windows内核分析之win7 x86&x64篇第一章

2017-4-4 16:29
10157

第1章概述

    1.1 windows操作系统的发展历史

      1980年后期 unix系统已经发展非常成熟 主要用于高端用户 实验室 工厂使用 当时windows 还比较落后 采用的是dos架构(windos3.1 windows 95 windows 98都是这种) 但是当时在中国普通百姓 谁知道电脑是啥玩意啊 所以 对系统要求很低 不需要玩游戏 也不需要什么word 软件 太复杂反而没人用 unix那么复杂的命令 谁会用?所以简单的dos命令迎合了市场 高端的unix一直瞧不起低端的windows 微软也知道dos架构的系统路不长必须改革 正好此时有一帮牛人从某个公司辞职 于是被微软拉过去 这帮牛人为现在内存虚拟管理系统做好了铺垫(vms 内存虚拟管理 就是每个进程4G虚拟地址 通过页表映射到指定的物理地址 不用的时候 需要换页到硬盘上 就是这个意思吧) 当时借鉴unix微内核思路 微软决定开发微内核 内核越小越好 很多内核功能交给了服务进程 结果发现效率太差 于是又增加了内核文件大小 甚至吧掌管视窗的win32k.sys也加入了内核 还加入了posix(当时为了方便unix的程序移植不同平台 电器工程师定义了一种类似API接口的东西 于是大家开发unix程序 都可以移植到不同的unix系统上)os/2(os/2是微软和IBm合作开发的一个系统 后来放弃了)

   1.2用户空间和系统空间

开发现代操作系统需要四个条件:

1,用户r3层软件杂七杂八 什么鬼软件都有 万一破坏掉内核 系统就炸了 所以微软工程师必须保护好内核 r3层不能随便访问它

2,内核层可以访问r3层 比如进程调度 如果不能访问r3层 就不能调度进程 那么r3的进程运行 只能运行一个 那还叫现代系统?

3,r3层的进程之间 必须隔离 不然互相访问修改内存数据 也就乱成一锅粥了

4,r3的进程的数据 在物理内存上的地址 必须是可以改变的 试想一下 进程默认的基地址都是0x401000  如果大家都放在物理地址上的0x401000 那么就错乱了

基于以上条件 微软工程师们 制定了一套保护策略 就是大家经常看书 学到的--->保护模式

但是也要cpu支持一些特性 保护策略才能起作用 所以80386诞生 他和windows nt系统的发布 一样 和之前的dos架构完全不一样 是划时代的改变!

   1.3windows内核

1.4 windows函数命名规则

Ex开头是管理层 如上图

Ke ki 开头是核心层 如上图

Hal 是硬件抽象层 在硬件层 如上图


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
免费 3
支持
分享
打赏 + 2.00雪花
打赏次数 1 雪花 + 2.00
 
赞赏  毕达哥拉斯   +2.00 2019/02/04
最新回复 (34)
雪    币: 1176
活跃值: (1264)
能力值: ( LV12,RANK:380 )
在线值:
发帖
回帖
粉丝
2
前排支持
2017-4-4 16:38
0
雪    币: 83
活跃值: (1087)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
3
Tennn 前排支持
谢谢你
2017-4-4 17:46
0
雪    币: 990
活跃值: (882)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
期待后面的作品。
2017-4-4 19:25
0
雪    币: 47147
活跃值: (20465)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
5
建议直接将Word文章放到论坛里,现在论坛支持图文混排
2017-4-4 22:32
0
雪    币: 115
活跃值: (46)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
6
mark
2017-4-4 22:58
0
雪    币: 23
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
搬凳子学习
2017-4-5 05:14
0
雪    币: 25
活跃值: (506)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
关注中!
2017-4-5 09:39
0
雪    币: 346
活跃值: (25)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
9
期待后续系列!
2017-4-5 10:11
0
雪    币: 5676
活跃值: (1303)
能力值: ( LV17,RANK:1185 )
在线值:
发帖
回帖
粉丝
10
学习一个
2017-4-5 11:10
0
雪    币: 751
活跃值: (3833)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
11
期待后续系列!
2017-4-5 14:09
0
雪    币: 330
活跃值: (83)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
期待后续系列!
2017-4-5 14:10
0
雪    币: 70
活跃值: (72)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
13

特权级并不是微软提出来的,保护模式也不是。讲得还蛮接地气,支持一下。

2017-4-5 14:23
0
雪    币: 83
活跃值: (1087)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
14
kanxue 建议直接将Word文章放到论坛里,现在论坛支持图文混排
谢谢支持
2017-4-5 14:49
0
雪    币: 83
活跃值: (1087)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
15
killpy 谢谢支持
哦  是intel吧?
2017-4-5 14:49
0
雪    币: 83
活跃值: (1087)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
16
mihacker 期待后面的作品。
晕  引用回复失效了?  谢谢楼上支持  提醒  和  纠错
2017-4-5 14:51
0
雪    币: 83
活跃值: (1087)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
17
kanxue 建议直接将Word文章放到论坛里,现在论坛支持图文混排
明白了  谢谢版主
2017-4-5 14:52
0
雪    币: 83
活跃值: (1087)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
18
IDGHOST mark
谢谢支持
2017-4-5 14:52
0
雪    币: 83
活跃值: (1087)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
19
baile 搬凳子学习
谢谢支持
2017-4-5 14:52
0
雪    币: 83
活跃值: (1087)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
20
lhb天羽 关注中!
谢谢关注
2017-4-5 14:53
0
雪    币: 83
活跃值: (1087)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
21
OnlyForU 期待后续系列!
嗯  谢谢
2017-4-5 14:54
0
雪    币: 83
活跃值: (1087)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
22
holing 学习一个
一起学习  进步
2017-4-5 14:54
0
雪    币: 83
活跃值: (1087)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
23
appview 期待后续系列!
谢谢支持
2017-4-5 14:54
0
雪    币: 83
活跃值: (1087)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
24
FadeTrack 特权级并不是微软提出来的,保护模式也不是。讲得还蛮接地气,支持一下。
嗯    难道是intel提出的保护模式?
2017-4-5 14:55
0
雪    币: 70
活跃值: (72)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
25
killpy 嗯 难道是intel提出的保护模式?
你说是先有鸡还是先有蛋?
2017-4-5 15:30
0
游客
登录 | 注册 方可回帖
返回
//