Linux文件描述符

  • Linux文件描述符已关闭评论
  • 141 次浏览
  • A+
所属分类:linux技术
摘要

在Linux世界中,一切皆是文件,包括设备,网络接口等。而Linux就是通过文件描述符来完成对文件的操作


引文

在Linux世界中,一切皆是文件,包括设备,网络接口等。而Linux就是通过文件描述符来完成对文件的操作

文件描述符

文件描述符是一个非负的整数,是一个文件的引用,Linux通过文件描述符进行read和write。

查看进程的文件描述符

我们可以通过如下命令查看一个进程的所有文件描述符:

ls -la /proc/<pid>/fd

特殊的文件描述符

观察返回的结果。Linux进程会默认打开三个文件描述符:

  • 0: stdin
  • 1: stdout
  • 2: stderr

网络接口对应的文件描述符, 所以可以通过此方法查看当前socket的占用情况。
Linux文件描述符

或者直接使用命令来查看

cat /proc/<pid>/net/sockstat

Limit

那么怎么查询文件描述符的限制呢?首先需要明确下,文件描述符没有系统级别的限制,只有进程级别的限制,而查看进程级别的限制有很多种方法:

ulimit -n
or

cat /proc/<pid>/limits