首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Linux内核的解释

Linux内核的解释
EN

Unix & Linux用户
提问于 2018-09-14 12:50:59
回答 1查看 181关注 0票数 0

我想了解术语Linux Kernel和各种类型的内核的含义。例如,我想知道MicrokernelsMonolithic内核之间有什么区别。请简化这些术语,并提供例子。我听说其他系统,如Windows或Android,也都有内核。那么,内核在所有这些系统中的区别是什么呢?

EN

回答 1

Unix & Linux用户

发布于 2018-09-14 13:11:28

这个词在互联网上被很好地覆盖了!内核是一个术语,意思是the core or the central or the most important part of something。它为操作系统(OS)的所有其他部分提供基本服务。它在操作系统和硬件之间建立了一座桥梁,它有助于内存管理、中断处理、进程管理、设备管理和控制、文件系统和网络。

内核通常与shell相比较,后者是操作系统中与用户命令交互的最外层部分。内核和shell是在Linux的核心编程语言Unix中广泛使用的术语。内核不是基本的输入/输出系统(BIOS),它是存储在计算机电路板内的芯片上的独立程序。有一些类型的内核,如:microkernelsmonolithic内核以及hybrid内核。

微内核和单块内核分为两种主要架构:单块内核和微内核。这些类型之间的主要区别是它们所支持的地址空间的数量。微内核在不同的地址空间中委托用户服务和内核服务,而单块内核在相同的地址空间中实现服务。

微内核的所有服务都在内核地址空间中。单块内核更大,因为它在相同的地址空间中同时容纳内核和用户服务。

两者之间的通信协议也不同,单块内核使用更快的系统调用来执行硬件和软件之间的进程。微内核使用消息传递,它将数据包、信号和函数发送到正确的进程。

Microkernels提供了更大的灵活性;为了添加新服务,管理员可以修改用户地址空间。单块内核需要更多的工作,因为管理员必须重建整个内核以支持新服务。

由于它们的孤立性质,如果地址空间中的一个服务失败,微内核将更加安全,并且不会受到影响。单块内核给系统带来了更大的安全风险,因为如果服务失败,整个系统就会关闭。

单块内核不需要像微内核那样多的源代码,这意味着它们不太容易受到bug的影响。

基于微内核的操作系统的例子是Mac OS X, Windows NT, QNX, L4 and HURD。单块内核的例子是那些在Unix and Linux中使用的。

值得注意的是,单片核比微核要老得多,这个想法是在1980年代末S提出的。

是的,每个系统都有自己独特的核心(即内核),它们有不同的方法来处理系统资源和连接软件/硬件。

更多信息在这篇文章中:更多细节和非常有趣的文章可以在这里中找到

票数 2
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/469039

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档