- 1
- 0
- 约4.34千字
- 约 20页
- 2023-11-18 发布于河南
- 举报
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可以对
您可能关注的文档
最近下载
- 2025-2026二手房行业研究报告.doc VIP
- 2026龙飞平面图形推理基础理论➕百大图形3.0版本.pdf VIP
- 2026马年幸运大抽奖PPT模板.pptx VIP
- 智研咨询—中国无人靶机行业市场全景调查、投资策略研究报告.docx VIP
- 第1-13届北方数学奥林匹克数学试题及解答.pdf VIP
- 门诊统筹基金分析报告.pptx VIP
- 电光KBZ16-400 1140(660) (WZBK-6D)矿用隔爆型型真空馈电开关说明书.pdf VIP
- 聚酯切粒机培训课件.pptx VIP
- 园林植物病虫害防治课件共104张PPT).pptx VIP
- DB44/26-2001水污染物排放限值.pdf VIP
原创力文档

文档评论(0)