




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
寧德師范學院計算機系實驗報告(2014—2015學年第二學期)課程名稱操作系統實驗名稱實驗六文件系統設計試驗專業計算機科學與技術(非師)年級2012級學號B2012102147姓名王秋指導教師王遠帆實驗日期2015-06-20實驗目的與要求:通過設計一個基于索引結構的文件系統,加深對文件系統的基本知識理解。了解文件系統設計的基本概念。(1)熟悉文件系統的物理結構;(2)熟悉文件系統的目錄管理;(3)掌握文件系統空閑空間管理的基本方法;(4)進一步理解現代操作系統文件管理知識。實驗設備(環境):(1)一臺安裝有CygwinTerminal的計算機(2)WindowsXP操作系統(3)VC++6.0實驗內容:(1)熟悉文件系統的物理結構;(2)熟悉文件系統的目錄管理;(3)掌握文件系統空閑空間管理的基本方法;(4)進一步理解現代操作系統文件管理知識。實驗步驟、實驗結果及分析:(1)設計一個文件系統的索引結構,描述邏輯結構與物理索引結構之間的關系;(2)設計文件目錄,描述文件名與文件物理結構之中的映射關系;(3)定義作業;(4)設計文件建立;(5)設計文件系統的其它功能; //報告目前為止的分配情況,首先報告文件目錄的部分信息fprintf(e,"...Thistime,thefiledirectory:----\n"); fprintf(e,"NAMEINDEX_ADDRESS\n"); for(x1=0;x1<N+1;x1++)fprintf(e,"%c%x\n",HEAD->names[x1],HEAD->p[x1]); //其次報告文件索引表的部分信息 for(x1=0;x1<N+1;x1++){ fprintf(e,"http://////////TheindexofFILE%c://///////\n",HEAD->names[x1]);fprintf(e,"LOGIC_NUMBERPHYSICAL_NUMBERFLAG\n"); for(y=0;y<HEAD->size[x1];y++)fprintf(e,"%d%d%c\n",HEAD->p[x1]->lr[y],HEAD->p[x1]->pr[y],HEAD->p[x1]->st[y]); } //第三,報告位圖信息 fprintf(e,"Thistimethebitmappinggraph:\n"); for(j=0;j<4;j++){ fprintf(e,"");for(i=0;i<8;i++)fprintf(e,"%d",J[j][i]); fprintf(e,"\n"); }}voidmain(){intk;e=fopen("results.txt","w");//打開保存結果的文件for(j=0;j<4;j++)for(i=0;i<8;i++)J[j][i]=0;//初始化位圖HEAD=(structlist*)malloc(sizeof(structlist));for(i=0;i<32;i++){HEAD->names[i]='';HEAD->size[i]=0;HEAD->p[i]=NULL;}//初始化文件目錄printf("Pleaseinputnumberofjobs:");scanf("%d",&jobs);scanf("%c",&bb);intkk=0;//以下輸入建立的文件數以及文件名字,并將這些信息保存在job數組之中while(kk<jobs){fprintf(e,"FILE%d:\n",kk);printf("FILE%d:\n",kk);printf("NameandSize");scanf("%c,%d",&(job[kk].name),&(job[kk].size));scanf("%c",&bb);fprintf(e,"%c,%d",job[kk].name,job[kk].size);kk++;}for(k=1;k<=jobs;k++)run();//每個文件進行一次分配//回收資源fclose(e);for(i=0;i<32;i++){free(HEAD->p[i]);HEAD->p[i]=NULL;}free(HEAD);HEAD=NULL;}
文件系統模擬程序 1.索引結構和文件目錄1212……N文件名等塊塊塊2.文件目錄模擬structlist{charnames[32];intsize[32];structindex*p[32];//文件的索引表地址}*HEAD;該模擬文件最多只能模擬32個文件,HEAD指針指向了該模擬目錄。3.文件索引表模擬文件索引表的定義structindex{intlr[32];intpr[32];charst[32];}*wq;4.位圖intJ[4][8]。位圖J表示這些磁盤物理塊的情況。J[j][i]為0時標記塊空閑,為1標記該塊已分配出去。各塊號按行存儲。因此,J[j][i]表示j*8+i(塊號)塊的分配情況5.run函數6.Main函數實驗分析:程序要為每個文件建立一張索引表,索引表中用數組指出文件信息所在的邏輯塊號和與之對應的物理塊號。程序中intJ[j][i]表示這些磁盤物理塊的情況。J[j][i]為0時標記塊空閑,為1標記該塊已分配出去。各塊號按行存儲。實驗總結(包括過程總結、心得體會及實驗改進意見等):1.在命令提示符中運行應用程序時要先轉到應用程序所在的盤符下,要把應用程序所在目錄位置輸入正確,才能找到相應的程序運行。2.文件的物理結構和組織是指邏輯文件在物理存儲空間中存放方法和組織關系;使用多級目錄可以解決文件重名問題與縮短搜索時間;現代操作系統文件管理就是對塊空間的管理,包括空閑塊的分配、回收和組織;索引文件結構中的索引表是用來指示邏輯記錄和物理塊之間對應關系的。3.通過本次實驗我了解了文件系統的基本概念,物理文件結構有三種結構,連續文件、鏈接文件、索引文件。用戶能直接處理其中的結構與數據的是邏輯結構,文件在外存上的存儲組織形式是物理結構。只有合理的進行存儲空間的管理,才能保證多用戶共享外存和快速的實現文件的按名存取。指導教師評語:完成所有規定的實驗內容,實驗步驟正確,結果正確;以后需要進一步改進或注意的是:(1)實驗目的與要求、實驗設備、實驗內容格式要對齊。(2)源代碼要
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論