Chinaunix首页 | 论坛 | 博客
  • 博客访问: 284232
  • 博文数量: 54
  • 博客积分: 3126
  • 博客等级: 中校
  • 技术积分: 495
  • 用 户 组: 普通用户
  • 注册时间: 2006-12-07 14:04
文章分类

全部博文(54)

文章存档

2016年(1)

2013年(1)

2012年(1)

2011年(2)

2010年(15)

2009年(32)

2008年(2)

分类:

2009-12-04 09:06:48

页面是包含 4 KB 数据的虚拟内存单元,并且可在实际和辅助存储之间转移。

分页空间也称为交换空间,是 type 属性等于 paging 的逻辑卷。这种类型的逻辑卷称为分页空间逻辑卷,或简称为分页空间。当系统中空闲的实际内存量非常低时,最近未使用过的程序或数据从实际内存转移到分页空间,以将实际内存释放用于其他活动。

安装过程在驱动器 hdisk0 上创建一个缺省分页逻辑卷 (hd6),此逻辑卷也称为主分页空间。

缺省分页空间的大小是在 AIX 安装的系统自定义阶段中根据以下标准确定的:

  • 除 hd6 以外,分页空间使用的空间不得超过 16 MB。在 AIX Version 4.2.1 中,hd6 使用的空间不能超过 32 MB,在 AIX Version 4.3 及更高版本中,hd6 使用的空间不能超过 64 MB。
  • 分页空间使用的空间不能超过总磁盘空间的 20%。
  • 如果实际内存小于 256 MB,则分页空间为实际内存的两倍。
  • 如果实际内存大于或等于 256 MB,则分页空间为 512 MB。

分页空间的布局

针对分页空间的 I/O 是随机的,并且主要是一次一个页面。vmstat 和 topas 命令产生的报告指示了正在发生的分页空间 I/O 量。图 1 显示了 vmstat 命令的示例输出。

图 1 vmstat 命令的输出



topas 命令是在 AIX Version 4.3.3 中引入的。图 2 显示了 topas 命令的示例输出。

图 2 topas 命令的输出



要改进分页性能,应该使用多个分页空间,并尽可能将它们定位在单独的物理卷上。可以将多个分页空间定位在同一个物理卷上,不过建议不要这样做。

分页空间的大小

一般建议是,对于内存不超过 256 MB(512 MB 的分页空间)的计算机,分页空间大小之和应该至少等于计算机实际内存大小的两倍。对于 256 MB 以上的内存,建议使用以下规则:

总分页空间 = 512 MB + (内存大小 -256 MB) * 1.25

在理想的情况下,应该存在多个大小大致相等的分页空间,每个分页空间分别在不同的物理磁盘驱动器上。如果决定创建附加的分页空间,应该在负载比 rootvg 中的物理卷轻的物理卷上创建这些分页空间。

当系统启动时,只有主分页空间 (hd6) 是活动的。

因此,在启动期间分配的所有分页空间块都在主分页空间上。这意味着主分页空间应该比辅助分页空间稍大一点。辅助分页空间应该全都具有相同的大小,以确保循环算法能够高效地工作。

lsps -a 命令可以提供系统上每个分页空间的当前使用情况的快照,而 lsps –s 命令可以提供总的活动分页空间及其当前利用情况的摘要。

以下命令用于管理分页空间:

  • chps 更改分页空间的属性。
  • lsps 显示分页空间的特征。
  • mkps 创建附加的分页空间。
  • rmps 删除非活动的分页空间。
  • swapon 激活分页空间。
  • swapoff 禁用一个或多个分页空间。

swapon 命令在早期系统初始化 (/sbin/rc.boot) 过程中用于激活初始分页空间设备。在随后的初始化阶段中,当其他设备变得可用时,将使用 swapon 命令来激活附加的分页空间,以便分页活动跨多个设备进行。

不 能删除活动的分页空间。要删除活动的分页空间,必须首先使其变为非活动的。要在截止 AIX Version 4.3 的 AIX 版本中实现此目的,可以使用 chps 命令,以便在下一次系统重新启动时不使用该分页空间。然后,在重新启动系统以后,该分页空间将处于非活动状态,可以使用 rmps 命令将其删除。在 AIX 5L Version 5.1 中,可以使用 swapoff 命令来动态禁用分页空间,然后继续使用 rmps 命令将其删除。

注意:在截止 AIX Version 4.3 的 AIX 版本中,不能动态禁用分页空间。需要重新启动系统才能禁用分页空间。因此,需要删除分页空间的任何维护任务都必须计划在适当的时间进行,以最小化用户中断。

通 过 swapon –a 命令激活的分页空间设备在 /etc/swapspaces 文件中列出,如下面的示例所示。当通过 mkps –a 命令创建某个分页空间时,该分页空间将添加到此文件,当通过 rmps 命令删除分页空间时,将从此文件中删除该分页空间,添加或删除操作通过 chps –a 命令进行。

 
# pg /etc/swapspaces
* /etc/swapspaces
*
* This file lists all the paging spaces that are automatically put into
* service on each system restart (the 'swapon -a' command executed from
* /etc/rc swaps on every device listed here).
*
* WARNING:Only paging space devices should be listed here.
*

* This file is modified by the chps, mkps and rmps commands and referenced
* bythe lsps and swapon commands.
hd6:
dev = /dev/hd6
paging00:
dev = /dev/paging00

lsps 命令显示分页空间的属性,例如分页空间名称、物理卷名称、卷组名称、大小、已使用的分页空间百分比、该分页空间是活动还是非活动的,以及该分页空间是否设置为自动的。分页空间参数指定要显示其特征的分页空间。

下面的示例演示了如何使用带各种标志的 lsps 命令来获得分页空间信息。-c 标志将以冒号格式显示信息和物理分区中的分页空间大小。

 
# lsps -a -c
#Psname:Pvname:Vgname:Size:Used:Active:Auto:Type
paging00:hdisk1:rootvg:20:1:y:y:lv hd6:hdisk1:rootvg:64:1:y:y:lv
# lsps -a
Page Space Physical Volume Volume Group Size %Used Active Auto Type
paging00 hdisk1 rootvg 80MB 1 yes yes lv hd6 hdisk1 rootvg 256MB 1 yes yes lv
# lsps -s
Total Paging Space Percent Used
336MB 1%

要使分页空间对操作系统可用,必须添加分页空间然后将其激活。系统可用于分页的总空间是所有活动分页空间逻辑卷的大小之和。

注意:不应该将分页空间添加到可移动磁盘上的卷组,因为删除具有活动分页空间的磁盘将会导致系统崩溃。

下面的示例演示了用于创建一个新的 20 MB 分页空间逻辑卷的步骤:

1. 运行 SMIT 快速路径 smitty mkps ,将会显示如图 3 所示的屏幕。

图 3 smitty mkps 命令



2. 使用箭头键突出显示 rootvg 卷组名称,然后按 Enter 键将会显示如图 4 所示的屏幕。

图 4 Add Another Paging Space 属性



3. 在 SIZE of paging space (in logical partitions) 字段中输入 5,4 MB 的 5 倍将产生 20 MB 的分页空间逻辑卷。

4. 使用 Tab 键将字段 Start using this paging space NOW? 从 no 切换到 yes,或使用 F4 键进行选择。

5. 使用 Tab 键将字段 Use this paging space each time the system is RESTARTED? 从 no 切换为 yes。

6. 按 Enter 键创建该分页逻辑卷。

7. SMIT 将返回新设备名称 paging01,并带有一个 OK 提示。按 F10 键以返回到命令行。

8. 现在可以使用命令 lsps -a 来检查新设备 (paging01) 是否已添加并且是活动的。



只能更改分页空间逻辑卷的以下两个属性。

  • 下一次重新启动时禁用或激活分页空间。
  • 增加已经存在的分页空间的大小。

AIX 5L Version 5.1 添加了不必重新启动即可禁用分页空间和减小分页空间大小的能力。

禁用分页空间

下面的示例演示了如何禁用分页空间逻辑卷 paging03:

1. 运行 SMIT 快速路径命令 smitty chps 以显示如图 5 所示的 PAGING SPACE 提示屏幕。

图 5 smitty chps 命令



2. 使用箭头键突出显示 paging03 分页空间名称,然后按 Enter 键。

3. 使用 Tab 键将字段 Use this paging space each time the system is RESTARTED? 从 yes 切换为 no,如图 6 所示。

图 6 在 AIX Version 4.3 中更改分页空间属性



4. 按 Enter 键更改 paging03 分页逻辑卷。

5. 当 SMIT 返回 OK 提示时,可以按 F10 键返回到命令行。

6. 重新启动系统并运行 lsps –a 命令,以确认 paging03 的状态已更改为非活动的。

在 AIX 5L Version 5.1 中动态禁用分页空间

swapoff 命令禁用分页空间而无需重新启动。

swapoff 命令的语法如下:

 
# swapoff DeviceName { DeviceName ... }

使用命令 swapoff /dev/paging03 以禁用分页空间 paging03,或者使用 SMIT 快速路径 smitty swapoff,图 7 所示。

图 7 smitty swapoff 命令



注意:必须将要禁用的分页空间上正在使用所有页面移动到其他分页空间,因此其他活动的分页空间中必须有足够的空间可用。

增加分页空间的大小

下面的示例演示了如何将已经存在的分页空间 paging03 的大小增加 20 MB。

1. 运行 SMIT 快速路径命令 smitty chps,以显示如图 5 所示的 PAGING SPACE 名称提示屏幕。

2. 使用箭头键突出显示 paging03 分页空间名称,然后按 Enter 键。

3. 在字段 NUMBER of additional logical partitions 中输入 5,4 MB 的 5 倍将产生 20 MB 的分页空间增加量。

4. 按 Enter 键以更改 paging03 分页逻辑卷。

5. 当 SMIT 返回 OK 提示时,可以按 F10 键返回到命令行。

6. 运行 lsps –a 命令以确认 paging03 的大小已经增加。

减小分页空间的大小

AIX 5L Version 5.1 引入了 chps -d 命令。此命令允许减小分页空间的大小,而不必首先禁用该分页空间,接着重新启动,然后删除该分页空间,并重新创建具有较小大小的分页空间,然后再重新激活该分页空间。

使用 chps –d 命令将 paging03 的大小减小 2 个逻辑分区,如下面的示例所示:

 
# chps -d 2 paging03
shrinkps:Temporary paging space paging04 created.
shrinkps:Paging space paging03 removed.
shrinkps:Paging space paging03 recreated with new size.

下面的示例演示了在截止 AIX Version 4.3 的 AIX 版本中删除现有的分页空间 paging00 所涉及到的步骤。

注意:删除缺省分页空间不当会导致系统无法重新启动。只有经验丰富的系统管理员才应该尝试此过程。必须首先禁用分页空间,然后才能将其删除,从而需要重新启动。

通过执行命令 sysdumpdev –l 来检查正在使用的主转储设备。不能删除缺省转储设备。必须将缺省转储设备更改到另一个分页空间或逻辑卷,然后才能删除该分页空间。要更改缺省转储目标,可以使用下面命令:

sysdumpdev -P -p /dev/new_dump_device

1. 请参阅 “更改分页空间属性”,以更改分页空间 paging00 的属性,使其在重新启动后不是活动的。

2. 通过执行 shutdown –Fr 命令重新启动系统。

3. 当系统已经启动时,作为 root 用户登录并运行快速路径 smitty rmps,以显示标题为 Remove a Paging Space 的菜单。或者,可以通过执行以下命令来使用 SMIT:

  • 运行 smitty。
  • 选择 System Storage Management (Physical & Logical Storage)。
  • 选择 Logical Volume Manager。
  • 选择 Paging Space。
  • 选择 Remove a Paging Space 以到达相同的菜单。

4. 按 F4 键以生成分页逻辑卷的列表。

5. 使用箭头键突出显示 paging00 逻辑卷名称,然后按 Enter 键三次(一次在字段中输入名称,一次获取警告,第三次运行该命令)。

6. 当 SMIT 返回带有以下消息的 OK 提示时,可以按 F10 键返回到命令行。

 
rmlv:Logical volume paging00 is removed

下面的示例显示了在尝试删除活动分页空间 paging01 时获得的错误消息。

 
# lsps -a
Page Space Physical Volume Volume Group Size %Used Active Auto Type
paging03 hdisk1 rootvg 4MB 0 no no lv
paging01 hdisk1 rootvg 20MB 1 yes yes lv
paging00 hdisk1 rootvg 80MB 1 yes yes lv
hd6 hdisk1 rootvg 256MB 1 yes yes lv
# rmps paging01
051062 rmps:Paging space paging01 is active.
0517-061 rmps:Cannot remove paging space paging01.

下面的示例演示了如何在 AIX 5L Version 5.1 中删除分页空间 paging00:

 
# swapoff /dev/paging00
# rmps paging00
rmlv:Logical volume paging00 is removed.

缺省安装在驱动器 hdisk0 上创建一个分页逻辑卷 (hd6),该驱动器包含繁忙的/(root) 和/usr 文件系统的部分或全部。系统管理员可能希望减小缺省分页空间,或者将其移动到不太繁忙的硬盘,以便:

  • 通过强制分页或交换到系统中不太繁忙的其他磁盘来提高存储系统性能。
  • 节省 hdisk0 上的磁盘空间。

删除缺省分页空间 (hd6) 需要一个特殊的过程。此分页空间在启动过程中由配置系统的 Shell 脚本激活。要删除其中一个缺省分页空间,必须修改这些脚本,并且必须创建一个新的启动映像。

下面的示例显示了用于检查整个物理卷 hdisk1 中的逻辑卷和文件系统分布情况的命令:

 
# lspv -l hdisk1
hdisk1:
LV NAME LPs PPs DISTRIBUTION MOUNT POINT
hd5 2 2 02..00..00..00..00 N/A
hd6 64 64 00..64..00..00..00 N/A
paging01 5 5 00..05..00..00..00 N/A
hd8 1 1 00..00..01..00..00 N/A
hd4 1 1 00..00..01..00..00 /
hd2 73 73 00..00..73..00..00 /usr
hd9var 1 1 00..00..01..00..00 /var
hd3 4 4 00..00..04..00..00 /tmp
hd1 1 1 00..00..01..00..00 /home
paging00 20 20 00..00..20..00..00 N/A
paging03 1 1 00..00..01..00..00 N/A

减小 hd6 分页空间的大小

下面的示例演示了将分页空间 hd6 从 160 MB 减小到 120 MB 所涉及到的步骤。以下过程中的步骤全都是必需的——即使是与 hd6 不直接相关的步骤。需要附加步骤的原因在于,不能在系统正在运行的时候禁用分页空间。

注意:

  • AIX Version 4.2.1 及更高版本不支持将 hd6 的大小减小到 32 MB 以下。如果这样做,系统将无法启动。
  • 如果决定减小 hd6,则必须在 rootvg 中为软件保留足够的空间。减小 hd6 分页空间的一个经验规则是保留足够的空间以匹配物理内存。要确定物理内存量,可以使用以下命令:

lsattr -E -l sys0 -a realmem

1. 通过执行以下命令在 rootvg 上创建一个临时分页空间:

 
mkps -a -n -s 30 rootvg hdisk0

此命令将输出分页空间的名称(如果不存在其他分页空间,则为 paging00)。

2. 使用以下命令禁用 hd6 分页空间,以便为该过程中稍后的重新启动操作做好准备。

 
chps -a n hd6

3. 将 /sbin/rc.boot 文件中的分页空间条目从:

swapon /dev/hd6

更改为 swapon /dev/paging00。

4. 运行以下命令来检查主转储设备名称。

 
# sysdumpdev -l primary /dev/hd6
secondary /dev/sysdumpnull copy directory /var/adm/ras forced copy flag TRUE
always allow dump FALSE

5. 如果主转储设备为 hd6,则将其更改为其他某个分页空间。下面的命令演示了如何将主转储设备更改为 paging00:

 
# sysdumpdev -P -p /dev/paging00
primary /dev/paging00
secondary /dev/sysdumpnull copy directory /var/adm/ras forced copy flag TRUE
always allow dump FALSE

6. 使用 bosboot 命令为某个硬盘映像创建可启动的映像。

此步骤是必需的,以便更新初始化期间使用的系统映像以反映对 rc.boot 所做的更改。

 
bosboot -d /dev/hdisk0 -a

7. 将系统密钥(如存在的话)放在通常位置并使用以下命令,此命令将关闭操作系统并重新启动。

shutdown -r

8. 在系统重新启动以后,删除 hd6 分页空间。

rmps hd6

9. 为 hd6 分页空间创建一个大小为 120 MB 的新分页空间逻辑卷。

mklv -t paging -y hd6 rootvg 30

10. 使用 lsps -a 命令来验证缺省分页空间 hd6 的大小已减小。

11. 将主转储设备名称更改回分页空间 hd6。

sysdumpdev -P -p /dev/hd6

12. 将 /sbin/rc.boot 文件中的分页空间条目从:

swapon /dev/paging00

更改为 swapon /dev/hd6。

13. 使用 bosboot 命令为某个硬盘映像创建可启动的映像。

bosboot -d /dev/hdisk0 -a

14. 运行以下命令,以使新的 hd6 分页空间在系统重新启动时自动激活。

chps -a y hd6

15. 运行以下命令来更改临时分页空间 paging00 的属性,以使其在下一次重新启动后不自动激活。

chps -a n paging00

16. 将系统密钥(如存在的话)放在通常位置,并使用以下命令来关闭和重新启动系统:

shutdown -r

17. 在系统重新启动以后,删除该临时分页空间。

rmps paging00

在 AIX 5L Version 5.1 中减小 hd6

可 以使用 chps –d 命令来动态减小主分页空间 hd6 的大小。此命令将阻止您将hd6减小 到 32 MB 以下或实际删除该分页空间。如果减小主分页空间,则会创建一个临时启动映像和一个指向此临时主分页空间的临时 /sbin/rc.boot,以确保系统始终处于能够安全地重新启动的状态。

将 hd6 分页空间移动到另一个卷组

建议不要将名称为 hd6 的分页空间从 rootvg 移动到另一个卷组,因为该名称已在多个地方进行了硬编码。

在 启动过程中的第二个阶段,只有 rootvg 中的分页空间才是活动的,并且 rootvg 中没有任何分页空间会严重影响系统启动性能。如果希望大多数分页空间都在其他卷组上,则最好让 hd6 尽可能小(与物理内存大大小相同),然后在其他卷组上创建较大的分页空间。

在同一个 VG 中移动 hd6 分页空间

将缺省分页空间从 hdisk0 移动到同一个卷组中的另一个磁盘不需要重新启动系统。

下面的示例演示了用于将缺省 (hd6) 分页空间从 hdisk 0 移动到 hdisk6 的命令。

migratepv -l hd6 hdisk0 hdisk1

这可能要花几分钟时间,具体取决于该分页空间的大小。

阅读(1517) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~