计算机操作系统教程实验指导(第2版)

  • 格式:doc
  • 大小:202.00 KB
  • 文档页数:25

下载文档原格式

  / 25
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1. 编程管理文件makefike

filsys: main.o ingetput.o iallfre.o ballfre.o name.o access.o log.o close.o creat.o delete.o dir.o open.o rdwt.o format.o install.o halt.o cc-o filsys main.o

ingetput.o iallfre.o ballfre.o name.o access.o log.o close.o creat.o delete.o dir.o open.o rdwt.o format.o install.o halt.o

main.o: main.c filesys.h cc-c main.c

igetput.o: igetput.c filesys.h cc-c igetput.c

iallfre.o: iallfre.c filesys.h cc-c iallfre.c

ballfre.o: ballfre.c filesys.h cc-c ballfre.c

name.o: name.c filesys.h cc-c name.c

accesse.o: access.c filesys.h cc-c access.c

log.o: log.c filesys.h cc-c log.c

close.o: close.c filesys.h cc-c close.c

creat.o: creat.c filesys.h cc-c creat.c

delete.o: delete.c filesys.h cc-c delete.c

dir.o: dir.c filesys.h cc-c dir.c

open.o: open.c filesys.h cc-c open.c

rdwt.o: rdwt.c filesys.h cc-c rdwt.c

format.o: format.c filesys.h cc-c format.c

install.o: install.c filesys.h cc-c install.c

halt.o: halt.c cc-c halt.c

2.头文件filesye.h

#define BLOCKSIZE 512

#define SYSOPENFILE 40

#define DIRNUM 128

#define PWDSIZ 14

#define PWDNUM 12

#define NOFILE 20

#define NADDR 10

#define NHINO 128

#define USERNUM 10

#define DINODESIZ 32

#define FILEBLK 512

#define NICFREE 50

#define NICNOD 50

#define DINODESTART 2*BLOCKSIZ

#define DATASTART(2+DINODEBLK)*BLOCKSIZ #define DIEMPTY 00000

#define DIFILE 01000

#define DIDIR 02000

#define UDIREAD 00001

#define UDIWRITE 00002

#define UDIEXICUTE 00004

#define GDIREAD 00010

#define GDIWRITE 00020

#define GDIEXICUTE 00040

#define ODIREAD 00100

#define ODIWRITE 00200

#define ODIEXICUTE 00400

#define READ 1

#define WRITE 2

#define EXICUTE 3

#define DEFAULTMODE 00777

#define IUPDATE 00002

#define SUPDATE 00001

#define FREAD 00001

#define FWRITE 00002

#define FAPPEND 00004

#define DISKFULL 65525

#define SEEL..SET 0

/*文件系统数据结构*、struct inode{

struct inode *i_frow;

struct inode *i_back;

char i_flag;

unsigned int i_ino;

unsigned int i_count;

unsigned short di_number;

unsigned short di_moder;

unsigned short di_uid;

unsigned short di_gid;

unsigned short di_size;

unsigned int di_addr[NADDR];

};

struct dinode{

unsigned short di_number;

unsigned short di_moder;

unsigned short di_uid;

unsigned short di_gid;

unsigned long di_size;

unsigned int di_addr[NADDR];

};

struct direet{

char d_name[DIRSIZ];

unsigned int d_ino;

};

struct filsys{

unsigned short s_size;

unsigned long s_fsize;