操作系统-文件存储空间高效管理--位示图法.doc

操作系统-文件存储空间高效管理--位示图法.doc

ID:57773364

大小:133.50 KB

页数:25页

时间:2020-03-27

操作系统-文件存储空间高效管理--位示图法.doc_第1页
操作系统-文件存储空间高效管理--位示图法.doc_第2页
操作系统-文件存储空间高效管理--位示图法.doc_第3页
操作系统-文件存储空间高效管理--位示图法.doc_第4页
操作系统-文件存储空间高效管理--位示图法.doc_第5页
资源描述:

《操作系统-文件存储空间高效管理--位示图法.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、#include#include#include#includeusingnamespacestd;structFCB{charfname[16];//文件名inttype;//1代表普通文件2代表目录文件0表示空文件intsize;//文件大小intfatherBlockNum;//当前的父目录盘块号intfirstBlockNum;//该文件第一个盘块号intcurrentBlockNum;//当前的盘块intlastBlockNum

2、;voidinitialize(){strcpy(fname,"");type=0;size=0;fatherBlockNum=firstBlockNum=currentBlockNum=lastBlockNum=0;}};/*常量设置*/constchar*FilePath="C:\myfiles";constintBlockSize=512;//盘块大小(可配置)constintOPEN_MAX=5;//能打开最多的文件数constintBlockCount=BlockSize/sizeof(int)

3、;//盘块数constintDiskSize=BlockSize*BlockCount;//磁盘大小constintBlockFcbCount=BlockSize/sizeof(FCB);//目录文件的最多FCB数constintm=16;//位示图的列数constintn=BlockCount/m;//位示图的行数//constintIOBUF_SIZE=512;//charIOBuffer[IOBUF_SIZE];intOpenFileCount=0;structOPENLIST//用户文件打开表{intf

4、iles;//当前打开文件数FCBf[OPEN_MAX];//FCB拷贝OPENLIST(){files=0;for(inti=0;i

5、CurrentBlockNum,int_LastBlockNum,char*name)//父块号,第一个盘块号,当前块号,目录名{strcpy(fcb[0].fname,name);//本身的FCBfcb[0].fatherBlockNum=_FatherBlockNum;fcb[0].firstBlockNum=_FirstBlockNum;fcb[0].currentBlockNum=_CurrentBlockNum;fcb[0].lastBlockNum=_LastBlockNum;fcb[0].type

6、=2;//标记目录文件for(inti=1;i

7、rFileroot;//根目录intmap[n][m];//位示图,最初都为0intcheck[n][m];//check数组用于一致性检查,作为数据计数器;chardata[BlockCount-5][BlockSize];voidformat(){memset(FAT1,0,BlockCount);//FAT1memset(FAT2,0,BlockCount);//FAT2FAT1[0]=FAT1[1]=FAT1[2]=FAT1[3]=FAT1[4]=-2;//0,1,2盘块号依次代表FAT1,FAT2,根

8、目录区FAT2[0]=FAT2[1]=FAT2[2]=FAT2[3]=FAT2[4]=-2;//FAT作备份root.init(2,2,2,2,"G:\");//根目录区for(inti=0;i<=BlockCount;i++)//map[0][0],map[0][1],map[0][1],map[0][2],map[0][3],map[0][4]以及check{//对应位置为占用i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。