-
大小: 439KB文件類型: .rar金幣: 2下載: 0 次發(fā)布日期: 2021-05-09
- 語言: 其他
- 標(biāo)簽: 操作系統(tǒng)??課程設(shè)計??
資源簡介
共兩個不同設(shè)計例子,都含詳細的文檔資料。
任務(wù)2.設(shè)計一個簡單的二級文件系統(tǒng)
設(shè)計要求:
在任一OS下,建立一個大文件,把它假象成硬盤,在其中實現(xiàn)一個簡單的模擬文件系統(tǒng)。 編寫一管理程序?qū)Υ丝臻g進行管理,要求:
1. 實現(xiàn)盤塊管理
2. 實現(xiàn)文件的讀寫操作
3. 每組最多2人,小組內(nèi)要有明確分工,課程設(shè)計報告中設(shè)計部分可以相同,個人實現(xiàn)部分不同
參考建議:
將模擬硬盤的文件空間劃分為目錄區(qū),文件區(qū);采用位示圖進行空間管理,盤塊的分配使用顯示鏈接(FAT表)的方式。
設(shè)計技術(shù)參數(shù)(數(shù)據(jù)結(jié)構(gòu))參考:
#define MaxSize 100
#define Disk 512 //每個盤塊大小為512bit
#define NumDisk 2048 //有2048個盤塊,既可分配空間為 1M
/*************目錄和文件的結(jié)構(gòu)定義***********************/
struct DirectoryNode {
char name[9]; /*目錄或文件的名字*/
int type; /*0代表目錄,1代表普通文件*/
struct DirectoryNode *next; /*指向下一個兄弟結(jié)點的指針*/
struct DirectoryNode *preDirFile; /*指向父結(jié)點的指針*/
struct DirectoryNode *subFile; /*指向第一個子結(jié)點的指針*/
int size; /*如果是文件則表示文件的大小*/
int first; /*起始盤塊號*/
int last; /*末尾盤塊號*/
int order; /*備用*/
};
//連續(xù)分配
struct FileSys {
int VacTable[NumDisk]; //空閑表,0為空閑,1為被用
struct DirectoryNode root; //根目錄
struct DirectoryNode Directory[NumDisk];
} *filesys;
typedef struct {
struct DirectoryNode *DirFile;
char name[9];
}DataType; //包含一個指向目錄的指針和名字
typedef struct { //隊列結(jié)構(gòu)的實現(xiàn)
DataType data[MaxSize];
int front,rear; //分別表示隊列的頭結(jié)點和尾結(jié)點
}Tp;
void InitQueue(Tp *sq) //隊列初始化
int EnAddQueue(Tp *sq,DataType data) //在隊列中增加元素
DataType EnDelQueue(Tp *sq) //從隊列中刪除一個元素
int Empty(Tp *sq) //判斷隊列是否為空,返回0表示隊列為空
①.Dir:顯示目錄內(nèi)容命令,顯示當(dāng)前目錄下的文件和子目錄。
②.Md:創(chuàng)建目錄操作。
③.Create:創(chuàng)建文件,在當(dāng)前目錄下創(chuàng)建一個文件。
④. all:顯示從根目錄開始的所有目錄和文件及其層次結(jié)點。
⑤.Cd:改變目錄。
⑥.Del:刪除文件操作。
⑦. Rd:刪除目錄操作,刪除當(dāng)前目錄下的子目錄。
⑧. Ren:重命名函數(shù)
⑨. Exit:退出命令

代碼片段和文件信息
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????3197??2011-12-20?13:39??IGETPUT.C
?????文件???????3184??2011-12-20?13:39??IALLFRE.C
?????文件????????693??2011-12-20?13:39??HALTIT.C
?????文件???????4245??2011-12-20?13:39??FORMATIT.C
?????文件???????7139??2011-12-20?13:38??FILSYS.H
?????文件???????1744??2011-12-20?13:38??DIRGETT.C
?????文件???????4007??2011-12-20?13:38??DIR.C
?????文件???????2611??2011-12-20?13:38??CREATDE.C
?????文件?????238592??2012-01-12?16:36??MAIN.NCB
?????文件??????52736??2012-01-12?16:36??MAIN.OPT
?????文件???????4467??2011-12-20?13:39??MAIN.DSP
?????文件????????533??2011-12-20?13:39??MAIN.DSW
????.......????729088??2011-12-20?13:38??報告.doc
?????文件???????1079??2011-12-20?13:38??ACCESS.C
?????文件???????1768??2011-12-20?13:38??BALLFRE.C
?????文件????????556??2011-12-20?13:38??BRDWT.C
?????文件???????5915??2011-12-20?13:38??CMDEXP.C
?????文件???????2848??2011-12-20?13:39??REG.C
?????文件???????5479??2011-12-20?13:39??READWE.C
?????文件???????2079??2011-12-20?13:39??OPENCLO.C
?????文件????????933??2011-12-20?13:39??NAME.C
?????文件???????2950??2011-12-20?13:39??MAIN.C
?????文件???????2635??2011-12-20?13:39??LOG.C
?????文件????????924??2011-12-20?13:39??INIT.C
?????文件?????102113??2012-01-12?16:32??二級文件系統(tǒng)2.rar
-----------?---------??----------?-----??----
??????????????1181515????????????????????25
-----------?---------??----------?-----??----
?????文件???????3197??2011-12-20?13:39??IGETPUT.C
?????文件???????3184??2011-12-20?13:39??IALLFRE.C
?????文件????????693??2011-12-20?13:39??HALTIT.C
?????文件???????4245??2011-12-20?13:39??FORMATIT.C
?????文件???????7139??2011-12-20?13:38??FILSYS.H
?????文件???????1744??2011-12-20?13:38??DIRGETT.C
?????文件???????4007??2011-12-20?13:38??DIR.C
?????文件???????2611??2011-12-20?13:38??CREATDE.C
?????文件?????238592??2012-01-12?16:36??MAIN.NCB
?????文件??????52736??2012-01-12?16:36??MAIN.OPT
?????文件???????4467??2011-12-20?13:39??MAIN.DSP
?????文件????????533??2011-12-20?13:39??MAIN.DSW
????.......????729088??2011-12-20?13:38??報告.doc
?????文件???????1079??2011-12-20?13:38??ACCESS.C
?????文件???????1768??2011-12-20?13:38??BALLFRE.C
?????文件????????556??2011-12-20?13:38??BRDWT.C
?????文件???????5915??2011-12-20?13:38??CMDEXP.C
?????文件???????2848??2011-12-20?13:39??REG.C
?????文件???????5479??2011-12-20?13:39??READWE.C
?????文件???????2079??2011-12-20?13:39??OPENCLO.C
?????文件????????933??2011-12-20?13:39??NAME.C
?????文件???????2950??2011-12-20?13:39??MAIN.C
?????文件???????2635??2011-12-20?13:39??LOG.C
?????文件????????924??2011-12-20?13:39??INIT.C
?????文件?????102113??2012-01-12?16:32??二級文件系統(tǒng)2.rar
-----------?---------??----------?-----??----
??????????????1181515????????????????????25
評論
共有 條評論