获得 AIX系统中处理器资源的代码示例

系统 其他OS
在 AIX系统5.3 和 6.1 上测试通过,我们文章中给出的一段基于 Perl 的例子代码可以侦测当前的AIX系统环境和 CPU 的类型和数量。

本段的***给出一段基于 Perl 的例子代码,在 AIX系统5.3 和 6.1 上测试通过,可以侦测当前的AIX系统环境和 CPU 的类型和数量。这段代码首先运行系统命令 oslevel 得到当前系统的版本,如果是 AIX6.1 则运行命令 lparstat 判断当前系统是否为 WPAR。

无论 AIX 系统的版本如何,都加参数 -i 运行命令 lparstat 来获得分区的个数,并以此判断是否使用了微分区技术。***调用命令 prtconf 输出 CPU 的一些参数。

该段代码可以帮助用户快速了解当前环境,尤其适用于工作环境复杂或频繁变更的场景。需要指出的是对于使用了微分区技术的系统,代码的***输出的是虚拟处理器的数量。需要了解AIX系统中物理处理器和逻辑处理器状态的用户,可以参阅本文其他段落加以补充。

清单 4. 获得当前的AIX系统环境和 CPU 的类型和数量的代码示例
     

  1. # WPAR 仅存在于 AIX 6.1 系统  
  2. my $oslevel =  `oslevel`;   
  3. if ($oslevel =~ m/6\.1/)   
  4. {   
  5. # 在 WPAR 中不带参数运行 lparstat 命令只返回警告信息  
  6. my $output = `lparstat`;   
  7. if ($output =~ m/The output is applicable only to the Global Environment/)   
  8. {   
  9. print "This machine is one WPAR with following CPU assigned.\n";   
  10. system ("prtconf | grep Processor");   
  11. exit 0;   
  12. }   
  13. }   
  14.  
  15. # 使用– i 参数列出详细的配置信息  
  16. my @outputs = `lparstat -i`;   
  17. foreach my $line (@outputs)   
  18. {   
  19. # 解析命令输出并得到分区个数  
  20. if ($line !~ m/Partition Number/) {next;}   
  21. my ($blank, $partition_num) = split /Partition Number\s+:\s/, $line;   
  22. chomp $partition_num;   
  23. if ($partition_num eq '-') # full system 环境没有划分微分区  
  24. {   
  25. print "This machine is one full system without LPARs. The system has following   
  26. physical CPUs installed.\n";   
  27. }elsif ($partition_num > 1) # 如果存在多于一个的分区,该AIX系统使用了微分区技术  
  28. {   
  29. print "This machine is one LPAR with virtual following CPUs installed.   
  30. To check the assignment of physical CPU, please log on HMC or AMM.\n";   
  31. }else   
  32. {   
  33. print "Can not decide whether current environment is one LPAR or not.   
  34. Please check HMC or AMM to decide this.\n";   
  35. }   
  36. }   
  37. # 打印处理器本身的参数  
  38. system ("prtconf | grep Processor");   
  39. exit 0;   

这样,在AIX系统中获得处理器资源的知识我们就讲解完毕。

【编辑推荐】

  1. 讲解如何来使用AIX svmon
  2. 怎样灵活运用AIX vmstat
  3. AIX操作系统知识讲解
  4. 使用Unix scp 在主机之间复制文件
  5. AIX内存调整命令简介
责任编辑:小霞
相关推荐

2010-09-30 11:03:43

AMD皓龙6100渠道

2010-04-23 12:35:17

2012-11-27 14:44:59

英特尔100核处理器

2012-01-10 09:32:12

iOS 5.1设备四核处理器

2020-06-16 08:50:10

CPU处理器感线程管理

2010-04-22 18:17:29

Aix系统故障

2010-04-22 15:27:40

Aix操作系统

2010-07-15 15:56:46

AIX TELNET命

2009-03-24 22:02:38

多核处理器设计

2017-10-12 13:00:22

LinuxRISC-V多核开源处理器

2023-11-07 14:30:21

微处理器CPU

2024-01-31 08:09:53

预处理器代码C++

2014-09-09 09:49:59

2012-11-13 15:35:36

AMD服务器处理器阿布扎比

2009-01-03 15:20:11

ibmdwAIX

2010-04-27 18:24:56

AIX CPU

2009-03-01 21:30:46

Mac OS X 10Nehalem处理器

2011-12-14 01:14:43

处理器数据库11gOracle

2009-12-04 14:23:05

Windows7操作系

2009-12-23 10:11:49

Linux操作系统
点赞
收藏

51CTO技术栈公众号