os/unix/ngx_automic.h源代码分析
本文我们主要介绍一下与原子锁相关的部分:ngx_automic.h
本文我们主要介绍一下与原子锁相关的部分:ngx_automic.h
本文我们主要分析一下nginx内存分配的相关实现源代码。
本文我们主要介绍一下ngx_posix_init.c, 主要完成贴近于操作系统层面的一些变量的预先初始化。
本文首先简要介绍Linux平台上的“惊群”现象,然后再讲述解决“惊群”问题的一些方法。
本文主要介绍一下ngx_cpuinfo.
本文首先介绍一下Linux中setproctitle()的原理,然后给出nginx中相应的源代码并进行解析。
本文我们主要简单介绍一下cpu的cacheline技术,了解其工作的基本原理。
本节我们讲述一下包过滤表达式的语法。在tcpdump中就会使用到这里讲述到的pcap filter表达式。
linux也是属于类Unix操作系统,但是其具有一些特殊的特性,因此这里在初始化时会专门针对Linux做一些特殊的处理。
os/unix文件夹下源代码与操作系统关系紧密,与具体的业务及上层依赖也较少,因此我们这里首先来分析这一部分。ngx_os.h头文件是作为此部分的一个接口文件,我们会在本文进行分析。
在分析nginx源代码时,我们看到几乎所有的源文件都会首先包含ngx_config.h
,ngx_core.h
这两个头文件。这两个头文件又包含一些其他头文件,其他头文件我们主要会介绍ngx_linux_config.h
,ngx_auto_headers.h
和ngx_auto_config.h
这三个。按头文件包含由里到外的顺序为:
本文转自微信后台团队的《微信PaxosStore内存云揭秘:十亿Paxos/分钟的挑战》。
Paxos协议是分布式系统设计中的一个非常重要的协议,本文转载自微信后台团队公众号团队所发表一系列Paxos的文章,中间针对自己的理解略有修改或注释。在此处做一个备份,一方面为了加深对Paxos协议的理解,另一方面也方便自己的后续查找,防止文章丢失。
Paxos协议是分布式系统设计中的一个非常重要的协议,本文转载自微信后台团队公众号团队所发表一系列Paxos的文章,中间针对自己的理解略有修改或注释。在此处做一个备份,一方面为了加深对Paxos协议的理解,另一方面也方便自己的后续查找,防止文章丢失。
本章我们主要介绍一下基本的X86汇编,文中只覆盖了很小一部分可用的汇编指令集。有很多种不同的汇编语言来产生x86机器代码,这里(CS216)我们介绍的是Microsoft Macro Assembler(MASM)
汇编。MASM使用标准的Intel语法来书写x86汇编代码。
本章我们主要讲述一下Linux操作系统环境下C函数的调用栈,然后再讲述一下GCC中的-fomit-frame-pointer
编译选项。
本章我们主要介绍Linux下的两个特殊文件—/dev/null和/dev/zero.
日历时间,是用“从一个标准时间点到此时的时间经过的秒数”来表示的时间。日历时间(Calendar Time)是通过time_t数据类型来表示的,用time_t表示的时间(日历时间)是从一个时间点(例如:1970年1月1日0时0分0秒)到此时的秒数。
Paxos协议是分布式系统设计中的一个非常重要的协议,本文转载自微信后台团队公众号团队所发表一系列Paxos的文章,中间针对自己的理解略有修改或注释。在此处做一个备份,一方面为了加深对Paxos协议的理解,另一方面也方便自己的后续查找,防止文章丢失。