6、内存管理:原理、工具与优化策略

内存管理:原理、工具与优化策略

1. 内存基础概念

1.1 页面状态与相关术语

虚拟内存模型下,页面有四种状态:未分配、已分配但未映射、已分配并映射到主内存、已分配并映射到物理交换设备。基于这些状态,可定义两个重要术语:常驻集大小(RSS)指映射到主内存的页面大小;虚拟内存大小是所有已分配区域的大小。

1.2 页面交换与过度分配

按需页面交换技术随分页虚拟内存支持被引入Unix BSD,后成为标准并在Linux中使用。Linux支持内存过度分配(overcommit),允许分配超过系统存储能力的内存,基于按需页面交换和应用程序不使用大部分分配内存的趋势。过度分配策略可通过参数配置,其后果取决于内核处理内存不足的方式。

1.3 进程交换与文件系统缓存

进程交换是将整个进程在主内存和物理交换设备或文件间移动的技术,源于Unix,用于管理主内存。但该技术会严重降低性能,现代Linux系统不支持,仅依赖页面交换。系统加载后内存使用增加是正常现象,因为操作系统会使用可用内存缓存文件系统以提高性能。当应用程序需要时,内核可快速释放缓存的内存。

1.4 内存使用与饱和

物理内存使用率可通过已使用内存与总内存的比例计算,文件系统缓存的内存可视为未使用,因为应用程序可随时使用。当内存需求超过主内存容量时,会出现内存饱和,操作系统可通过页面交换、进程交换(若支持)或触发OOM Killer来释放内存。虚拟内存的使用也可从使用角度研究,若系统限制虚拟内存,耗尽后内核将无法分配内存。

1.5 内存分配器与共享内存

虚拟内存支持物理内存中的多任务处

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值