主要内容:connect()的Socket层实现.期间进程的睡眠和唤醒. 内核版本:3.15.2 我的博客:http://blog.csdn.net/zhangskd 应用层 int connect(int sockfd, const struct sockaddr *serv_addr, socklen_t addrlen); Connects the socket referred to by the file descriptor sockfd to the address specifi…
本文主要介绍了accept()的系统调用.Socket层实现,以及TCP层实现. 内核版本:3.6 Author:zhangskd @ csdn blog 应用层 int accept(int sockfd, struct sockaddr *addr, socklen_t *addrlen); It extracts the first connection request on the queue of pending connections (backlog), creates a new…
本文主要介绍了getsockname()和getpeername()的内核实现. 内核版本:3.6 Author:zhangskd @ csdn blog 应用层 int getsockname(int s, struct sockaddr *name, socklen_t *namelen); Get the current name for the specified socket. 获取本地套接口的名字,包括它的IP和端口. int getpeername(int s, struct so…
本文主要分析listen()的内核实现,包括它的系统调用.Socket层实现.半连接队列,以及监听哈希表. 内核版本:3.6 Author:zhangskd @ csdn blog 应用层 int listen(int sockfd, int backlog); Accept incoming connections and a queue limit for incoming connections. backlog的定义 Now it specifies the queue length f…