一、任务要求
[ 1 ] 知识点归纳以及自己最有收获的内容,选择至少2个知识点利用chatgpt等工具进行苏格拉底挑战,并提交过程截图,提示过程参考下面内容 (4分)
我在学***X知识点,请你以苏格拉底的方式对我进行提问,一次一个问题
核心是要求GPT:请你以苏格拉底的方式对我进行提问
然后GPT就会给你提问,如果不知道问题的答案,可以反问AI:你的理解(回答)是什么?
如果你觉得差不多了,可以先问问GPT:针对我XXX知识点,我理解了吗?
GPT会给出它的判断,如果你也觉得自己想清楚了,可以最后问GPT:我的回答结束了,请对我的回答进行评价总结,让它帮你总结一下。
[ 2 ] 问题与解决思路,遇到问题最先使用chatgpt等AI工具解决,并提供过程截图(3分)
[ 3 ] 实践过程截图,代码链接(2分)
[ 4 ] 其他(知识的结构化,知识的完整性等,提交markdown文档,使用openeuler系统等)(1分)
二、知识点总结
EXT2文件系统数据结构
- 通过mkfs创建虚拟磁盘
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: EXT2将磁盘块分成好几组,每个组有8192个块(32k),每组用一个块组描述符结构体来描述。
- 块个索引节点位图
Block#8:块位图。位图用来表示某种项的位序列,如磁盘块或索引节点
Block#9:索引节点位图。 一个索引节点用来代表一个文件的数据结构
- 索引节点
Block#10
直接块:i_block[0]至i_block[11],指向直接磁盘块
间接块:i_block[12]指向一个包含256个块编号的磁盘块,每一个块编号指向一个磁盘块。
双重间接块:i_block[13]指向一个指向256个块的块,每个块指向256个磁盘块。
三重间接块
- 数据块
紧跟在索引节点块
- 邮差算法
Linear_address LA = N*block + house;
Block_address BA = (LA/N,LA%N);
3级文件系统
- 挂载算法
可将某个文件挂载到mount_point目录上,它允许文件系统包含其他文件作为文件系统的一部分。
mout filesys mount_point
- 卸载算法
用于操作可卸载已挂载的文件系统,它将挂载的文件系统与挂载点分开。
三、苏格拉底挑战
标签:count,信息安全,文件系统,20211316,u32,磁盘,节点,Block,郭佳昊 From: https://www.cnblogs.com/GJH6/p/17765729.html