Linux Vs UNIX - 内核 - 如何理解差异?

Linux Vs UNIX - 内核 - 如何理解差异?

20 世纪 80 年代,出现了两种最流行的操作系统,

1)系统V由 AT&T 创建

2)BSD创建于加州大学伯克利分校

一些BSD变种是OpenBSD、FreeBSD、MAC OS X

一些系统V变体有 AIX/HP-UX/Solaris


Linux于 1991 年创建,由以下材料制成:

GNU工具(用户空间)+Linux内核(内核空间)


比较UNIX 内核 vs GNU hurd vs Linux 内核,基本的/相关的UNIX/Linux 内核用户所知道的区别在于内核集成(构建)策略方法,

在 UNIX 中、核心内核和服务层(如 MemoryMgmt/ProcessMgmt/IPC/..)被静态编译和链接以创建内核可执行文件。单个静态二进制文件。

在 GNU 赫德,核心内核仅构建为静态可执行文件,服务构建为动态模块。在启动时核心内核被加载并驻留在内存中。核心内核将在需要时动态加载服务层。当不需要服务时,服务将被卸载。具有可加载模块的内核。

优点/缺点:

  • 单个静态二进制文件的响应时间较短。
  • 具有可加载模块的内核具有更长的响应时间
  • 单个静态二进制文件占用更多内存,因为足迹携带所有服务的完整静态图像
  • 具有可加载模块的内核占用更少的内存

Linux内核集成(构建)策略称为“模块化内核”,它是上述两种策略的混合。希望你有理由提及GNU赫德


Linux/UNIX 内核的机制,1) 内核及其服务的工作 2)向用户提供接口(shell和系统调用),始终相同,如下所示,

在此输入图像描述


所以,对于 Linux/UNIX 内核用户来说,

1)更重要的是了解方面的差异内核集成(构建)策略方法。

2)如果UNIX和Linux内核的机制是相同的,那么,我们可以进一步思考不太重要 所谈论的方面不同的实现使用 C 的服务层(Memory_mgmt_policy/drivers/FileSytems/.....)。为什么不那么重要?因为,这是对 Linux/UNIX 内核用户的抽象,并且每个操作系统的实现总是有所不同(永远不会相同),并且也会随时间而变化。


我的问题:

要了解Unix与Linux内核的区别,您同意(上面)提到的两个原因吗?

如果不是,请纠正我。

相关内容