“操作系统实验”实验报告

proc文件系统的实现

实验名称:proc文件系统的实现 实验日期:2021.7.5 班级:软嵌191 姓名:王康 学号:1930110778 一、实验目的

掌握虚拟文件系统的实现原理;
实践文件、目录、文件系统等概念。
copy

二、实验环境 IA-32(x86) 架构的 PC 机 三、实验内容 在 Linux 0.11 上实现 procfs(proc 文件系统)内的 psinfo 结点。当读取此结点的内容时,可得到系统当前所有进程的状态信息。例如,用 cat 命令显示 /proc/psinfo 的内容,可得到: procfs 及其结点要在内核启动时自动创建。

相关功能实现在 fs/proc.c 文件内。 四、实验过程及数据记录 实验环境准备 图片描述 1.增加新文件类型 在 include/sys/stat.h 文件中增加新文件类型和测试宏,增加的内容如下 图片描述 2.修改mknod函数 使创建结点的mknod() 函数支持新的文件类型,修改 fs/namei.c 文件中的 sys_mknod() 函数 图片描述

图片描述 修改sys_read()系统调用,使之能够读取proc类型文件 打开文件fs/read_write.c ,在其中的sys_read函数中,增添如下语句,即如果读到了PROC文件,就直接调用proc_read函数 添加代码 图片描述

图片描述 再./run运行一下 图片描述 在fs里新建一个文件proc.c 图片描述

因为新建了一个文件,所以说需要重新编写Makefile然后输出cat命令,查看psinfo和hdinfo信息 图片描述

图片描述

六、实验心得 通过这次实验,我掌握了proc文件系统的实现,也对以后操作系统的学习打下了基础。

最新评论
暂无评论~