摘要:
一、引言 对于没有接触过Unix/Linux操作系统的人来说,fork是最难理解的概念之一:它执行一次却返回两个值。fork函数是Unix系统最杰出的成就之一,它是七十年代UNIX早期的开发者经过长期在理论和实践上的艰苦探索后取得的成果,一方面,它使操作系统在进程管理上付出了最小的代价,另一方面,... 阅读全文
posted @ 2014-06-12 23:00
Jessica程序猿
阅读(25541)
评论(1)
推荐(4)
摘要:
建立一个 TCP 连接时会发生下述情形:1. 服务器必须准备好接受外来的连接。这通常通过调用 socket、bind 和 listen 这三个函数来完成,我们称之为被动打开。2. 客户通过调用 connect 发起主动打开,这导致客户TCP发送一个SYN(同步)分节,标识希望连接的服务器端口以及初始... 阅读全文
posted @ 2014-06-12 22:34
Jessica程序猿
阅读(490)
评论(0)
推荐(0)
摘要:
很多socket编程的初学者可能会遇到这样的问题:如果先ctrl+c结束服务器端程序的话,再次启动服务器就会出现Address already in use这个错误,或者你的程序在正常关闭服务器端socket后还是有这个问题。正如下面的这段简单的socket程序。server.c#include ... 阅读全文
posted @ 2014-06-12 22:25
Jessica程序猿
阅读(1725)
评论(0)
推荐(0)
摘要:
1 socket函数为了执行网络I/O,一个进程必须做的一件事情就是调用socket函数,指定期望的通信协议类型(使用Ipv4的TCP,使用Ipv6的UDP,Unix域字节流协议等)。# includeint socket(int family,int type,int protocol);返回:若... 阅读全文
posted @ 2014-06-12 16:54
Jessica程序猿
阅读(498)
评论(0)
推荐(0)
摘要:
关于TCP/IP协议,建议参考Richard Stevens的《TCP/IP Illustrated,vol1》(TCP/IP详解卷1)。关于第二层面,依然建议RichardStevens的《Unix network proggramming,vol1》(Unix网络编程卷1),这两本书公认是Uni... 阅读全文
posted @ 2014-06-12 11:53
Jessica程序猿
阅读(4663)
评论(0)
推荐(0)

浙公网安备 33010602011771号