mfd[i].user=i; memset(f,0,sizeof f); for(int j=0;j<5;j++){ int t; do t=rand(); while(f[t]); f[t]=1; mfd[i].p[j]=ufd[t]; } } } while(n--&&flag2){ cout<<\ cin>>x; if(x<0||x>=10){ cout<<\ break; } for(int j=0;j<5;j++) cout<>s; switch(s){ case 1: if(flag3){ cout<<\输入你要创建的文件的名字:\ cin>>mfd[x].p[0].fname; cout<<\输入你要创建的文件的长度:\ cin>>mfd[x].p[0].len; cout<<\输入你要创建的文件的权限:\ for(int i=0;i<3;i++) cin>>mfd[x].p[0].procode[i]; for(int j=0;j<5;j++) cout<>mfd[x].p[index].fname; cout<<\输入你要创建的文件的长度:\ cin>>mfd[x].p[index].len; cout<<\输入你要创建的文件的权限:\ for(int i=0;i<3;i++) cin>>mfd[x].p[index].procode[i]; for(int j=0;j<5;j++) cout<>t; for(int i=0;i<5;i++){ if(mfd[x].p[i].fname==t){ index=i; mfd[x].p[i].fname=0; mfd[x].p[i].len=000; memset(mfd[x].p[i].procode,0,sizeof(mfd[x].p[i].procode)); } } for(int j=0;j<5;j++) cout<>file; for(int i=0;i<5;i++){ if(mfd[x].p[i].fname==file){ if(mfd[x].p[i].procode[2]==0) \\ cout<<\你没有权限\ else cout<<\可以打开\ } } cout<<\ break; case 4: for(int j=0;j<5;j++) cout<>file1; for(int i=0;i<5;i++){ if(mfd[x].p[i].fname==file1){ if(mfd[x].p[i].procode[1]==0) cout<<\你没有权限\ else cout<<\可以读\ } } cout<<\ break; case 7: cout<<\输入要写的文件:\ int file2; cin>>file2; for(int i=0;i<5;i++){ if(mfd[x].p[i].fname==file2){ if(mfd[x].p[i].procode[0]==0) cout<<\你没有权限\ else cout<<\可以写\ } } cout<<\ break; } } } return 0; } 实验结果:
实验体会:
本次实验主要是模拟了一下文件系统, 文件是我们平时接触最多也是最广的形式, 即便是不会计算机的人们也可以通过这种操作文件来很方便地完成操作, 而本次实验让我了解到了文件系统的内部实现,虽然仅仅是通过 C++模拟的,但还是让我对它的原理有了更好的理解,也是对我们上课的内容的一个巩固。
《计算机操作系统》实验五报告
实验五题目:Linux文件系统实验
实验目的: