当前位置:  技术问答>linux和unix

APUE初学者:请问dup,dup2函数可以用来干什么?有什么好处?

    来源: 互联网  发布时间:2016-08-14

    本文导语:  我是一个APUE的初学者,在看第三章-文件I/O时,不知道dup,dup2函数可以用来干什么,为什么要去复制文件描述符呢?希望有大虾能教教我。谢谢! | 最著名的例子Unix下的管道。 pipe到一对描述...

我是一个APUE的初学者,在看第三章-文件I/O时,不知道dup,dup2函数可以用来干什么,为什么要去复制文件描述符呢?希望有大虾能教教我。谢谢!

|
最著名的例子Unix下的管道。
pipe到一对描述字后,进行fork, 并把pipe返回的描述字分别dup到管段两端的进程的标准输出和标准输入。

另一个例子是Unix下的inetd。
很多早期的简单internet服务(比如telnetd)都由inetd来启动。
inetd会监听这些服务的端口,当accept到客户连接的时候, 通过fork和exec启动相应的服务程序。
服务处理完客户请求就退出。
但是服务程序(比如telnetd)并不知道应该accept返回的套接口描述字是多少,inetd的处理方法就是将
关闭0号和1号描述字然后dup两次,就把套接口描述字复制到了标准输入和标准输出.这样telnetd只需从
0号描述字读入输入,并把输出写到1号描述字。

|
来个直观的, 在shell里输入ls > a.txt, 这里就用了dup

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • apue书的的信号函数,看不懂
  • APUE中 system函数的实现中的问题
  • 菜鸟求助 apue的例子 关于fcntl函数
  • 下载了APUE源码,怎么打不开啊?
  • 文件名为“apue.tar.Z”的文件在UNIX下怎么打开?大家帮帮忙
  • APUE第2版的例2-1的疑问
  • apue书上的概念,读过这本书的请进
  • 刚学完apue,大家给个建议
  • 求apue的课后答案~~~~~~~~~~~~~
  • APUE 看完之后,拿什么练练手?
  • apue.h的问题
  • APUE+macro
  • java开源软件 iis7站长之家
  • APUE相关章节不容易理解。
  • 关于apue2 中一个例子的提问
  • 哪位兄弟在看apue?相互交流一下
  • APUE中“信号”一节的问题
  • apue 上的 Figure3.10运行后,输出怎么是空白
  • apue学习问题 第八章 进程控制 相关
  • apue page113
  • 关于unix环境高级编程的apue的问题
  • 不同缓冲区长度读操作 APUE2e
  • APUE2 10.12小节中所给的Figure 10.14程序是不是错了?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3