91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 565.39 KB
    文件類型: .rar
    金幣: 1
    下載: 0 次
    發布日期: 2024-09-12
  • 語言: 其他
  • 標簽:

資源簡介

可以實現下列幾條命令:
Login 用戶登錄
Dir 列文件目錄
Create 創建文件
Delete 刪除文件
Open 打開文件
Close 關閉文件
Read 讀文件
Write 寫文件

資源截圖

代碼片段和文件信息

#include?“filesys.h“

int?physic[100];???????????//文件地址緩沖區
int?style=1;???????????????//文件的類型
char?cur_dir[10]=“root“;???//當前目錄?

void?format()?????//格式化
{
int?ijk;
super_block.n=50;

for(i=0;i<50;i++)????????????//超級塊初始化
{
super_block.free[i]=i; //存放進入棧中的空閑塊
super_block.stack[i]=i+50;??//存放下一組的盤塊
}

for(i=0;i<640;i++) //i結點信息初始化
{
for(j=0;j<100;j++)
{
i_node[i].file_address[j]=-1;//文件地址
}
i_node[i].file_length=-1;??//文件長度
i_node[i].file_style=-1;??//文件類型
}

for(i=0;i<640;i++)?????//根目錄區信息初始化
{
strcpy(root[i].file_name““);
root[i].i_num=-1;
strcpy(root[i].dir_name““);
}?

for(i=0;i<20449;i++)?????//存儲空間初始化?
{
memory[i].n=0;??????
memory[i].a=0;??????
for(j=0;j<50;j++)
{
memory[i].free[j]=-1;
}
}
for(i=0;i<20449;i++)????//將空閑塊的信息用成組鏈接的方法寫進每組的最后一個塊中
{ //存儲空間初始化
if((i+1)%50==0)
{
k=i+1;
for(j=0;j<50;j++)
{
if(k<20450)
{
memory[i].free[j]=k;//下一組空閑地址
memory[i].n++;??//下一組空閑個數???注意在memory[i].n++之前要給其賦初值
k++;
}
else
{
memory[i].free[j]=-1;
}
}
memory[i].a=0;????//標記為沒有使用
continue;?????//處理完用于存儲下一組盤塊信息的特殊盤塊后,跳過本次循環
}
for(j=0;j<50;j++)
{
memory[i].free[j]=-1;
}
memory[i].n=0;??
}
printf(“已經初始化完畢\n“);
printf(“進入文件模擬.....\n\n“);
}
void?write_file(FILE?*fp)????//將信息讀入系統文件中
{
int?i;
fp=fopen(“system““wb“);

for(i=0;i<20449;i++)
{
fwrite(&memory[i]sizeof(struct?block)1fp);
}
fwrite(&super_blocksizeof(struct?block_super)1fp);

for(i=0;i<640;i++)
{
fwrite(&i_node[i]sizeof(struct?node)1fp);
}
for(i=0;i<640;i++)
{
fwrite(&root[i]sizeof(struct?dir)1fp);
}
fclose(fp);
}

void?read_file(FILE?*fp)???//讀出系統文件的信息
{
int?i;
fp=fopen(“system““rb“);
for(i=0;i<20449;i++)
{
fread(&memory[i]sizeof(struct?block)1fp);
}

fread(&super_blocksizeof(struct?block_super)1fp);

for(i=0;i<640;i++)
{
fread(&i_node[i]sizeof(struct?node)1fp);
}

for(i=0;i<640;i++)
{
fread(&root[i]sizeof(struct?dir)1fp);
}
fclose(fp);
}

void?callback(int?length)????//回收磁盤空間
{
int?ijkmq=0;
for(i=length-1;i>=0;i--)
{
k=physic[i];?????//需要提供要回收的文件的地址
m=49-super_block.n;????//回收到棧中的哪個位置
if(super_block.n==50)???//注意?當super_block.n==50時?m=-1;的值
{????????//super_block.n==50的時候棧滿了,要將這個棧中的所有地址信息寫進下一個地址中
for(j=0;j<50;j++)
{
memory[k].free[j]=super_block.free[j];
}
super_block.n=0;
memory[k].n=50;
}
memory[k].a=0;?
if(m==-1)
{
m=49;??????//將下一個文件地址中的盤塊號回收到棧底中,這個地址中存放著剛才滿棧的地址的信息?
}
super_block.free[m]=physic[i];?//將下一個文件地址中的盤塊號回收到棧中
super_block.n++;
}
}

void?allot(int?length)?????//分配空間
{
int?ijkmp;
for(i=0;i {
k=50-super_block.n;????//超級塊中表示空閑塊的指針
m=super_block.free[k];???//棧中的相應盤塊的地址
p=super_block.free[49];???//棧中的最后一個盤塊指向的地址
if(m==-1||memory[p].a==1)??//檢測是否還有下一組盤塊
{
print

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件??????33671??2009-06-25?22:44??myProject\Debug\c.obj

?????文件??????38644??2009-07-01?17:39??myProject\Debug\fileSys.obj

?????文件??????????0??2009-07-01?17:39??myProject\Debug\fileSys.sbr

?????文件??????58368??2009-07-01?17:39??myProject\Debug\myProject.bsc

?????文件?????213083??2009-07-01?17:39??myProject\Debug\myProject.exe

?????文件?????305008??2009-07-01?17:39??myProject\Debug\myProject.ilk

?????文件?????229788??2009-07-01?17:39??myProject\Debug\myProject.pch

?????文件?????508928??2009-07-01?17:39??myProject\Debug\myProject.pdb

?????文件??????50176??2009-07-01?17:47??myProject\Debug\vc60.idb

?????文件??????53248??2009-07-01?17:39??myProject\Debug\vc60.pdb

?????文件??????????7??2009-07-01?17:47??myProject\filename

?????文件??????13409??2009-06-29?16:55??myProject\fileSys.cpp

?????文件????????730??2009-06-29?16:05??myProject\fileSys.h

?????文件??????33671??2009-06-25?22:44??myProject\myProject\Debug\c.obj

?????文件??????38189??2009-07-01?17:37??myProject\myProject\Debug\fileSys.obj

?????文件??????????0??2009-07-01?17:37??myProject\myProject\Debug\fileSys.sbr

?????文件??????58368??2009-07-01?17:37??myProject\myProject\Debug\myProject.bsc

?????文件?????213083??2009-07-01?17:37??myProject\myProject\Debug\myProject.exe

?????文件?????297560??2009-07-01?17:37??myProject\myProject\Debug\myProject.ilk

?????文件?????229788??2009-07-01?17:36??myProject\myProject\Debug\myProject.pch

?????文件?????508928??2009-07-01?17:37??myProject\myProject\Debug\myProject.pdb

?????文件??????50176??2009-07-01?17:37??myProject\myProject\Debug\vc60.idb

?????文件??????53248??2009-07-01?17:36??myProject\myProject\Debug\vc60.pdb

?????文件??????????4??2009-06-29?17:01??myProject\myProject\filename

?????文件??????13409??2009-06-29?16:55??myProject\myProject\fileSys.cpp

?????文件????????730??2009-06-29?16:05??myProject\myProject\fileSys.h

?????文件???????4378??2009-06-29?17:01??myProject\myProject\myProject.dsp

?????文件????????541??2009-06-25?09:49??myProject\myProject\myProject.dsw

?????文件??????58368??2009-07-01?17:38??myProject\myProject\myProject.ncb

?????文件??????48640??2009-07-01?17:38??myProject\myProject\myProject.opt

............此處省略15個文件信息

評論

共有 條評論