🔖墨香寄清辞:风翻云浪激,剑舞星河寂。 临风豪情壮志在,拨云见日昂首立。

操作系统 | proc文件系统_for循环

目录

1. 操作系统实验之proc文件系统

1.1 实验目的

1.2 实验内容

1.3 实验步骤

1.4 实验过程

1.5 心得体会


后续实验:操作系统实验之编写内核

专栏地址:linux操作系统实验(万字详解!!!)

1. 操作系统实验之proc文件系

1.1 实验目的

  • 学习和掌握proc文件系统的功能、工作原理及其应用

1.2 实验内容

  • 完成创建proc文件系统

1.3 实验步骤

1.使用vi xxx.c创建名为xxx的文件如图2-1.

2.将实验二PPT中的源代码写入如图2-2.

3.使用gcc -o xxx xxx.c保存并编译该程序,其中xxx为编译后的名称,为.o文件,而xxx.c则是保存并编译的源文件如图2-3.

4.输入./xxx运行该文件如图2-4.

5.该程序读出了/etc/passwd文件的内容如图2-5.

6.重新打开xxx.c文件进行修改,使其可以读取能读任何用户指定的文件如图2-6.

7.修改xxx.c代码如图2-7.

8.改写完成后注意需要重新编译运行,否则只是修改了源文件,而编译文件和原来一样,这里传入多个参数分别是readfile  /proc/meminfo和readfile  /proc/cpuinfo如图2-8.

9.读取结果如图2-9.


1.4 实验过程

操作系统 | proc文件系统_proc文件系统_02

图2-1

操作系统 | proc文件系统_linux_03

图2-2

操作系统 | proc文件系统_for循环_04

图2-3

操作系统 | proc文件系统_proc文件系统_05

图2-4

操作系统 | proc文件系统_for循环_06

图2-5

操作系统 | proc文件系统_for循环_07

图2-6

操作系统 | proc文件系统_linux_08

图2-7

操作系统 | proc文件系统_for循环_09

图2-8

操作系统 | proc文件系统_for循环_10

图2-9



1.5 心得体会

此次实验弄懂了proc文件系统的概念即proc文件系统是一种在用户态检查内核状态的机制,并且在原读取指定文件的代码xxx.c基础上通过使用for循环和添加参数达到读取参数传递文件的效果。不过最初编写的改动代码考虑不周,因为开辟变量定义在for循环内会造成大量资源浪费,后做改进为:将变量定义于for循环开始之前,这样每次循环的变量均只定义一次,提高了资源利用率。

操作系统 | proc文件系统_for循环

操作系统 | proc文件系统_proc文件系统_12