Skip to content

Latest commit

 

History

History
13 lines (8 loc) · 1.72 KB

linux的内存管理机制内存寻址方式什么叫虚拟内存内存调页算法任务调度算法.md

File metadata and controls

13 lines (8 loc) · 1.72 KB

内存管理机制:Linux使用分段和分页的混合方式进行内存管理。Linux将每个进程的虚拟地址空间划分为若干个段每个段下面有若干个大小固定的页面,而物理内存也被划分为若干个页。通过建立从虚拟页到物理页帧的映射,来实现对内存的管理。(物理内存并非段页式!而是纯分页进行管理

内存寻址方式: Linux使用虚拟内存寻址方式,每个进程都有其独立的虚拟地址空间,这些地址用于指向该进程的代码、数据和堆栈等内容。操作系统通过维护一个页表来管理虚拟地址和物理地址之间的映射关系。

虚拟内存: 虚拟内存是一种内存管理技术,它允许一个进程使用的地址空间能超过实际存在的物理内存。当进程要访问的内存不在物理内存中时(产生缺页中断),就会从硬盘上的交换区载入所需的内存页。

内存调页算法: Linux使用的是二次机会算法(Second Chance Algorithm,也称为Clock置换算法)。该算法在FIFO算法的基础上增加了访问位,并采用了类似时钟的循环队列,降低了页面置换的频率,提高了性能。

任务调度算法:Linux主要有以下几种任务调度算法:

  • 完全公平调度器(CFS):它是Linux默认的进程调度器,使用红黑树来存储待调度的进程,保证每个进程得到公平的CPU时间片。
  • 实时调度器:包括FIFO调度策略和轮询(RR)调度策略,主要用于需要硬实时或者软实时的系统。
  • Deadline调度器:针对实时任务,采取动态优先级(越接近deadline,优先级越高)的方式,确保任务在deadline前完成。