作品简介

本书由资深架构师亲力打造,分享了他十多年后端开发经验,特别是围绕Linux系统进行的服务开发经验。本书共8章,主要内容包括:第1章介绍Linux对进程和线程的实现原理,并分析了Memcached和Nginx工作进程池模型的实现;第2章介绍并发的概念以及Linux中的并发相关工具,然后分析常见开源软件的并发问题;第3章介绍Linux是如何进行内存管理的,分析了Memcached和Redis的内存管理机制。第4章介绍Linux系统对中断进行的封装和实现原理;第5章介绍I/O的全过程,并介绍了某些开源系统中I/O相关调用的实现等;第6章介绍Linux文件系统的整体架构及核心概念,然后介绍了ext4文件系统特点,以及tfs小文件系统的设计思路;第7章介绍Linux进程隔离技术,以及Docker容器的部分实现;第8章介绍Linux网络层数据的流转过程,以及lvs如何在netfilter上定制,最后分析了Nginx服务器socket监听初始化的过程。

陈科编著

作品目录

  • 对本书的赞誉
  • 前言
  • 第1章 进程与线程
  • 1.1 进程和线程的概念
  • 1.2 Linux对进程和线程的实现
  • 1.3 进程的调度
  • 1.4 在应用程序中管理进程和线程
  • 1.5 处理进程和线程的相关工具
  • 1.6 本章小结
  • 第2章 并发
  • 2.1 什么是并发
  • 2.2 操作系统会在哪些场景遇到并发
  • 2.3 Linux中并发工具的实现
  • 2.4 常见开源软件中的并发问题分析
  • 2.5 本章小结
  • 第3章 内存管理
  • 3.1 为什么需要内存管理
  • 3.2 MMU和地址空间
  • 3.3 Linux中的分段和分页机制
  • 3.4 Linux的内存管理
  • 3.5 Linux的内存分配和管理
  • 3.6 栈内存分配和管理
  • 3.7 内存管理案例分析
  • 3.8 本章小结
  • 第4章 中断机制
  • 4.1 x86系统的中断机制
  • 4.2 Linux对中断的支持和实现
  • 4.3 Linux加速中断处理的机制
  • 4.4 系统调用
  • 4.5 时钟中断
  • 4.6 信号处理机制
  • 4.7 Nginx信号处理机制
  • 4.8 本章小结
  • 第5章 输入输出
  • 5.1 I/O在Linux中的生命周期
  • 5.2 I/O调度器
  • 5.3 多队列机制
  • 5.4 I/O多路复用实现
  • 5.5 Redis对epoll的封装
  • 5.6 Nginx文件异步I/O
  • 5.7 tail指令为何牛
  • 5.8 零拷贝技术应用分析
  • 5.9 本章小结
  • 第6章 文件系统
  • 6.1 Linux文件系统架构
  • 6.2 文件系统的主要功能
  • 6.3 ext4文件系统
  • 6.4 淘宝TFS小文件系统分析
  • 6.5 本章小结
  • 第7章 Linux的进程隔离技术与Docker容器
  • 7.1 虚拟化相关技术
  • 7.2 Linux进程隔离技术
  • 7.3 Docker容器的部分实现
  • 7.4 本章小结
  • 第8章 Linux网络层数据流分析
  • 8.1 数据在网络层的流转
  • 8.2 socket接口层的实现
  • 8.3 netfilter和lvs
  • 8.4 网络相关的一些参数
  • 8.5 Nginx服务器监听socket初始化过程
  • 8.6 本章小结
展开全部