
后台/Linux/网络编程
文章平均质量分 56
dinghaoseu
linux,nginx,c++,java,机器学习
展开
-
TCP三次握手过程
服务器必须准备好接受外来的连接,这通常通过调用socket,bind,listen这3个函数来完成,称之为被动打开。客户端通过connect发起主动打开,这导致客户发送一个syn(同步)分节,它告诉服务器客户发送的数据的初始序列号。服务器必须确认(ACK)客户的SYN,同时自己也得发送一个SYN分节,它含有服务器将在同一连接中发送的数据的初始序列号。客户端必须原创 2016-03-10 20:05:53 · 338 阅读 · 0 评论 -
TCP断开连接过程(四次挥手)
中断连接端可以是Client端,也可以是Server端。假设Client端发起中断连接请求,也就是发送FIN报文。Server端接到FIN报文后,意思是说"我Client端没有数据要发给你了",但是如果你还有数据没有发送完成,则不必急着关闭Socket,可以继续发送数据。所以你先发送ACK,"告诉Client端,你的请求我收到了,但是我还没准备好,请继续你等我的消息"原创 2016-03-10 20:08:05 · 1276 阅读 · 0 评论 -
关于fork()的一道经典面试题
不算main这个进程自身,到底创建了多少个进程啊?123456intmain(intargc, char* argv[]){ fork(); fork() && fork() || fork(); fork();}原创 2016-03-10 20:10:33 · 619 阅读 · 1 评论 -
多线程经典面试题总结
第一题:线程的基本概念、线程的基本状态及状态之间的关系? 线程是cpu使用的基本单元,它由线程ID、程序计数器、寄存器集合和堆栈组成。它与属于同一进程的其他线程共享其代码段、数据段和其他操作系统资源(操作系统概念第七版)。是运行在进程上下文的逻辑流(深入理解计算机系统)。 线程四种状态:新生状态、可运行状态、被阻塞状态、死亡状态 第二题:线程与进程的原创 2016-03-14 13:38:56 · 1826 阅读 · 0 评论