Jelajahi Sumber

#IQRV #comment [Module] 修改磁盘的计算方式,省去不可使用部分

gifur 4 tahun lalu
induk
melakukan
372573c62d
1 mengubah file dengan 6 tambahan dan 3 penghapusan
  1. 6 3
      Module/mod_ResourceWatcher/FileInfo.h

+ 6 - 3
Module/mod_ResourceWatcher/FileInfo.h

@@ -596,10 +596,13 @@ struct DiskInfo
         }
         /** 
         statfs结构中可用空间块数有两种f_bfree和 f_bavail,前者是硬盘所有剩余空间,后者为非root用户剩余空间,
-        ext3文件系统给root用户分有5%的独享空间,所以这里是不同的地方
+        ext3文件系统给root用户分有5%的独享空间,所以这里是不同的地方
         */
-		uiTotalByteNumber = (((long long)buf.f_bsize * (long long)buf.f_blocks));
-		uiTotalFreeByteNumber = (((long long)buf.f_bsize * (long long)buf.f_bfree));
+		//uiTotalByteNumber = (((long long)buf.f_bsize * (long long)buf.f_blocks));
+		//uiTotalFreeByteNumber = (((long long)buf.f_bsize * (long long)buf.f_bfree));
+        const int percent = (buf.f_blocks - buf.f_bfree) * 100 / (buf.f_blocks - buf.f_bfree + buf.f_bavail);
+        uiTotalByteNumber = (((long long)buf.f_bsize * (long long)(buf.f_blocks - buf.f_bfree + buf.f_bavail)));
+        uiTotalFreeByteNumber = (((long long)buf.f_bsize * (long long)buf.f_bavail));
 		return TRUE;
 	}
 #endif //_MSC_VER