操作系统

写时复制 Copy-On-Write

  • 多个进程或线程可以共享相同的数据副本,直到某个进程或线程尝试修改数据时,才真正执行拷贝(而不是在一开始就创建多个副本)。
  • 这样可以减少不必要的复制提高内存利用率和性能。

适用场景

  • 操作系统进程管理(fork):提高进程创建效率,减少内存消耗。
  • 高并发读、多线程安全集合(CopyOnWriteArrayList):适用于读多写少的场景。
  • 数据库 MVCC:提高数据库事务的并发性能。

网路

TCP三次握手

  • 第一次握手:客户端发送SYN请求,给服务端发送了一个序号
  • 第二次握手:服务端发送SYN和ACK请求,给客户端发送自己的序号和确认客户端的序号
  • 第三次握手:客户端发送ACK请求,确认服务端的序号

三次握手确认双方发送和接受功能正常

TCP四次挥手

  • 第一次挥手:客户端发送FIN请求,告诉服务端要关闭连接
  • 第二次挥手:服务端收到客户端请求后,进入等待关闭状态
  • 第三次挥手:服务端发送FIN请求,告诉客户端没有请求要处理了,可以关闭连接
  • 第四次挥手:客户端确认服务端关闭,自己也关闭连接

关闭期间服务端可能还有数据未发送完毕,不能合并ACK+FIN