当前位置:首页 > 内存 > 正文

linux内存管理的方式(深入理解linux内存管理)

  • 内存
  • 2024-06-03 14:10:08
  • 6201

一、linux内核物理内存管理有哪些常用算法Linux内核主要由进程调度、内存管理、虚拟文件系统、网络接口、进程间通信五个子系统组成。
1.进程调度(SCHED):控制进程对CPU的访问
。当需要选择下一个要运行的进程时,调度程序会选择最合适的进程来运行。可运行进程实际上是一个只等待CPU资源的进程,如果一个进程正在等待其他资源,那么它就是一个不可运行进程。Linux使用相对简单的基于优先级的进程调度算法来选择新进程。
2.内存管理(MM)允许多个进程安全地共享主内存区域。Linux
内存管理支持虚拟内存,即计算机中运行的代码、数据和程序堆栈的数量可以超过实际内存的大小。操作系统负责在必要时在磁盘和内存之间交换程序块。内存管理在逻辑上分为与硬件无关的部分和与硬件相关的部分。与硬件无关的部分提供进程映射和逻辑内存交换,而与硬件相关的部分为内存管理硬件提供虚拟接口。
3.虚拟文件系统(VirtualFile
System,VFS)隐藏了各种硬件的具体细节,为所有设备提供统一的接口。VFS提供了几十种不同的文件系统。虚拟文件系统可以分为逻辑文件系统和设备驱动器。逻辑文件系统是指Linux支持的文件系统,如ext2、fat等。设备驱动程序是指为每个硬件控制器编写的设备驱动程序模块。4.网络接口(NET)提供对各种网络标准的访问并支持各种网络硬件。网络接口可分为网络协议和网络驱动程序。网络协议部分负责实现每种可能的网络传输协议。网络设备驱动程序负责与硬件设备进行通信,每一种可能的硬件设备都有对应的设备驱动程序。5.进程间通信(IPC)支持各种进程间通信机制。