首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >文件描述符3u的流是什么?

文件描述符3u的流是什么?
EN

Unix & Linux用户
提问于 2022-03-02 19:17:36
回答 1查看 451关注 0票数 0

我知道文件描述符2u的流是stderr。但是,我不确定文件描述符3u的流是什么,为什么?最终,3u代表什么?

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2022-03-02 20:13:34

引用手册:

FD是文件... FD的文件描述符号,后面跟着其中一个字符,描述文件打开的模式:... u,用于读写访问;类型是与文件关联的节点类型--例如,GDIR、格雷格、VDIR、VREG等,或者是IPv4套接字的IPv4;节点是本地文件的节点编号;...或因特网协议类型--例如,TCP‘;名称是... --网络文件的本地和远程Internet地址;本地主机名或IP号后面跟着冒号(':')、端口、->和两个部分的远程地址;IP地址可以报告为数字或名称,具体取决于+ time、-n和-P选项;以冒号分隔的IPv6数字括在方括号中;IPv4 INADDR_ANY和IPv6 IN6_IS_ADDR_UNSPECIFIED地址,零端口号由星号(‘*’)表示;UDP目的地地址可能后面跟着上次数据包发送到目的地的时间;TCP、UDP和UDPLITE远程地址后面可以是括号中的TCP/TPI信息--状态(例如,(ESTABLISHED)(Unbound))、队列大小和窗口大小(并非所有方言)--与netstat(1)报告的方式类似;有关状态、队列大小和窗口大小的更多信息,请参见输出中的-T选项说明或TCP/TPI字段的说明;

因此,这里lsof告诉您,当前正在运行nc的进程3932的文件描述符3处于read+write模式(u;尽管这与侦听套接字几乎不相关),并且指向绑定到INADDR_ANY和端口1337的侦听IPv4 TCP套接字。

这是一个套接字,nc期望传入的TCP连接能够登录到该套接字上。

nc启动时,fds 0、1和2已经被打开,因为按照约定,它们是为标准输入、输出或错误保留的,因此当nc调用socket()系统调用来创建新的套接字时,系统返回该进程的第一个空闲文件描述符: 3。

然后,nc通常会在该套接字上执行一个accept(),当传入连接进入时,accept()将返回另一个文件描述符,用于接受的套接字,该文件描述符将实际携带所传输的数据。再次,这将是第一个免费的,所以很可能是4。

票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/692718

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档