Linux下一切皆文件

在Linux下,大多数资源都是以文件的方式访问的。Linux系统上的文件类型有:

  • 普通文件。
    就是储存到磁盘上大家所操作的各种数据文件;
  • 管道文件。
    是一个从一端发送数据,从另一端接收数据的通道;
  • 目录
    也叫目录文件,是包含了保存在目录中文件的列表;
  • 设备文件
    是一种特殊文件,提供了大多数物理设备的接口;
  • 符号链接
    包含了到另一个人文件的连接,类似于windows的快捷方式;
  • 套接口
    套接口更像管道文件,但可以让处于不同机器上的进程通讯。
    比如进入Linux系统,cd不带参数回到宿主目录,然后:
cd /proc
ls

列举出很多文件:
在这里插入图片描述打开其中几个看看,比如:cat cpuinfo
在这里插入图片描述
可以看出来,cpu的详细信息都列举在这个文件中,以后如果我们要编程获取cpu信息,那就是读取这个文件;
再比如 cat meminfo,读取这个文件可以看到内存详细的信息:
在这里插入图片描述
以后如果编程中要使用到内存的信息,也是读取这个文件就可以了。
其他的设备也类似。

更进一步,我们在Linux上运行的程序,其实也是由一个文件维护。我们看一个例子,这个程序的功能很简单,就是让程序一直运行着:

#include <unistd.h>

int main()
{
	while(1)
	{
		sleep(1);
		return 0;
	}
}

编译执行起来,然后执行命令:ps -u 系统用户名,找到刚刚执行起来程序的PID:
在这里插入图片描述
然后回到/proc目录下,ls列举出这个文件夹下的所有的文件,刚好可以找到有一个4032名称的文件夹:
在这里插入图片描述
对了,这个文件夹就是维护着刚才打开的、正在运行的test程序,Linux系统给这个程序分配的各种资源:
在这里插入图片描述
比如查看test程序的状态:
在这里插入图片描述
可以看出来,在Linux中,一个进程都是用一个文件来描述的,可见文件在Linux中的重要性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值