操作系统实验报告模板(17)

发布时间:2021-06-05

这是操作系统课程中的四次实验最终报告,内包括进程通信实验,进程同步互斥实验,文件系统模拟实验和Linux shell操作。里面的程序都是我运行过的。

int i,FcbIndex;

//确保没有打开过该文件 = 相同名字 + 相同目录

for(i=0;i<OPEN_MAX;i++) {

if(openlist->f[i].type ==GENERAL && strcmp(openlist->f [i].fname,file)==0 &&openlist->f[i].fatherBlockNum == current) {

printf("该文件已经被打开!\n"); return 0; } }

//确保有空的打开文件项 if(openlist->files == OPEN_MAX) {

printf("打开文件数目达到上限!无法再打开新文件.\n"); return 0; }

//确保当前目录下有该文件,并且记录下它的FCB下标

struct dirFile *dir; //当前目录的指针

if(current==2)

dir=&(osPoint->root); else

dir=(struct dirFile *)(osPoint->data [current-3]);

for(i = 1;i< BlockFcbCount;i++) { //查找该文件

if(dir->fcb[i].type==GENERAL && strcmp(dir->fcb[i].fname,file)==0 ) {

FcbIndex=i; break; } }

if(i==BlockFcbCount) {

printf("当前目录下不存在该文件!\n"); return 0; }

//装载新文件进入打开文件列表,(FCB信息,文件数++) ??难道名字过不来? openlist->f[OpenFileCount] = dir->fcb[FcbIndex]; //FCB拷贝 openlist->files ++; printf("文件打开成功!\n"); OpenFileCount++; return 1; }

int close(char *file)

操作系统实验报告模板(17).doc 将本文的Word文档下载到电脑

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:7 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219