📄 myfilelib.h
字号:
#include <stdarg.h>
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <fcntl.h>
#include <limits.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <ctype.h>
#define NOFILE 30
#define SERVER_FIFO_NAME "/tmp/serv_fifo"
#define CLIENT_FIFO_NAME "/tmp/client_%d_fifo"
#define BUFFER_SIZE 80
#define SP_bsize 1024
#define DI_bsize 65536
#define DB_bsize 1024000
typedef unsigned short dblock_addr;
typedef unsigned short dinode_addr;
typedef struct dinode {
unsigned di_mode;
short di_nlink;
unsigned di_uid;
unsigned di_gid;
unsigned di_size;
dblock_addr di_addr[13];
time_t di_atime;
time_t di_mtime;
time_t di_ctime;
int fill[1];
} dinode;
typedef struct inode {
unsigned di_mode;
short di_nlink;
unsigned di_uid;
unsigned di_gid;
int di_size;
struct inode *i_forw;
struct inode *i_back;
char i_flag;
int i_count;
dev_t i_dev;
dinode_addr inumber;
dblock_addr i_a[13];
dblock_addr i_l;
} inode;
typedef struct direct {
dinode_addr DinodeAddr;
char d_name[14];
} direct;
struct file {
char f_flag;
int f_fount;
inode *f_uinode;
int f_off;
};
struct data_to_pass {
int index;
int length;
char pathname[BUFFER_SIZE-1];
int flag;
int mode;
dinode_addr DinodeAddr;
unsigned nbytes;
int filetype;
pid_t client_pid;
};
struct file *u_ofile[NOFILE];
int FD = 2;
int fd ;
int open_flag = 0;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -