《信息安全专业导论》第六周学习笔记

发布时间 2023-10-15 22:26:40作者: 江河入海流

知识点总结:

十一章EXT2系统

EX2文件系统数据结构

创建虚拟硬盘

mke2fs [-b blksize -N ninodes] device nblocks

虚拟磁盘布局

Block#0:引导块

超级块

Block#1
容纳整个文件系统的信息
超级块的重要字段:
u32 s_inodes_count://文件系统中节点总数
u32 s_blocks_count://文件系统中块总数
u32 s_r_blocks_count://为超级用户保留的块数
u32 s_free_blocks_count: //文件系统中空闲块总数
u32 s_mtime://文件系统的挂接时间
u32 s_wtime://最后一次对该超级块进行写操作的时间
u32 s_magic ://魔数签名,用于确定文件系统版本的标志
u32 s_inodes_per_group://表示每个组块的inode数目,查找文件inode所在块的位置很重要
u32 s_mnt_count://文件系统挂接计数
u32 s_max_mnt_count://文件系统最大挂接计数
u32 s_state://文件系统的状态

块描述符

Block#2

块和索引节点位图

BLOCK#8:块位图
BLOCK:9:索引节点位图

索引节点

BLOCK#10:索引节点
直接块
间接块
双重间接块
三重间接块

数据块

紧跟在索引节点块后面的是文件存储数据块

目录条目

包含dir_entry结构

邮差算法

Linear_address LA = N*block + house;
Block_address BA = (LA/N,LA%N);

C语言中的Test-Set-Clear位

C语言结合使用邮差算法和位屏蔽来进行下面的位操作

将索引节点号转换为磁盘上的索引节点

编程实例




3级文件系统函数

挂载算法

mount filesys mount_point
可将某个文件系统挂载到mount_point目录上
卸载算法同理

卸载算法

交叉挂载点

向下遍历
向上遍历

文件系统项目拓展

多个组-4KB大小块-管道文件-I/O缓冲

苏格拉底挑战