tcp 连接的建立和终止,tcp三次握手,
端口号: web服务 80 ,UDP 69
套接字地址结构 均以sockaddr_开头
通用套接字地址结构
struct sockaddr
{
unit8_t sa_len;
sa_family_t sa_family; /* address family: AF_xxx value*/
char sa_data[14]; /*protocol-sepcific address*/
};
inet_aton : 将点分十进制转化成二进制 inet_pton
inet_ntoa : 将二进制转化为点分十进制 inet_ntop
int socket(int family,int type,int protocol);
int connect(int sockfd,const struct sockaddr *servaddr,socklen_t addrlen);套接字地址结构必须含有服务器的ip地址和端口号
connect 函数将激发TCP三路握手
fork 调用它一次,有两个返回值,它在调用进程(称为父进程)中返回一次,返回值是新派生进程(称为子进程)的进程ID号,
在子进程中又返回一次,返回值是0,因此,返回值本身告知当前进程是子进程还是父进程。
fork典型用法
1:一个进程创建一个自身的副本,这样每个副本都可以在另一个副本执行其他任务的同时,处理各自的某个操作。
2:一个人进程想要执行另一个程序,既然创建新进程的唯一办法是调用fork,该进程于是首先调用fork创建一个自身的副本,然后其中一个副本(通常为子进程)调用exec把自身替换成新的程序
exec: exec把当前进程映像替换成新的程序文件,而且新程序通常从main函数开始执行,进程id并不改变,我们称调用exec的进程为调用进程,
阅读(451) | 评论(0) | 转发(0) |