为什么将TCP / IP套接字视为“打开文件”?

迈克·B

我需要一些帮助,以确保我确定这是Linux中的一个基本概念:打开文件的限制。具体来说,我对为什么打开的套接字可以计入系统中“打开文件”总数的情况感到困惑。

有人可以详细说明原因吗?我知道,这很可能可以追溯到Linux中的全部“一切都是文件”原则,但是任何其他细节都将不胜感激。

格雷格·休吉尔

“打开文件”的限制实际上并不仅仅针对文件。这是对单个进程一次可以使用内核句柄数量的限制从历史上看,程序通常只会打开很多文件,因此这被称为对打开文件数量的限制。有一个限制可以防止进程说,打开很多文件而无意间忘记关闭它们,这最终会导致系统范围的问题。

套接字连接也是内核句柄。因此,出于相同的原因,存在相同的限制-进程可能会打开网络连接而忘记关闭它们。

如注释中所述,在类似Unix的系统中,内核句柄通常称为文件描述符

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在IIS中保持TCP / IP套接字打开?

来自分类Dev

TCP打开套接字延迟

来自分类Dev

什么是文件描述符/连接/套接字/ ip?

来自分类Dev

TCP / IP套接字广播

来自分类Dev

什么是套接字文件?

来自分类Dev

套接字TCP:为什么我用scanf丢失消息

来自分类Dev

如何使IIS中的TCP / IP套接字保持打开状态?

来自分类Dev

确定重定向套接字打开请求的预期 IP 的 POSIX 调用是什么?

来自分类Dev

从Firefox插件打开TCP套接字

来自分类Dev

如何保持TCP套接字打开?

来自分类Dev

Qt TCP / IP套接字连接检查

来自分类Dev

PHP套接字和TCP IP命令

来自分类Dev

TCP / IP套接字端口侦听

来自分类Dev

TCP IP 套接字和多线程

来自分类Dev

Mikrotik TCP/IP 套接字连接

来自分类Dev

为什么要在客户端套接字之前打开服务器套接字?

来自分类Dev

c-套接字,为什么ip以整数格式发送?

来自分类Dev

通过TCP / IP套接字发送文件(Web服务器)

来自分类Dev

TCP套接字中的主动打开和被动打开有什么区别?

来自分类Dev

如何重用打开的客户端连接与服务器上的分叉子进程(TCP/IP 套接字)

来自分类Dev

为什么将telnet视为协议?这不只是一个简单的TCP发送/回送程序吗?

来自分类Dev

从streambuf使用boost :: asio :: ip :: tcp将数据段写入TCP套接字

来自分类Dev

通过TCP套接字发送多个文件

来自分类Dev

为什么套接字BeginSend将花费太长时间

来自分类Dev

为什么bash无法识别套接字文件的存在

来自分类Dev

为什么将.mm文件视为int *类型?

来自分类Dev

Python为什么将文件路径视为目录

来自分类Dev

为什么在iOS中打开套接字连接时无需打开新线程

来自分类Dev

为什么非阻塞TCP套接字会在:: write()调用中花费大量时间?

Related 相关文章

  1. 1

    如何在IIS中保持TCP / IP套接字打开?

  2. 2

    TCP打开套接字延迟

  3. 3

    什么是文件描述符/连接/套接字/ ip?

  4. 4

    TCP / IP套接字广播

  5. 5

    什么是套接字文件?

  6. 6

    套接字TCP:为什么我用scanf丢失消息

  7. 7

    如何使IIS中的TCP / IP套接字保持打开状态?

  8. 8

    确定重定向套接字打开请求的预期 IP 的 POSIX 调用是什么?

  9. 9

    从Firefox插件打开TCP套接字

  10. 10

    如何保持TCP套接字打开?

  11. 11

    Qt TCP / IP套接字连接检查

  12. 12

    PHP套接字和TCP IP命令

  13. 13

    TCP / IP套接字端口侦听

  14. 14

    TCP IP 套接字和多线程

  15. 15

    Mikrotik TCP/IP 套接字连接

  16. 16

    为什么要在客户端套接字之前打开服务器套接字?

  17. 17

    c-套接字,为什么ip以整数格式发送?

  18. 18

    通过TCP / IP套接字发送文件(Web服务器)

  19. 19

    TCP套接字中的主动打开和被动打开有什么区别?

  20. 20

    如何重用打开的客户端连接与服务器上的分叉子进程(TCP/IP 套接字)

  21. 21

    为什么将telnet视为协议?这不只是一个简单的TCP发送/回送程序吗?

  22. 22

    从streambuf使用boost :: asio :: ip :: tcp将数据段写入TCP套接字

  23. 23

    通过TCP套接字发送多个文件

  24. 24

    为什么套接字BeginSend将花费太长时间

  25. 25

    为什么bash无法识别套接字文件的存在

  26. 26

    为什么将.mm文件视为int *类型?

  27. 27

    Python为什么将文件路径视为目录

  28. 28

    为什么在iOS中打开套接字连接时无需打开新线程

  29. 29

    为什么非阻塞TCP套接字会在:: write()调用中花费大量时间?

热门标签

归档