操作系统 模拟linux文件管理系统
int ialloc(void);
申请一个i结点 返回结点号 否则返回-1。
返回的是空闲结点号栈中最小的结点号,结点用完时返回-1,申请失败。
void ifree(int index);
指定一个结点号,回收一个i结点。
先清空结点,然后插入栈中合适位置(必须保持结点号的有序性)。
void readinode(int index,INODE &inode);
读指定的i结点( n#结点,读指针应定位到514+64*n (64B)+2*(n/8) )到INOE inode寄存于对同一结点的大量操作
void writeinode(INODE inode,int index);
把INODE inode写回指定的i结点
2.对盘块的操作;用的是成组链接法。(n#盘块 读指针应定位到514*n)
int balloc(void);
申请一个盘块 返回盘块号 否则返回-1
void bfree(int index);
指定一个盘块号,回收一个盘块
3.对超块的操作;
void readsuper(void);
读超块到内存SUPERBLOCK superblock;
void writesuper(void);
内存SUPERBLOCK superblock;写回超块
4.对目录项的操作( n#目录项读指针应定位514*index+36*n )
便