读书笔记---驱动、微内核和宏内核
驱动
广义:这一段代码操作了硬件驱动,所以这一段代码就叫硬件的驱动程序。(本质上是电力提供了动力,而驱动程序提供了操作逻辑方法)
狭义:驱动程序就是专指操作系统中用来操控硬件的逻辑方法部分代码。
微内核和宏内核
(1)宏内核(又称单内核):将内核从整体上作为一个大过程实现,并同时运行在一个单独的地址空间。所有的内核服务都在一个地址空间运行,相互之间直接调用函数,简单高效。
(2)微内核:功能被划分成独立的过程,过程间通过IPC进行通信。模块化程度高,一个服务失效不会影响另外一个服务。典型如windows
(3)linux:本质上是宏内核,但是又吸收了微内核的模块化特性,体现在2个层面
静态模块化:在编译时实现可裁剪,特征是想要功能裁剪改变必须重新编译
动态模块化:zImage可以不重新编译烧录,甚至可以不关机重启就实现模块的安装和卸载。