【操作系统】实验八 创建proc文件

一、实验目的

通过加载内核模块,为/proc文件系统创建以下内容。

二、实验内容

通过加载内核模块,为/proc文件系统创建以下内容:
一个名叫proc_test的子目录。
一个名叫current的文件,只读,读出的内容是读它的进程的情况。
一个名叫current_too的链接,指向current。
一个名叫hello的文件,可读可写。读出的内容是上次写的内容前面加两句话。

三、实验过程记录

创建文件夹pro

写入 proc_test.c文件

在pro文件夹下写入Makefile文件

代码如下

输入make进行编译

输入sudo insmod proc_test.ko安装模板

进入proc文件夹查看结果

查看current文件内容

查看current_too文件内容

查看hello文件内容

修改hello文件内容

再次查看此文件内容

卸载模块

四、实验小结

1.在本实验中,我们通过加载内核模块,为/proc文件系统创建了一些内容。通过这个实验,我学习了一些linux内核中procfs的知识。正式的 Linux 内核实现了 procfs,它是一个虚拟文件系统(process file system),通常被 mount(挂载)到 /proc 目录上,通过虚拟文件和虚拟目录的方式提供访问系统参数的机会,所以有人称它为“了解系统信息的一个窗口”。这些虚拟的文件和目录并没有真实地存在在磁盘上,而是内核中各种数据的一种直观表示。虽然是虚拟的,但它们都可以通过标准的系统调用( open()、read() … )访问。
2.总的来说,/proc 文件系统为系统管理员和开发人员提供了一种方便的方式来查询和调试系统的状态和性能。未来可以更加深入地对进程目录中的常见文件进行学习,以便对内核理解更加透彻。

操作系统实验中的proc文件系统是一种特殊的文件系统,主要用于提供操作系统内核信息的访问和管理。在实现proc文件系统时,需要完成以下几个主要步骤。 首先,需要定义一个proc文件结构体,用于描述proc文件的属性和操作。这个结构体通常包含文件名、文件大小、文件访问权限等信息,以便操作系统能够对其进行正确的处理。 接下来,需要实现创建proc文件的函数。这个函数负责在内核中创建一个proc文件,并将文件结构体与之关联。在创建过程中,需要为proc文件分配一个唯一的文件名,并指定相应的访问权限。 然后,需要实现读取proc文件内容的函数。这个函数会在用户空间打开proc文件时被调用,并将proc文件的内容返回给用户。根据不同的需求,可以通过读取内核变量或调用相关系统调用来获取文件内容。 此外,还需要实现写入proc文件内容的函数。这个函数会在用户空间对proc文件进行写入时被调用,并将用户输入的内容写入到相应的内核变量或系统调用中。 最后,还需要实现删除proc文件的函数。这个函数会在用户空间关闭proc文件操作系统关闭时被调用,负责释放proc文件的相关资源。 总之,实现proc文件系统需要定义文件结构体、创建、读取、写入和删除文件的函数。通过这些功能,用户可以在用户空间访问和管理内核的信息,提供了一个方便的方式来查看和调试操作系统内部状态。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Robbi_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值