Linux内核学习—操作系统基础概念
(本节记录一些操作系统的很基本的知识,比较琐碎,之后将详细对每一模块进行学习)
内核
内核是硬件和软件之间的一个中间层,主要作用是将应用程序的请求传给硬件,并充当底层驱动程序,对系统中的各种设备和组件进行寻址。当操作系统启动时,内核被装入到RAM中,内核中包含的是系统运行所必不可缺的核心过程。资源管理程序
内核的两个目标:(软硬件之间的媒介)
- 与硬件交互,为包含在硬件平台上的所有低层可编程部件提供服务
- 为运行在计算机系统上的应用程序提供执行环境
内核分为微内核和宏内核
-
微内核:只将最基本的功能由中央内核实现,其他功能都委托给独立的系统进程。
微内核的优点:动态可扩展性强,可以在运行时切换重要组件,充分利用了RAM(暂时不需要执行的系统进程可以被暂时调出或撤销)
缺点:各个组件之间通信需要额外的CPU时间
-
宏内核:将内核所有代码打包在同一个文件中
Linux为了达到微内核的优点但不影响性能,提供了模块的方法。模块可以插入到内核代码,实现一些内核功能,也可以移出,这使得模块的动态装载得以实现。任何模块都可以在运行时被链接或解除链接,可以节省内存使用,且无性能损失。