收录日期:2020/10/25 06:56:59 时间:2016/06/13 02:05:03 标签:应用程序开发区
想通过编程取得磁盘空间使用率,通过pstat_getlv()取得各个逻辑卷的使用情况,但不知道为什么就是无法返回期望值

程序如下:

#include <stdlib.h>
#include <errno.h>
#include <sys/pstat.h>
#include <string.h>

int main(void)
{int i;
int rv;
struct pst_dynamic psd;
struct pst_lvinfo *pstlv;
size_t NumOpenLV = 20;
pstlv = (struct pst_lvinfo *)malloc(NumOpenLV * sizeof(struct pst_lvinfo));
memset(pstlv,0,NumOpenLV * sizeof(struct pst_lvinfo));
if (pstlv == (struct pst_lvinfo *) 0) 
{
printf("iomon: memory allocation failure\n");
    exit(1);
}
if ((rv = pstat_getlv(pstlv, sizeof(struct pst_lvinfo),20, 1))== -1) 
{
printf("pstat_getlv() returned -1\n");
printf("Error code = %d\n", errno);
exit(1);
}
printf("rv=%d\n",rv);
for (i = 0; i < 20; i++) 
{printf(" %d--> Major = %d; Minor = %d; Reads = %d  Index for further pstat() requests=%d\n",i, (int) pstlv[i].psl_dev.psd_major,
 pstlv[i].psl_dev.psd_minor,pstlv[i].psl_rxfer,pstlv[i].psl_idx);

}
return 0;
}


运行结果:
rv=0
 0--> Major = 0; Minor = 0; Reads = 0  Index for further pstat() requests=0
 1--> Major = 0; Minor = 0; Reads = 0  Index for further pstat() requests=0
 2--> Major = 0; Minor = 0; Reads = 0  Index for further pstat() requests=0
 3--> Major = 0; Minor = 0; Reads = 0  Index for further pstat() requests=0
 4--> Major = 0; Minor = 0; Reads = 0  Index for further pstat() requests=0
 5--> Major = 0; Minor = 0; Reads = 0  Index for further pstat() requests=0
 6--> Major = 0; Minor = 0; Reads = 0  Index for further pstat() requests=0
 7--> Major = 0; Minor = 0; Reads = 0  Index for further pstat() requests=0
 8--> Major = 0; Minor = 0; Reads = 0  Index for further pstat() requests=0
 9--> Major = 0; Minor = 0; Reads = 0  Index for further pstat() requests=0
 10--> Major = 0; Minor = 0; Reads = 0  Index for further pstat() requests=0
 11--> Major = 0; Minor = 0; Reads = 0  Index for further pstat() requests=0
 12--> Major = 0; Minor = 0; Reads = 0  Index for further pstat() requests=0
 13--> Major = 0; Minor = 0; Reads = 0  Index for further pstat() requests=0
 14--> Major = 0; Minor = 0; Reads = 0  Index for further pstat() requests=0
 15--> Major = 0; Minor = 0; Reads = 0  Index for further pstat() requests=0
 16--> Major = 0; Minor = 0; Reads = 0  Index for further pstat() requests=0
 17--> Major = 0; Minor = 0; Reads = 0  Index for further pstat() requests=0
 18--> Major = 0; Minor = 0; Reads = 0  Index for further pstat() requests=0
 19--> Major = 0; Minor = 0; Reads = 0  Index for further pstat() requests=0

不明白为什么返回了 “rv=0"????
高手指导一下吧!!
顶..

熟悉java Swing的朋友快来帮忙啊! 如何得知.RES中文件中有多少图片文件、多少声音文件??? 哪儿有OFFICE XP VLK版的下载,多谢 简单的窗口句柄问题? 如何在光标所在位置插入??????分不够再加 找了份兼职。一个GIS 的地图编辑器,要多少报酬合适那? 如何得知.RES中文件中有多少图片文件、多少声音文件??? 玲儿,到我这儿来吧! 如何得知.RES中文件中有多少图片文件、多少声音文件??? 请问JAVA多层项目中是否仍大量使用存储过程??? 谁有 CuteFTP pro 3.1 中文版的注册码或是英文版的注册码? 公布一PLMM的照片(不看后悔)! 怎么让CVS不要使用格林威治时间? 问一下 文件上传问题? 请教,如何取得计算机上唯一的硬件信息,谢谢 我想刷新其中的一个