1 / 19
文档名称:

操作系统实验文件管理C++代码.doc

格式:doc   大小:72KB   页数:19页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

操作系统实验文件管理C++代码.doc

上传人:相惜 2021/10/24 文件大小:72 KB

下载得到文件列表

操作系统实验文件管理C++代码.doc

文档介绍

文档介绍:精选范本,供参考!
页脚下载后可删除,如有侵权请告知删除!
精选范本,供参考!
#include <>
#include <>
#include <>
#include <>
#include<stack>
using namespace std;
#define BLKSIZE 512 // 数据块的大小
#define BLKNUM 512 // 数据块的块数
#define INODESIZE 32 // i节点的大小
#define INODENUM 32 // i节点的数目
#define FILENUM 8 // 翻开文件表的数目
//用户
typedef struct
{
char user_name[10]; // 用户名
char password[10]; // 密码
} User;
//i节点
typedef struct
{
short inum; // 文件i节点号
char file_name[10]; // 文件名
char type; // 文件类型
char user_name[10]; // 文件所有者
short iparent; // 父目录的i节点号
short length; // 文件长度
short address[2]; // 存放文件的地址
} Inode;
//翻开文件表
typedef struct
{
short inum; // i节点号
char file_name[10]; // 文件名
short mode; // 读写模式(1:read, 2:write,
// 3:read and write)
} File_table;
// 申明函数
void login(void);
void init(void);
精选范本,供参考!
页脚下载后可删除,如有侵权请告知删除!
精选范本,供参考!
int analyse(char *);
void save_inode(int);
int get_blknum(void);
void read_blk(int);
void write_blk(int);
void release_blk(int);
void pathset();
void del(int);
// 用户命令处理函数
void help(void);
void cd(void);
void dir(void);
void mkdir(void);
void creat(void);
void open(void);
void read(void);
void write(void);
void close(void);
void delet(void);
void logout(void);
void command(void);
void quit();
//#include ""
//定义全局变量
char choice;
int argc; // 用户命令的参数个数
char *argv[5]; // 用户命令的参数
int inum_cur; // 当前目录
char temp[2*BLKSIZE]; // 缓冲区
User user; // 当前的用户
char bitmap[BLKNUM]; // 位图数组
Inode inode_array[INODENUM]; // i节点数组
File_table file_array[FILENUM]; // 翻开文件表数组
char image_name[10] = ""; // 文件系统名称
FILE *fp; // 翻开文件指针
//创立映像hd,并将所有用户和文件去除
void format(void)
{
int i;
精选范本,供参考!
页脚下载后可删除,如有侵权请告知删除!
精选范本,供参考!
Inode inode;
printf("Will be to format filesystem...\n");
printf("WARNING:ALL DATA ON THIS FILESYSTEM WILL BE