Linux 内核Linux 内核体系架构 ( 进程调度 | 内存管理 | 中断管理 | 设备管理 | 文件系统 )

Posted 韩曙亮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux 内核Linux 内核体系架构 ( 进程调度 | 内存管理 | 中断管理 | 设备管理 | 文件系统 )相关的知识,希望对你有一定的参考价值。

文章目录





一、进程调度



进程调度 :

进程 是 系统中 进行 资源分配 的 基本单位 ;

每个进程 在 运行时 , 都 感觉自己占有 全部硬件资源 ,

实际上 , 进程 不会 长时间独占 某个资源 ,

操作系统 , 利用 进程调度器 , 令 多个进程 并发执行 ;


Linux 内核 没有 严格区分 进程 与 线程 ;


进程管理 : 包括 进程创建 , 销毁 , 线程组管理 , 内核线程管理 , 队列等待 ;


进程调度 位于 下图 Linux 内核整体架构图 中的 内核空间 ;





二、内存管理



内存管理 涉及到 物理内存管理虚拟内存管理 , 是 Linux 内核中 最复杂的模块 ;


虚拟内存管理 包括 : 反向映射 , KSM , MMAP 映射 , 缺页中断 , 共享内存 , 进程虚拟地址空间管理 , 页面回收 ;

物理内存管理 包括 : 页面分配器 等 ;


内存管理 位于 下图 Linux 内核整体架构图 中的 内核空间 ;





三、中断管理



中断管理 包括 : 处理器异常处理 , 中断处理 ;

异常指的是 处理器执行时 , 检测 异常条件 , 处理器需要停止当前执行的栈 , 处理异常 ;


中断管理 位于 下图 Linux 内核整体架构图 中的 内核空间 ;





四、设备管理



Linux 内核 支持的外设类型 是最多的 ,

  • 设备树
  • PCI 总线设备
  • 设备模型 Kobject
  • ACPI
  • 网络设备驱动
  • 块设备驱动
  • 字符设备驱动

设备管理 位于 下图 Linux 内核整体架构图 中的 内核空间 ;





五、文件系统



文件系统应用场景 :

  • F2FS
  • EXT 2/3/4
  • XFS

Linux 内核 为了支持各种文件系统 , 抽象出一个 虚拟文件系统 VFS , 这是一个文件系统的软件层 , 这样 Linux 内核可以很方便的集成各种文件系统 ;


文件系统 位于 下图 Linux 内核整体架构图 中的 内核空间 ;

以上是关于Linux 内核Linux 内核体系架构 ( 进程调度 | 内存管理 | 中断管理 | 设备管理 | 文件系统 )的主要内容,如果未能解决你的问题,请参考以下文章

Linux内核系统体系概述

Linux 内核 内存管理memblock 分配器 ⑤ ( Linux 内核中定义 memblock 分配器的位置 | ARM64体系架构下 Linux内核初始化 memblock 分配器流程 )

Linux内核分析学习总结

Linux 内核 内存管理Linux 内核内存布局 ④ ( ARM64 架构体系内存分布 | 内核启动源码 start_kernel | 内存初始化 mm_init | mem_init )

Linux 内核 内存管理Linux 内核内存布局 ② ( x86_64 架构体系内存分布 | 查看 /proc/meminfo 文件 | /proc/meminfo 重要字段解析 )

Linux课程实验总结