實驗三 文件系統(tǒng)空白空間管理-空白目錄

實驗三 文件系統(tǒng)空白空間管理-空白目錄

ID:12347598

大?。?46.50 KB

頁數(shù):14頁

時間:2018-07-16

實驗三 文件系統(tǒng)空白空間管理-空白目錄_第1頁
實驗三 文件系統(tǒng)空白空間管理-空白目錄_第2頁
實驗三 文件系統(tǒng)空白空間管理-空白目錄_第3頁
實驗三 文件系統(tǒng)空白空間管理-空白目錄_第4頁
實驗三 文件系統(tǒng)空白空間管理-空白目錄_第5頁
資源描述:

《實驗三 文件系統(tǒng)空白空間管理-空白目錄》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、操作系統(tǒng)原理實驗三文件存儲空間管理模擬學(xué)號班級姓名指導(dǎo)老師實驗時間2014.6.5實驗三文件存儲空間管理模擬1.內(nèi)容:模擬文件存儲空間的管理,采用空白文件目錄法和空白塊鏈法實施空間分配。2.思想:文件存儲空間管理是文件系統(tǒng)的重要內(nèi)容。常用的管理思想有空白文件目錄法、空白塊鏈法和位示圖法。本實驗采用前兩種方法進行空間分配。(1)空白文件目錄法進行空間分配時,需要建立相關(guān)的數(shù)據(jù)結(jié)構(gòu),記錄目前空白區(qū)域和已使用區(qū)域,假設(shè)開始時全部區(qū)域空閑。當(dāng)有文件需要存儲時,先檢查空白文件目錄,找到適合區(qū)域立即分配,并修改空白文件目錄表和已使用區(qū)域分配表。為此需建立兩張表格,

2、分別記錄相關(guān)數(shù)據(jù)。空白文件目錄表(初始)序號首空白塊號空白快個數(shù)物理塊號備注101000,1,2,……,98,99空白文件目錄(中間)序號首空白塊號空白塊個數(shù)物理塊號標(biāo)志1242,3,4,5未分配2939,10,11未分配325525,26,27,28,29未分配439239,40未分配5………………未分配文件標(biāo)識首塊號文件塊個數(shù)狀態(tài)備注beta02占用Alpha63占用Toyota1213占用Sony309占用Ford504占用……………………已使用區(qū)域表(中間)上述兩張表的數(shù)據(jù)在系統(tǒng)運行中是發(fā)生變化的。文件空閑區(qū)分配和釋放算法如下圖所示:圖一文件空

3、閑區(qū)分配算法圖二文件空閑區(qū)回收算法(2)空白塊鏈法進行空間分配時,需要建立鏈表數(shù)據(jù)結(jié)構(gòu),將空閑塊按順序加以組織,分配和回收時在鏈首完成,同時建立文件目錄,記錄文件占用空間情況。文件標(biāo)識首塊號備注beta0Alpha6Toyota12Sony30Ford50…………源代碼#include#include#includeintmaxid=4;//空白表數(shù)目intmaxnum=4;//文件個數(shù)//空白文件typedefstruct{intid;intfirstblock;intblocknum;int

4、lastblock;}Space;//分配文件typedefstruct{charflag[10];intfirstnum;intfullnum;intlastnum;}Full;//初始化分配Fullfull[20]={{"Bete",0,2,1},{"Aple",6,3,8},{"Toyo",12,13,24},{"Ford",30,9,38}};Spacefile[20]={{1,2,4,5},{2,9,3,11},{3,25,5,29},{4,39,62,100}};//分配打印voidfullprint(){printf("文件名t首塊號

5、t文件塊個數(shù)末塊號");for(inti=0;i

6、id,file[i].firstblock,file[i].blocknum,file[i].lastblock);}printf("當(dāng)前空白區(qū)數(shù)目=%d",maxid);}voiddistribute(){//分配函數(shù)charS_File[10];//文件名intM;//申請塊數(shù)inttemp;//被分配的首塊號printf("文件分配");printf("輸入文件名");scanf("%s",S_File);printf("輸入申請塊數(shù)");scanf("%d",&M);for(intf=0;f

7、i=maxid){printf("本次無法分配");return;}if(file[f].blocknum>=M){temp=file[f].firstblock;printf("空白分區(qū)可用");if(file[f].blocknum==M){for(;f

8、irstblock=file[f+1].firstblock;file[f].blocknum

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。