内核是管理计算机和硬件操作的操作系统的核心组件。它主要管理内存和 CPU 时间的操作。它是操作系统的核心组件。内核充当应用程序和使用进程间通信和系统调用在硬件级别执行的数据处理之间的桥梁。
内核在操作系统加载时首先加载到内存中,并保持在内存中,直到操作系统再次关闭。它负责磁盘管理、任务管理、内存管理等各种任务。
它决定哪个进程应该分配给处理器执行,哪个进程应该保存在主内存中执行。它基本上充当用户应用程序和硬件之间的接口。内核的主要目标是管理软件(即用户级应用程序)与硬件(即 CPU 和磁盘内存)之间的通信。
内核的目标:
- 在用户级应用程序和硬件之间建立通信。
- 决定传入进程的状态。
- 控制磁盘管理。
- 控制内存管理。
- 控制任务管理。
内核类型:
1. 单片内核 –
它是所有操作系统服务都在内核空间中运行的内核类型之一。它在系统组件之间具有依赖性。它有大量复杂的代码行。
例子 :
Unix, Linux, Open VMS, XTS-400 etc.
- 优势 :
它具有良好的性能。 - 坏处 :
它在系统组件和数百万行代码之间具有依赖性。
2. 微内核——
它是具有极简方法的内核类型。它具有虚拟内存和线程调度。它更稳定,内核空间中的服务更少。它把休息放在用户空间。
例子 :
Mach, L4, AmigaOS, Minix, K42 etc.
- 优势 :
它更稳定。 - 坏处 :
有很多系统调用和上下文切换。
3. 混合内核 –
它是整体内核和微内核的结合。它具有单片内核的速度和设计以及微内核的模块化和稳定性。
例子 :
Windows NT, Netware, BeOS etc.
- 优势 :
它结合了单片内核和微内核。 - 坏处 :
它仍然类似于单片内核。
4. Exo 内核 –
它是遵循端到端原则的内核类型。它具有尽可能少的硬件抽象。它为应用程序分配物理资源。
例子 :
Nemesis, ExOS etc.
- 优势 :
它具有最少的硬件抽象。 - 坏处 :
应用程序开发人员还有更多工作要做。
5. 纳米内核 –
它是提供硬件抽象但不提供系统服务的内核类型。微内核也没有系统服务,因此微内核和纳米内核变得类似。
例子 :
EROS etc.
- 优势 :
它提供没有系统服务的硬件抽象。 - 坏处 :
它与微内核完全相同,因此使用较少。