標頭檔案#include和#include(1)setmntent:開啟檔案系統描述檔案的檔名,並且返回可以被使用的檔案指標getmntent().
其函式原型為:
file * setmntent(const char * filename ,const char * type );
引數:filename 要開啟的檔案名字
type 表示開啟檔案的方式(r:唯讀 w:只寫 r+:讀寫)等。
返回值:函式成功返回指向開啟檔案的檔案指標file;失敗返回null。
其函式原型:
struct mntent * getmntent(file * fp );
引數:fp setmntent函式中返回的檔案指標,即將要進行讀寫的檔案指標。
返回值:struct mntent 結構體,後面將會詳細介紹該結構體的中變數和對應的作用。
其函式原型:
int endmntent(file * fp );
引數:fp 函式setmntent開啟的檔案指標
返回值:該函式總是返回1.
int ds_get_mount_info(char *in_devname, char *in_mountpoint, char *devname, char *mountpoint, char *fstype, int *is_readonly)
fd = setmntent("/proc/mounts", "r");
if ( fd == null )
return -1;
while ( (pent = getmntent(fd)) != null )
} endmntent(fd);
if ( pent == null )
return -1;
if ( devname )
strcpy(devname, pent->mnt_fsname);
if ( mountpoint )
strcpy(mountpoint, pent->mnt_dir);
if ( fstype )
strcpy(fstype, pent->mnt_type);
if ( is_readonly )
return 0;
}
Linux塊裝置驅動
塊裝置提供塊裝置提供裝置的訪問,裝置的訪問,可以隨機的以固定大小的塊傳輸資料,例如我們最為常見的磁碟裝置,當然塊裝置和字元裝置有較大差別,塊裝置有自己的驅動介面。簡單來說,核心決定乙個塊是固定的4096 位元組,當然該值可以隨著依賴檔案系統的變化而改變。塊裝置驅動採用register blkdev向...
06 linux011塊裝置管理
io 埠指令 0 v 1 命令 塊裝置控制器 2 命令接收與執行 cpu 3 中斷 塊裝置儲存器 4 v中斷處理程式linux 0.11 沒有直接跟塊裝置的互動流程進行互動,而是將互動抽象到了檔案層面。大體過程如下 1 檔案操作 1 開啟檔案。根據根 當前目錄i節點搜尋目標檔案i節點,將該i節點快取...
Blog16 linux儲存裝置的管理 1 掛載
摘要 本節主要介紹關於儲存裝置的管理,包括掛載 mbr及swap gpt分割槽,分割槽方式的修改及磁碟配額等內容。由於知識點較多,故分為兩小節來介紹。fdisk l 檢視硬碟裝置 cat proc partitions 檢視系統裝置 blkid 檢視裝置的id資訊 df 檢視磁碟掛載的資訊 df h...