中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

linux中怎么獲取flash分區大小

發布時間:2021-07-29 11:17:56 來源:億速云 閱讀:613 作者:Leah 欄目:互聯網科技

linux中怎么獲取flash分區大小,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

在嵌入式系統中,由于flash存儲空間有限,或者是存儲數據,實現數據的循環刪除,需要獲取到分區的使用情況,可以通過系統下的函數statfs來獲取使用情況;實現代碼如下:

flashInfo.cpp


#include <stdio.h>                                                                                                                  #include <stdlib.h>#include <unistd.h>#include <sys/vfs.h> typedef unsigned long long u64; //unit: 0-MBytes, 1-KBytes, default MBytesint getPartitionUse(const char *dir, size_t &totleSize, size_t &freeSize, int unit){    struct statfs diskInfo;      int ret = statfs(dir, &diskInfo);    if ( ret != 0 )  {    perror("getPartitionUse statfs error ");    return ret;  }      u64 allBlocks = diskInfo.f_bsize;      u64 tmpTotalSize = allBlocks * diskInfo.f_blocks;      u64 tmpFreeDisk = diskInfo.f_bfree*allBlocks;      totleSize = tmpTotalSize>>20;    freeSize  = tmpFreeDisk>>20;    if(unit == 0)  {      totleSize  = tmpTotalSize>>20;      freeSize  = tmpFreeDisk>>20;    }  else if( unit == 1 )  {    totleSize  = tmpTotalSize>>10;      freeSize  = tmpFreeDisk>>10;  }    return 0;} int main(){  size_t totleSize = 0;  size_t freeSize = 0;      getPartitionUse("/", totleSize,freeSize, 0);    printf ("system  total=%dMB, free=%dMB\n", totleSize, freeSize);      getPartitionUse("/work/data", totleSize,freeSize, 0);    printf ("data  total=%dMB, free=%dMB\n", totleSize, freeSize);        getPartitionUse("/work", totleSize,freeSize, 0);    printf ("config  total=%dMB, free=%dMB\n", totleSize, freeSize);  
}

編譯:

mipsel-linux-g++ flashInfo.c -o flashInfo

運行結果如下:

linux中怎么獲取flash分區大小

關于linux中怎么獲取flash分區大小問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阿拉尔市| 安新县| 南投市| 张家川| 阿勒泰市| 河间市| 陵川县| 民县| 和平区| 贵德县| 丹棱县| 河南省| 山阴县| 玛纳斯县| 黄石市| 辛集市| 兴业县| 介休市| 铅山县| 内丘县| 南平市| 平罗县| 邹城市| 九台市| 利辛县| 松溪县| 无棣县| 丰顺县| 远安县| 淅川县| 克山县| 晋中市| 德钦县| 定结县| 赫章县| 宜黄县| 靖宇县| 威宁| 略阳县| 齐河县| 镇巴县|