为什么要学习Linux内核

  1. 提高研发出高水平的软件
  2. 开发自己的操作系统
  3. 有助于计算机科学领域研究
  4. Linux系统性能优化

Linux操作系统结构

Linux内核在系统中的位置
Linux内核并不孤立,要把它放到整个系统中去研究更容易理解,如下图所示内核在操作系统中的位置
在这里插入图片描述
Linux内核子系统之间关系
Linux内核由五大主要子系统,它们之间有如下关系:
在这里插入图片描述
系统数据结构
在Linux内核中,有些使用频度较高的数据结构如下:
task_struct:代表一个进程数据结构指针形成一个task数组。
mm_struct:代表进程的虚拟内存。
inode:代表虚拟文件系统中的文件、目录等对应的索引节点(inode)。

Linux内核源码组织

为了深入地了解Linux的实现机 制,还必须阅读Linux的内核源代码, 下面是对有关源代码的介绍。内核源代 码的版本多,对不同的内核版本,系统 调用一般是相同的。新版本也许可以增 加一个新的系统调用,在大多数情况下, 设备文件将仍然相同,而另一方面,版 本之间的内部接口有所变化。
Linux内核版本有两种:稳定版和开发板,Linux内核版本号由3组数字组成,
第一组数字:目前发布的内核主版本;
第二组数字:偶数表示稳定版本,奇数表示开发中的版本;
第三组数字:错误修补次数
请添加图片描述

Linux内核的特征

  1. Linux内核组织形式为整体式结构
  2. 进程调度方式简单而有效
  3. 支持内核线程(或称为守护进程)
  4. 支持多种平台的虚拟内存管理
  5. 虚拟文件系统
  6. 模块机制
  7. 增加系统调用
  8. 面向对象
Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐