Linux内核体系结构简单介绍

2014-11-24 02:09:09 · 作者: · 浏览: 2

  1.Linux 内核简介


  现在让我们从一个比较高的高度来审视一下 GNU/Linux 操作系统的体系结构。您可以从两个层次上来考虑操作系统,如图 1 所示。


 GNU/Linux 操作系统的基本体系结构


图 1. GNU/Linux 操作系统的基本体系结构


  最上面是用户(或应用程序)空间。这是用户应用程序执行的地方。用户空间之下是内核空间,Linux 内核正是位于这里。


  GNU C Library (glibc)也在这里。它提供了连接内核的系统调用接口,还提供了在用户空间应用程序和内核之间进行转换的机制。这点非常重要,因为内核和用户空间的应用程序使用的是不同的保护地址空间。每个用户空间的进程都使用自己的虚拟地址空间,而内核则占用单独的地址空间。


  Linux 内核可以进一步划分成 3 层。最上面是系统调用接口,它实现了一些基本的功能,例如 read 和 write。系统调用接口之下是内核代码,可以更精确地定义为独立于体系结构的内核代码。这些代码是 Linux 所支持的所有处理器体系结构所通用的。在这些代码之下是依赖于体系结构的代码,构成了通常称为 BSP(Board Support Package)的部分。这些代码用作给定体系结构的处理器和特定于平台的代码。


  在Linux 内核中,包括了


  进程管理(process management)


  定时器(timer)


  中断管理(interrupt management)


  内存管理(memory management)


  模块管理(module management)


  虚拟文件系统接口(VFS layer)


  文件系统(file system)


  设备驱动程序(device driver)


  进程间通信(inter-process communication)


  网络管理(network management)


  系统启动(system init)等操作系统功能的实现。