欢迎来到天天文库
浏览记录
ID:44588471
大小:189.52 KB
页数:15页
时间:2019-10-23
《【精品】AIX虚拟内存管理器-推荐》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、AIX®虚拟内存管理器(AIXVMM)是一种基于分页的虚拟内存管理器。一个分页就是一个固定大小的数据块。分页既口J以位于内存中(也就是说,映射到物理内存屮的某个位置)、也可以位于磁盘屮(也就是说,从物理内存屮替换到分页空间或者文件系统)。AIXVMM冇一个非常独特的方而,即缓存的文件数据的管理。AIXVMM将缓存的文件数据与对其它类型虚拟内存(例如,进程数据、进程堆栈等等)的管理集成到了一起。它将文件数据缓存为分页,就如同进程的虚拟内存一样。AIX根据需耍将分页映射到实际内存。如果应用程序引用了某个分页,而该分页并没有映射到实际内存屮,那么系统将产生一个缺页。为了解决缺页,AIX内核会将所引用
2、的分页加载到实际内存小的某个位置。如果所引用的分页是-•个新的分页(也就是说,位于先前从未引用过的进程数据堆中的分页),那么”加载“所引用的分页只需耍用零来填充一个实际内存位置(也就是说,提供一个填满零的分页)。如果所引用的分页是一个预先存在的分页(也就是说,文件中的某个分页、或者先前换出的某个分页),那么加载所引用的分页需要从磁盘(分页空间或者磁盘文件系统)小将该分页读入到实际内存小的某个位置。在将分页加载到实际内存中Z后,它将被标记为未经修改的。如果某个进程或者内核修改了该分页,那么该分页的状态将更改为已修改的。这允许AIX跟踪在将某个分页加载到内存之后是否对其进行过修改。随着系统将更多的
3、分页添加到实际内存中,实际内存中空闲位置(可以包含分页)的数目将会减少。也可以将空闲位置的数目称为空闲分页框架的数目。当空闲分页框架的数目达到某个较低的值时,AIX内核就必须清空实际内存中的某些位置,以便重用新的分页。这个过程也称为分页替换。AIXVMM提供了一•些后台守护进程,专门负责进行分页替换。其中一个分页替换守护进程称为lrud(显示为ps-k的输出中的lrud)olrud守护进程负责在内存分页小进行扫描,并回收某些分页以便为实际内存腾出空间。当分页替换守护进程确定它希望冋收某个特定的分页时,这个分页替换守护进程将执行下面两项操作中的一项:•如杲该分页经过了修改,那么分页替换守护进程将
4、该分页写入到辅助存储位置(例如,分页空间或者文件系统磁盘)。将包含该分页的物理内存块标记为空闲,并为其它的分页做好重用的准备。•如果该分页没有经过修改,那么分贝替换守护进程可以简单地将物理内存块标记为空闲,这样一来,就可以将该物理内存块重用于另一个分页。在这种情况卜,分页替换守护进程不需耍将该分页写入到磁盘,因为该分页在内存中的版本并没冇经过修改,因此与位于磁盘中(在分页空间中、或者在磁盘文件系统屮)的分页副木完全相同。分页替换守护进程可以根据系统内存的使用情况和可调参数,选择不同类型的分页进行回收。本文剩下的部分将详细地介绍分页替换守护进程如何选择耍进行M收的分页。分页类型从木质上看,AIX
5、中一共有两种分页类型:•工作存储分页(Workingstoragepages)•永久存储分页(Permanentstoragepages)工作存储工作存储分页是一些包含易一变'数据(换句话说,即重新启动后将不复存在的数据)的分页。在其他的平台屮,工作存储内存有吋也称为倚「名内存。下面提供了一些由工作存储分页组成的虚拟内存区域的示例:•进程数据•堆栈•共享内存•内核数据当需要将经过修改的工作存储分页替换出(从内存移动到磁盘)时,它们将被写入到分页空间。不会将工作存储分页写入到文件系统。当进程退出时,系统将释放其所有的私有工作存储分页。因此,当进程退出时,系统将释放进程数据和堆栈的工作存储分页。对
6、于共享内存区域,直到删除共享内存区域之后,才会释放其工作存储分页。永久存储永久存储分页是一些包含永久数据(也就是说,重新启动后仍然存在的数据)的分页。这种永久数据就是文件数据。I大I此,永久存储分页就是缓存在内存中的部分文件。当经过修改的永久存储分页需要换出(从内存移动到磁盘)的时候,会将它写入到文件系统中。如前所述,可以直接释放没有经过修改的永久存储分页,无需将英写入到文件系统屮,因为文件系统包含该数据的原始副本。例如,如果一个应用程序止在读取某个文件,那么该文件数据将缓存于永久存储分页的内存中。这些永久存储分页没有经过修改,这意味着并没冇在内存中对这些分页进行修改。因此,内存屮的永久存储分
7、页与磁盘屮的文件数据完全相同。当AIX需要清空内存的时候,它只需要“释放”这些分页即可,而不将任何内容写入到磁盘。如果应用程序对某个文件进行写操作(而不是读操作),那么永久存储分页将是”经过修改的”,并且AIX必须在释放这些分页2前将其刷新到磁盘。您可以将永久存储分页划分为两种子类型:•客户端分页•非客户端分页非客户端分页是-些包含缓存的日志文件系统(JFS)文件数据的分页。非客户端分页有时也称为
此文档下载收益归作者所有