社区
Linux/Unix社区
帖子详情
请问AIX4.3.X上是否有Perfstat API(libperfstat.h)?
blueflame
2003-10-04 12:23:27
我在资料上看到AIX 5L是有的,有文档似乎提到(只是只言片语,具体情况不得而知)AIX 4.3.X要安装个什么包才行,是否有高手知道具体试要怎样才能使AIX 4.3.X上具有Perfstat API?谢谢!
...全文
132
5
打赏
收藏
请问AIX4.3.X上是否有Perfstat API(libperfstat.h)?
我在资料上看到AIX 5L是有的,有文档似乎提到(只是只言片语,具体情况不得而知)AIX 4.3.X要安装个什么包才行,是否有高手知道具体试要怎样才能使AIX 4.3.X上具有Perfstat API?谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
sexroute
2003-12-16
打赏
举报
回复
上面是安装包
sexroute
2003-12-16
打赏
举报
回复
x bos.perf.libperfstat x
x bos.perf.perfstat x
sexroute
2003-12-12
打赏
举报
回复
// sys_info_v1.cpp: implementation of the sys_info_v1 class.
// coded by 赵大力 12-10-2003
//////////////////////////////////////////////////////////////////////
#include "sys_info_v1.h"
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
sys_info_v1::sys_info_v1()
{
}
sys_info_v1::~sys_info_v1()
{
}
//////////////////////////////////////////////////////////////////////////
// 获得整数型系统参数
//////////////////////////////////////////////////////////////////////////
long sys_info_v1::m_i_getPara(kstat_ctl_t *kc, char *szFirstClass, char *szSecondClass, char *szThirdClass)
{
if(this->m_i_isInit!=1){
this->m_i_initKstat();
}
kstat_t *ksp;
kstat_named_t *knp;
/*查询大类*/
if (!(ksp = kstat_lookup(kc, szFirstClass, -1, szSecondClass))) {
cout<<"zdl lookup "<<szFirstClass<<"failed!"<<endl;
exit(1);
}else{
}
if (kstat_read(kc,ksp,NULL)<0) {
cout<<"zdl read "<<szFirstClass<<"failed!"<<endl;
exit(1);
}else{
}
/*查询小类*/
knp = (kstat_named_t*)kstat_data_lookup(ksp, szThirdClass);
return knp->value.i32;
}
//////////////////////////////////////////////////////////////////////////
// 获得字符串型系统参数
//////////////////////////////////////////////////////////////////////////
char * sys_info_v1::m_sz_getPara(kstat_ctl_t *kc, char *szFirstClass, char *szSecondClass, char *szThirdClass)
{
if(this->m_i_isInit!=1){
this->m_i_initKstat();
}
kstat_t *ksp;
kstat_named_t *knp;
/*查询大类*/
if (!(ksp = kstat_lookup(kc, szFirstClass, -1, szSecondClass))) {
cout<<"zdl lookup "<<szFirstClass<<"failed!"<<endl;
exit(1);
}else{
}
if (kstat_read(kc,ksp,NULL)<0) {
cout<<"zdl read "<<szFirstClass<<"failed!"<<endl;
exit(1);
}else{
}
/*查询小类*/
knp = (kstat_named_t*)kstat_data_lookup(ksp, szThirdClass);
return knp->value.c;
}
//////////////////////////////////////////////////////////////////////////
// 获得系统基本信息cpu数量、主频、类型、物理内存容量
//////////////////////////////////////////////////////////////////////////
int sys_info_v1::getBaseInfo(_sysInfo *pSysinfo)
{
//////////////////////////////////////////////////////////////////////////
//利用uname api获得系统信息
//////////////////////////////////////////////////////////////////////////
struct utsname buf;
int href=uname ( &buf);
pSysinfo->buf=buf;
//////////////////////////////////////////////////////////////////////////
//得到内存页大小
//////////////////////////////////////////////////////////////////////////
int pagesize=this->pagesize;
pSysinfo->cCpuType=this->m_sz_getPara(this->kc,"cpu_info",NULL,"cpu_type");
pSysinfo->cCpuSpeed=this->m_i_getPara(this->kc,"cpu_info",NULL,"clock_MHz");
pSysinfo->cCpuNo=this->m_i_getPara(this->kc,"unix","system_misc","ncpus");
pSysinfo->cTotalMemory=(this->m_i_getPara(this->kc,"unix","system_pages","physmem")*(pagesize)/1024/1024);
return 0;
}
int sys_info_v1::m_i_initKstat()
{
this->kc=NULL;
//////////////////////////////////////////////////////////////////////////
// 获得系统页大小
//////////////////////////////////////////////////////////////////////////
this->pagesize= sysconf(_SC_PAGESIZE);
//////////////////////////////////////////////////////////////////////////
// 初始化kstat
//////////////////////////////////////////////////////////////////////////
if (!this->kc) {
if (!(this->kc = kstat_open())) {;
cout<<"kstat_open() failed! "<<endl;
exit(1);
}
}
if (kstat_chain_update(this->kc) < 0) {
cout<<"kstat_chain_update() failed! "<<endl;
exit(1);
}
this->m_i_isInit=1;
return 0;
}
int main(){
sys_info_v1 *p=new sys_info_v1();
_sysInfo *baseInfo=new _sysInfo();
//////////////////////////////////////////////////////////////////////////
// 初始化 kstat
//////////////////////////////////////////////////////////////////////////
p->m_i_initKstat();
//////////////////////////////////////////////////////////////////////////
// 获得基本信息
//////////////////////////////////////////////////////////////////////////
p->getBaseInfo(baseInfo);
cout<<baseInfo->cCpuSpeed<<endl;
cout<<baseInfo->cCpuType<<endl;
cout<<baseInfo->cTotalMemory<<endl;
cout<<baseInfo->cCpuNo<<endl;
cout<<(&(baseInfo->buf))->machine<<endl;
cout<<(&(baseInfo->buf))->nodename<<endl;
cout<<(&(baseInfo->buf))->release<<endl;
cout<<(&(baseInfo->buf))->sysname<<endl;
cout<<(&(baseInfo->buf))->version<<endl;
//////////////////////////////////////////////////////////////////////////
//
//////////////////////////////////////////////////////////////////////////
return 0;
}
blueflame
2003-10-30
打赏
举报
回复
问了个IBM的AIX工程师,他说是有的,但一时也记不清还要安装哪个包了
哪位大虾知道的?还望不吝赐教,谢谢了!
foryijian
2003-10-08
打赏
举报
回复
我也想知道
Oracle中提示无法分配超出 7 的 MINEXTENTS (在表空间
PERF
STAT
中)
Oracle中提示无法分配超出 7 的 MINEXTENTS (在表空间
PERF
STAT
中).
Oracle中提示无法分配超出 7 的 MINEXTENTS (在表空间
PERF
STAT
中).
系统界面设计规范,描述很全面很切合实际。
AIX
系统性能监控命令
AIX
资源监控与调制工具 性能优化以及确定系统中的性能瓶颈是系统管理员的主要任务之一。在一个计算机系统中,CPU、内存、硬盘和网络是影响系统性能的主要因素,因此系统性能调整也主要在于...
aix
oracle监听配置_
AIX
6.1安装oracle 11g 数据库 配置
1、检查内存大小#/usr/sbin/lsattr -E -l sys0 -a realmem最小1G,要求2G或者更多2、检查swap空间的大小#/usr/sbin/lsps -a3、检查操作系统结构
是否
可以运行oracle软件#/usr/bin/getconf HARDWARE_BITMODE想知道系统...
oracle 10g
perf
stat
,
aix
6.1安装oracle 10g总结
1.1确认安装oracle所需的系统库文件
是否
安装lslpp -l bos.adt.base bos.adt.
lib
bos.adt.
lib
mbos.
perf
.
perf
stat
bos.
perf
.
lib
perf
stat
bos.
perf
.proctools bos.adt.prof bos.cifs_fs.rte1.4确认64位操作系统:/usr/...
Linux/Unix社区
23,116
社区成员
74,506
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章