http://blog.csdn.net/hemmanhui
分类:
嵌入式linux 2009-06-29 16:42
216人阅读
收藏
举报
在嵌入式linux系统中获取磁盘总空间的方法,一般会仿照busybox的做法,使用
函数:setmntent 与 getmntent、endmntent
下面我向大家介绍一种直接读取/proc/下文件,直接获得磁盘总空间大小的方法:
static double get_disk_totoal_size()
{
#define DISK_SECTOR_FILE "/proc/ide/hda/capacity"
double dTotalSize = -1.0;
FILE *fp = fopen(DISK_SECTOR_FILE, "r");
if ( fp )
{
char *p;
char szBuf[256] = {0};
if ( fgets(szBuf, 256, fp) )
{
dTotalSize = atof(szBuf);//total sectors
dTotalSize *= 512;//total bytes
}
fclose(fp);
}
return dTotalSize;
}