Linux操作系统 应用型高等教育网络类课程规划教材 袁宝华 第5章 Linux存储器管理全文-大学.pptxVIP

  • 1
  • 0
  • 约4.34千字
  • 约 20页
  • 2023-11-18 发布于河南
  • 举报

Linux操作系统 应用型高等教育网络类课程规划教材 袁宝华 第5章 Linux存储器管理全文-大学.pptx

55..11 LLiinnuuxx的的虚虚拟拟内内存存管管理理 55..22 LLiinnuuxx系系统统采采用用三三级级页页表表 55..33内内存存页页的的分分配配与与释释放放 55..44内内存存交交换换 55..55内内存存共共享享和和保保护护 55..66缺缺页页中中断断 55..77监监控控内内存存软软件件 尚辅网 第五章 Linux存储器管理 4/30/2021 5. 1 Linux存储器管理 Linux操作系统采用虚拟内存管理机制管理存储 资源为多进程提供有效共享 。Linux 操作系统使用交 换和请求分页存储管理技术实现虚拟内存管理。 这种策略使进程的虚拟地址空间映射到机器的物 理空间时具有更大的灵活性 , 通常允许进程的大小可 大于可用内存的总量 , 允许更多进程同时在内存中执 行。 4/30/2021 尚辅网 2 5. 1 linux的虚拟内存管理 Linux 的虚拟内存管理功能: (1)地址空间扩充。 (2)进程保护。 (3)内存映射。 (4)物理内存分配。 4/30/2021 尚辅网 3 5.2 Linux 系统采用三级页表 所有进程从3~4GB的虚拟内存地址都是一样的, 有相同的页目录项和页表 , 对应到同样的物理内存段, Linux以此方式让内核态进程共享代码段和数据段。 Linux采用请求页式技术管理虚拟内存。 4/30/2021 尚辅网 5.2 Linux 系统采用三级页表 Linux页表分为3级结构: 页目录(Page Directory , PGD) 中间页目录(Page Middle Directory , PMD) 页表(Page Table , PT)。 4/30/2021 尚辅网 5 5. 3 内存页的分配与释放 当一个进程开始运行时 , 系统要为其分配一些内 存页; 当进程结束运行时 , 要释放其所占用的内存页。 一般地 , Linux系统采用位图和链表两种方法来管理内 存页。 位图可以记录内存单元的使用情况 。它用一个二 进制位(bit)记录一个内存页的使用情况: 如果该内存 页是空闲的 , 则对应位是1; 如果该内存页已经分配 出去 , 则对应位是0。 4/30/2021 尚辅网 6 5. 4内存交换 当系统出现内存不足时 , Linux 内存管理子系统就 要释放一些内存页 , 从而增加系统中空闲内存页的数 量。 在系统启动时 , 这一守护进程由内核的INIT进程 启动 , 按核心交换时钟开始或终止工作 。每到一个时 钟周期结束 , kswap d便查看系统中的空页内存块数, 通过变量free_pages_high和free_pages_low来决定是否 需要释放一些页面。 4/30/2021 尚辅网 7 5. 4内存交换(续) 使用下列3种方法减少系统中正在使用的物理页面。 (1)减少缓冲区和页面cache的大小。 (2)换出SYSTEMV的共享内存页。 (3)换出或丢弃内存页面。 4/30/2021 尚辅网 5. 5 内存共享和保护 Linux中内存共享是以页共享的方式实现的 , 共 享该页的各个进程的页表项直接指向共享页 , 这 种共享不需建立共享页表 , 节省内存空间 , 但效 率较低。 Linux可以对

文档评论(0)

1亿VIP精品文档

相关文档