内核第一讲,内核简介
内核第一讲,内核简介
内核第一讲,内核简介
一丶了解内核的基本名词和概念.
讲解内核了,讲解之前,抱着问题学习.
1.什么是内核.什么是驱动.
宏内核,微内核之间的区别.以及是什么是宏内核,什么是微内核.
内核:
内核的本质就是操作系统.学习操作系统原理.通过分析微软的系统来达到学习内核底层的知识.
驱动:
驱动是可以访问硬件进行操作的.访问ring0 空间.
比如:
我的电脑 – 属性 – 设备管理器.可以看到.
这些都是键盘的驱动.如果没有了这些驱动,则无法操作键盘.
再比如显卡. 如果我们屏幕上显示东西,那么只需要往固定地址写内容即可显示.
宏内核:
什么是宏内核,宏内核代表就是(Linux)系统.追求性能为主. 简而言之代码都放在0环执行
微内核:
什么是微内核,微内核的代表就是(Minix),追求维护性. 简而言之代码都放在三环执行.
微内核著名的设计就是动态链接库 俗称DLL.
而现在宏内核也支持动态链接库的设计了.所以没有谁好谁坏.都在找一个平衡点.
windows系统则是定位为微内核.但是是微内核和宏内核的混合.
二丶了解高低2G空间,(Ring0 和Ring3)
我们都知道操作系统代码(内核代码)都会放在 Ring0空间中,这个是用户不能访问的.而用户的应用程序则放在 Ring3中.
那么这个是可以设置的.在 xp下.可以通过 boot.ini 文件进行设置.这样可以设置用户空间可以是3G,或者任意G,只需要让操作系统重启运行起来即可.
在Win7下,则需要CMD命令进行设置了.(简单了解即可)
三丶学习内核知识应该应该从哪里开始学习.
学习内核知识,应该从内存保护开始学习.学习它是怎么进行保的.以及要了解硬件.
比如我说了往固定内存写二进制会显示数据.那么你要了解硬件,往那个固定地址写内容.
学习内核之前,应当下载inter手册
还需要配套视频观看,因为内核知识,不是说在博客上写文字就能描述清楚的.(尽量描述的简单易懂)
讲解内核,会讲完32内核,然后讲解64位内核.
课堂代码资料: 链接:https://pan.baidu.com/s/1eSjfOLs 密码:r8hm
转载请著名出处,原博客连接: http://www.cnblogs.com/iBinary/