191红皮书第六章-页面管理

发表于:2007-07-01来源:作者:点击数: 标签:
7 系统页面空间 系统把物理内存作为工作空间,把交互数据和程序放到磁盘上.这些空间就是页面空间. 7.1页面空间概览 页面有4k容量,可以在物理内存和辅助存储之间传输,是虚拟内存的单位.页面空间也可以被称为交换空间.是属性类型为paging的LV. 系统安装时创建的


7 系统页面空间
系统把物理内存作为工作空间,把交互数据和程序放到磁盘上.这些空间就是页面空间.
7.1页面空间概览
页面有4k容量,可以在物理内存和辅助存储之间传输,是虚拟内存的单位.页面空间也可以被称为交换空间.是属性类型为paging的LV.
系统安装时创建的默认页面LV是hdisk0上的hd6,也叫主页面空间.
默认的页面空间在系统安装的自定义阶段按以下标准建立:
1.页面空间不能少于16M,只能在hd6上,AIX4.2.1中不少于32M,AIX4.3以后不少于64M
2.页面空间不能多于所有磁盘空间的20%;
3,如果实际内存少于256M,交换空间是实际内存的两倍;
4.如果实际内存不少于256M,页面空间是512M.
页面空间要点:
被应用程序要求的页面空间的数量取决于在系统上完成的活动类型.如果页面空间减少,进程可能被丢掉,如果页面空间用完,系统就会紧张.当页面空间不足出现的时候,系统监视自由页面空间的块数.vmstat 和topas命令可以获得这种情况下的统计量.当空闲页面空间块数低于警戒水平的时候,系统通知除核心进程以外的所有进程出现了页面空间不足的情况.
1.页面空间的位置
页面空间的I/O是随机的并且通常是一次I/O一个页面.vmstat和topas命令的报告页面空间I/O发生的数量: vmstat [ -f ] [ -i ] [ -s ] [ PhysicalVolume ... ] [ Interval [ Count ] ]
要提高换页性能,应该使用多页面并尽可能把它们安排在不同的PV上.可以把多个页面都放在一个PV上,但是不建议这么做.
2.页面大小
通常建议在内存空间小于256M的情况下页面空间总和应该不小于物理内存的2倍大小.而对于内存大于256M的情况: PGsize=512M+(memory size-256M)×1.25
理想情况下,应该有几个大致相同大小的页面空间分别在不同的物理盘上.如果要创建新的页面空间,把它们创建在轻荷的PV上,不要放在rootvg的PV中.
系统引导时,只有主页面空间是活动的.因此,引导时分配的块都在主页面.这意味着,主页面空间应该比次页面空间要大一点.次页面空间应该是相同大小的,以确保round-robin算法有效工作.
lsps –a命令提供系统中每个页面空间的一个当前应用快照,而lsps –s命令提供所有活动页面空间及其当前应用的摘要.
3.VG拥有页面空间的限制
在AIX5.1以前的版本上要避免把页面空间设置到移动盘的VG上.移除一个有页面的在线磁盘要求重启来去活页面.
注意,在先于5.1的版本中,一个有PG卷的VG中的页面活动时,该卷不能被varyoff或export,在去活该VG之前,先确认在系统引导时这些页面不会被自动激活,然后重启,然后再操作.
7.2管理页面空间
有以下命令管理页面空间:
chps改变一个页面空间的属性
lsps显示一个页面空间的属性
mkps创建一个页面空间
rmps删除一个页面空间
swapon激活一个页面空间
swapoff去活一个或多个页面空间
swapon命令被用于在系统初始化(/sbin/rc.boot)早期激活初始页面空间设备.在后期,其它设备变为可用,该命令被用于激活其它页面空间以便于页面活动在多个设备中出现.
活动页面空间不能被删除.要删除一个活动页面空间,必须首先被去活.在4.3及以前版本使用chps命令可以使该页面空间不能在下次启动后使用.重启后,可以用rmps命令移除.在5.1版本中,使用swapoff命令动态地去活页面空间,然后用rmps命令.
注意:4.3及以前版本的系统中做任何删除页面的操作都要重启,所以,要计划好时间.
被swapon –a命令激活的页面设备被列在/etc/swapspaces文件中.当页面空间用mkps –a命令创建的时候,就被加入到该文件中,用rmps命令删除的时候,就从该文件中删除.用chps –a操作的时候,该文件也做出相应的修改.
7.2.1显示页面空间属性
lsps命令显示页面空间的属性,如页面空间名字/PV名/VG名/大小/使用百分比/是否活动/是否自动激活等.
lsps { -s | [ -c | -l ] { -a | -t { lv | nfs } | PagingSpace } }
-c参数以冒号格式和在PP中的页面大小来显示信息colon
-s显示所有页面空间总结summary
-a显示所有页面空间属性all
-l列表方式list
-t指定页面空间的类别:type,有lv或nfs
7.2.2加入并激活一个页面空间
1.运行smitty mkps;
2.选择一个要加入的卷组,如rootvg;
3.输入要加入的页面的大小(以LP计算,如LP是4M一个,要加20M,则输入5);
4.选择是否要立即使用该页面,填入yes或按下F4选择;
5.选择是否每次启动系统使用该页面,选yes;
6.回车创建.
此时会显示是否创建成功,按F10退回命令行方式.可以用lsps –a检查是否设置成功.
7.2.3改变页面空间属性
可以改变两个属性:为下次启动去活或激活页面空间;增加一个已有的页面空间的大小.
5.1版增加了去活页面的能力,可以不用重启改变页面空间大小.以下是5.1版以前的去活步骤:
1.运行smitty chps
2.选择要改变的页面空间;
3.选择是否每次启动都使用该页面空间,选择no;
4.回车改变;
改变完以后,会有成功的提示,按F10退出smit.重启机器后运行lsps –a命令确认被改变的页面空间已经去活.
5.1版中动态去活一个页面空间.swapoff命令:swapoff DeviceName {DevideName…..},如swapoff /dev/paging03可以去活paging03,也可以使用smitty swapoff命令.要注意的是,去活所有的使用中的页面要把页面移动到其它活动页面中,因此其它页面中必须有足够的空间.
增加页面大小:
1.运行smitty chps;
2.选择要增加的页面空间;
3.输入要增加的LP数;
4.按回车改变;
运行成功后,按F10退出smit;再用lsps –a确认页面已经增加.
减少页面大小
5.1版有chps –d命令可以减少一个页面的大小而不去活该页面,也不必重启,更不必删除再重建.如要减少pg03两个LP:chps –d 2 pg03,显示结果如下:
shrinkps: Temporary paging space paging04 created.
shrinkps: Paging space paging03 removed.
shrinkps: Paging space paging03 recreated with new size.
7.2.4删除除hd6以外的页面
在4.3以前的版本中,用rmps.要注意:不正确地删除默认页面空间可以防止系统重启.这个操作只有有经验的系统管理员才能尝试.在删除一个页面之前,必须去活页面,这要求重启.用sysdumpdev –l检查使用的主dump设备.不能删除默认的dump设备,在删除这个页面空间之前必须改变默认的dump设备到另外的页面空间或LV:sysdumpdev –P –p /dev/NewDumpDev.
删除一个PS:
1.改变要删除的PS的活性,使它下次启动不至于重新激活.
2.重启机器,shutdown –Fr;
3.启动后执行smitty rmps;
4.按F4得到页面LV的列表;
5.选择要删除的PS,回车;
6.警告消息,回车;
7.回车删除,提示符显示OK则成功.
在AIX5.1版中,先执行swapoff,再删除PS:rmps
7.2.5移动默认PS(hd6)
移动默认PS可能有两个好处:1.平衡磁盘负载,提高存储系统性能;2.保存hdisk0上的磁盘空间.在删除hd6时,需要一个特殊的步骤.该页面空间是在引导过程中被配置系统的shell脚本激活的,所以,要删除hd6,这些脚本必须被修改,并且要创建一个新的启动镜象.
减少hd6的大小
注意:AIX4.2.1及以后的版本不支持低于32M的hd6,否则系统不能引导.如果决定减少hd6,必须为软件留出足够的空间.减少hd6重要的一条是要留出足够的空间匹配内存.用以下命令找出内存大小:lsattr –E –l sys0 –a realmen
减少hd6的步骤:
1.在rootvg创建一个临时页面空间:mkps –a –n –s 30 rootvg hdisk0,结果会输出创建的页面空间的名字,记下该名字.
2.去活hd6:chps –a n hd6
3.改变/sbin/rc.boot文件中关于hd6的条目:swapon /dev/hd6 将hd6改为刚创建的PS.
4.用sysdumpdev –l检查主dump设备名称;
5.如果主设备为hd6,改变到其它页面空间,如改变到刚创建的pg00上:
sysdumpdev –P –p /dev/pg00
6.用bosboot创建一个引导镜象:bosboot –d /dev/hdisk0 –a;
7.重新启动:shutdown –r;
8.系统启动后删除hd6: rmps hd6;
9.为hd6创建新的页面空间LV: mklv –t paging –y hd6 rootvg 30 (120M);
10.使用lsps –a检查缩小后的hd6;
11.把主dump设备名改回hd6: sysdumpdev –P –p /dev/hd6;
12.改变/sbin/rc.boot文件中的条目:swapon /dev/pg00为swapon /dev/hd6;
13.为该盘重建启动镜象: bosboot –d /dev/hdisk0 –a;
14.使新hd6页面在启动时自动激活:chps –a y hd6;
15.改变临时PS的属性,使其不再自动激活:chps –a n pg00;
16.正常重启系统: shutdown –r;
17.系统重启后删除临时PS: rmps pg00.
在AIX5.1中减少hd6:可以使用chps –d动态减少hd6的大小.该命令会防止hd6减少到低于32M的水平或实际删除它.如果减少hd6, 指向这个临时主页面空间的临时引导镜象和一个临时的/sbin/rc.boot条目就会建立,以确保系统总是总是在一种可以安全引导的状态.
把hd6页面空间移动到另外一个VG:不推荐移动hd6,因为这个名字在几个地方是固定编码的.在系统引导的第二阶段,只有在rootvg中的PS被激活,如果rootvg中没有PS,将严重影响系统引导性能.如果想要大多数PS在其它VG上,最好让hd6尽可能地小(与物理内存一样大),然后在其它VG上创建一个更大的PS.
在同一个VG内移动hd6:把hd6从hdisk0上移动到本VG内另外一个PV上不需要重启系统.用:migratepv –l hd6 hdisk0 hdisk1,这会按PS大小花去不同的时间.

原文转自:http://www.ltesting.net