现代操作系统中最基本的构件是进程,操作系统的基本功能是创建、管理和终止进程。当进程处于活跃状态时,操作系统必须设法使每个进程都分配到处理器执行时间,并协调它们的活动、管理有冲突的请求、给进程分配系统资源。
Network 网络包的旅程
总结了前面介绍的网络包的旅程。
Network 服务端响应返回浏览器
介绍了服务器从接收数据包并由 MAC、IP、TCP 模块逐步解析合并,创建 Socket 并与客户端通信的大致流程。
Network 探索服务端局域网
主要讲了代理的类型以及相关的方式,如防火墙、负载均衡、缓存服务器与内容分发服务等这些内容。
Network 探索接入网和网络运营商
介绍了 ADSL 和 FTTH 两种接入网的结构和功能以及相应的 PPP、PPPoE、PPPoA、DHCP 等通信协议,还介绍了运营商内部的 POP、NOC 和 IX 的功能和作用。
Network 探索集线器、交换机和路由器
介绍了集线器、交换机、路由器这常见的三个网络设备的功能和作用并详细介绍了具体数据包在它们之间是如何被传输和解析的。
Network 探索协议栈和网卡
介绍了 TCP 协议的收发过程,即原始数据先由协议栈进行封装处理后拆成网络数据包,通过建立连接,以电信号的形式经由网卡、以太网,转达至目的地,并经过协议栈的解析,还原为原始数据后关闭连接的整个过程。
Network 探索浏览器内部
介绍了当你打开浏览器时,访问网页这个动作涉及到的整个网络通信的大致流程。涉及了从发起 HTTP 请求开始,过程包含浏览器解析 URL、与 DNS 服务器通信等,直到 Web 服务器给予应答在内的多个方面进行讲解。
Redis 相关功能实现
介绍了服务器与客户端相关联的结构及相关功能,二进制位数组的表示以及计算汉明重量的方法。
Redis 事件和事务
Redis 采用事件驱动机制来处理大量的网络 IO。它并没有使用 libevent 或者 libev 这样的成熟开源方案,而是自己实现一个非常简洁的事件驱动库 ae_event。Redis 基于事件驱动,来实现相应的事务机制。本文做了对应的源码解析并分析了不同场景下事务 ACID 的性质。