Unix-Linux 编程实践教程 第十章 小结

  • 文件描述符是一个资源数组的索引,每次取最小的用,0、1、2分别代表stdin,stdout,stderr三个标准IO的描述符。重定向只需close其中其中一个,然后再打开一个文件描述符,系统自动将关闭掉的索引重新使用。比如close(0),open(x-file,"r"),此时就是将stdin重定向到x-file中了。
  • 重定向的函数---dup()                                                                                                                                                                                                                      
  • 重定向到文件的特性:
    1. stdin、stdout、stderr,分别对应于文件描述符0、1、2
    2. 内核总是使用最低文件描述符
    3. 文件描述符集合通过exec调用传递,且不会背改变
  • fopen将文件打开作为作为一个流,popen将进程打开(实际上就是运行指定文件),并将进程的输出作为一个流
  • struct sockaddr和struct sockaddr_in两个结构体都用于网络通信,大小一样,都包含通信类型、IP地址、端口三个信息。不同的是,sockaddr_in是对外开发接口,sockaddr是系统内核使用的结构,所以网络编程中通常使用sockaddr_in,然后在bind的时候再强制转换成sockaddr。
  • 服务器端socket绑定到INADDR_ANY,那么无论流量从哪个网卡 哪个ip过来都可以接收到
  • localhost、127.0.0.1和本机IP区别
    1.   localhost 127.0.01 本机IP
      网络 不联网 不联网 联网
      传输 不使用网卡,不受防火墙限制 使用网卡,受防火墙限制 使用网卡,受防火墙限制
      访问 本机访问     本机访问 本机or外部访问

猜你喜欢

转载自my.oschina.net/u/3281747/blog/2960692