⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mi.c

📁 多用户 :usr1, …, usr8 (1-8个用户) 多级目录:可有多级子目录; 具有login (用户登录) 系统初始化(建文件卷、提供登录模块) 文件的创建: create 文件的打开
💻 C
字号:


#include <stdio.h>
#include <time.h>

#define NULL 0
#define NULLINDX -1
#define FNAMELEN 11

#define CAP_SUM 102400 /* 模拟磁盘容量(Byte) */
#define BLOCK_SIZE 16 /*盘块大小(Byte)*/
#define FREE '-' /*空闲占位符*/
#define BLOCK_SUM_NUM 6400/*总盘块数100*(1024/16)*/
#define FTYPE_A 'a'
#define FTYPE_B 'b'

#define EMPTY '1' /*位图空盘块*/
#define FULL  '0' /*位图已用盘块*/
#define MAP_ROW_NUM 80
#define MAP_COLLUM_NUM 80

#define DIR_ITEM_NUM 100
#define INDEX_ITEM_NUM 100

typedef struct index{/*文件索引块*/
    int num;/*编号*/
    unsigned long int len;/*文件长度*/
    char type;/*类型*/
    char ModiTime[27];/*文件建立/最后修改的时间(yymmddhhmmss)*/
    long iAddrDir0[8];/*直接索引*/
    long iAddrDir1;/*一级索引*/
    long iAddrDir2;/*二级索引*/
    long iAddrDir3;/*三级索引*/
    char used;
}I,*pI;
I findex[INDEX_ITEM_NUM];



typedef struct directory{  /*目录项*/
    char fname[FNAMELEN];
    int inum;
    char used;
}Dir,*pDir;
Dir fdir[DIR_ITEM_NUM];


char *cmd[5]={"create","earse","read","write","ask"};

char map[MAP_ROW_NUM][MAP_COLLUM_NUM];


void initIndx(){
    int i,j;
    for(i=0;i<INDEX_ITEM_NUM;i++){
        findex[i].num=i;     /*i从1-100*/
        findex[i].used='0';
        findex[i].type=FTYPE_A;/*'a'*/
        findex[i].len=0;
        strcpy(findex[i].ModiTime,"");/*修改时间初始化*/
        for(j=0;j<8;j++)findex[i].iAddrDir0[j]=NULLINDX;/*-1*/
        findex[i].iAddrDir1=NULLINDX;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -