資源簡介
實現一個具有創建文件,刪除文件,創建目錄,刪除目錄,讀文件,寫文件功能的fuse文件系統。

代碼片段和文件信息
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?
#include?“ufs.h“
int?main(void)?
{
FILE?*fp?=?NULL;
int?total?=?(MAX_BITMAP_BLOCK_NUM?-?1)?*?BLOCK_BYTES;
char?a?=?0xFF;
char?*c?=?&a;
char?b[511];
char?rest[total];
struct?super_block?*super_block_record;
struct?u_fs_data_block?*root;
int?err?=?0;
super_block_record?=?malloc(sizeof(struct?super_block));
root?=?malloc(sizeof(struct?u_fs_data_block));
if?(!super_block_record?||?!root)?{
printf(“Malloc?failed!\n“);
err?=?-ENOMEM;
goto?out;
}
fp?=?fopen(DISK?“r+“);
if?(fp?==?NULL)?{
fprintf(stderr?“open?diskimg?unsuccessful!\n“);
err?=?-1;
goto?out;
}
if?(fseek(fp?0?SEEK_END)?!=?0)?{
err?=?-1;
goto?out;
}
super_block_record->fs_size?=?ftell(fp)/BLOCK_BYTES;?
super_block_record->first_blk?=?1?+?MAX_BITMAP_BLOCK_NUM;
super_block_record->bitmap?=?MAX_BITMAP_BLOCK_NUM;
if?(fseek(fp?0?SEEK_SET)?!=?0)?{
err?=?-1;
goto?out;
}
fwrite(super_block_record?sizeof(struct?super_block)?1?fp);
if?(fseek(fp?512?SEEK_SET)?!=?0)?{
err?=?-1;
goto?out;
}
fwrite(c?sizeof(char)?1?fp);
memset(b?0?511);
fwrite(b?511?1?fp);
memset(rest?0?total);
fwrite(rest?total?1?fp);
if?(fseek(fp?BLOCK_BYTES?*?(MAX_BITMAP_BLOCK_NUM?+?1)?SEEK_SET)?!=?0)?{
err?=?-1;
goto?out;
}
root->size?=?0;
root->nNextBlock?=?-1;
root->data[0]?=?‘\0‘;
fwrite(root?sizeof(struct?u_fs_data_block)?1?fp);
fclose(fp);
printf(“initialize?successful!\n“);
out:
if?(super_block_record)?{
free(super_block_record);
}
if?(root)?{
free(root);
}
return?err;
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1715??2011-11-15?15:20??ufs\init.c
?????文件????????392??2011-11-09?17:57??ufs\makefile
?????文件??????13147??2011-11-15?15:16??ufs\op.c
?????文件???????1015??2011-11-14?11:51??ufs\op.h
?????文件???????9972??2011-11-15?15:20??ufs\ufs.c
?????文件???????1193??2011-11-14?15:38??ufs\ufs.h
?????目錄??????????0??2011-11-15?18:03??ufs
-----------?---------??----------?-----??----
????????????????27434????????????????????7
- 上一篇:ENVI二次開發指南pdf版
- 下一篇:銀行業務系統的數據庫設計
評論
共有 條評論