77范文网 - 专业文章范例文档资料分享平台

简单文件系统的实现的实验报告(4)

来源:网络收集 时间:2019-03-04 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

}

}

fatptr->id=END;

fatptr=fat1+bknum;

fatptr->id=END;

bkptr=(unsigned char *)(myvhard+bknum*BLOCKSIZE); while(tmplen

for(p=buf+off;p

*p=*txtmp; tmplen++; txtmp++; off++;

if(tmplen==len)

break;

for(i=0;i

buf[i]=0;

//if(off) //{ //} //else //{ //}

//for(i=0;i

buf[i]=0;

for(i=0;i

buf[i]=bkptr[i]; tmplen2++;

if(tmplen2==openfilelist[curfd].length)

break;

/*if((*p)==NULL) { }*/

break;

} free(buf);

if(openfilelist[fd].count>openfilelist[fd].length) { }

openfilelist[fd].fcbstate=1; return tmplen; } /**/ /* 原型声明: 功能描述: 输入: 输出:

函数功能实现算法描述: */

unsigned short findFree() {

unsigned short i; fat *fat1,*fatptr;

unsigned short findFree() 寻找下一个空闲盘块 无

返回空闲盘块的id

openfilelist[fd].length=openfilelist[fd].count; for(i=0;i

openfilelist[fd].count=rwptr+tmplen; if(off>=BLOCKSIZE) { }

off=off-BLOCKSIZE; bknum=fatptr->id; if(bknum==END) { }

fatptr=fat1+bknum;

bkptr=(unsigned char *)(myvhard+bknum*BLOCKSIZE);

bknum=fatptr->id=findFree(); if(bknum==END) return -1; fatptr=fat1+bknum; fatptr->id=END;

bkptr[i]=buf[i];

fat1=(fat *)(myvhard+BLOCKSIZE); for(i=6; i

printf(\ return END; } /* 原型声明: 功能描述: 输入: 输出:

函数功能实现算法描述: */

int findFreeO() { int i;

for(i=0;i

printf(\ return -1; } /**/ /* 原型声明: 功能描述: 输入:

fd

打开文件的id 返回实际写的长度

int my_write(int fd) 写文件函数

if(openfilelist[i].free==0) { }

return i;

int findFreeO() 寻找空闲文件表项 无

返回空闲文件表项的id

fatptr=fat1+i; if(fatptr->id == FREE) { }

return i;

输出:

函数功能实现算法描述: */

int my_write(int fd) {

int wstyle=0,wlen=0; fat *fat1,*fatptr; unsigned short bknum; unsigned char *bkptr; char text[MAX_TXT_SIZE]; fat1=(fat *)(myvhard+BLOCKSIZE); if(fd>MAX_OPEN_FILE) { }

while(wstyle<1||wstyle>3) {

printf(\ite style:\\n1.cut write\\t2.cover write\\t3.add write\\n\scanf(\getchar(); switch(wstyle) {

case 1://截断写

{ }

bknum=openfilelist[fd].first; fatptr=fat1+bknum; while(fatptr->id!=END) { }

fatptr->id=FREE;

bknum=openfilelist[fd].first; fatptr=fat1+bknum; fatptr->id=END; openfilelist[fd].length=0; openfilelist[fd].count=0; break;

bknum=fatptr->id; fatptr->id=FREE; fatptr=fat1+bknum;

printf(\return -1;

case 2://覆盖写

{

openfilelist[fd].count=0;

}

}

break;

case 3://追加写

{ }

bknum=openfilelist[fd].first; fatptr=fat1+bknum; openfilelist[fd].count=0; while(fatptr->id!=END) { }

bkptr=(unsigned char *)(myvhard+bknum*BLOCKSIZE); while(*bkptr !=0) { } break;

bkptr++;

openfilelist[fd].count++; bknum=fatptr->id; fatptr=fat1+bknum;

openfilelist[fd].count+=BLOCKSIZE;

default: }

break;

printf(\ gets(text);

if(do_write(fd,text,strlen(text),wstyle)>0) { } else { }

if(openfilelist[fd].count>openfilelist[fd].length) { }

openfilelist[fd].fcbstate=1; return wlen; }

openfilelist[fd].length=openfilelist[fd].count; return -1;

wlen+=strlen(text);

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库简单文件系统的实现的实验报告(4)在线全文阅读。

简单文件系统的实现的实验报告(4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/495517.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: