Blog

table {:toc} 记得 5 年前刚接触 perf 的时候,还特意调研了一下不同系统上的动态和静态追踪工具,知道了 Linux 上的 SystemTap,perf。Solaris 上的 D
论文的原文在这里 Dune: Safe User-level Access to Privileged CPU Features 1. Introduction Dune 的目标是让用户态程序直接使用硬件特性(例如,获得更好的硬件加速等),不过所谓的 “直接” 还是在虚拟化的环
泡了N久论坛,看了N多帖子以后终于成功的把 iPhone 3G 有内置卡贴的手机成功的破解,并且抽出了卡贴,越狱成功,可以用任何移动运营商的手机卡了! 哦耶!散
最近用一些零碎的时间学习KVM,算算大概也快有一个月了吧,进度还是很缓慢的,感觉该写一些类似读书笔记的东西了。欢迎大家来讨论。 KVM 即 Kernel Based Virtual Machine, 是
table {:toc} Lua 是一门小巧的编程语言,但麻雀虽小五脏俱全,而且与 C 语言的交互非常友好,所以有人称它是 “胶水语言”。最近在研究 nginx,另一个广泛应用
table {:toc} 过滤模块基本概念 普通的 HTTP 模块和 HTTP filter 模块有很大的不同。普通模块,例如上篇博客提到的 hello world 模块,可以介入 nginx http 框架的 7 个处理阶段,绝大多数情况下
table {:toc} 在前面的两篇博客中我们看到,无论是实现一个 http 模块,或者是 http filter 模块,都需要实现模块自己的 ngx_http_module_t 结构体。 typedef struct { ngx_int_t (*preconfiguration)(ngx_conf_t *cf); ngx_int_t (*postconfiguration)(ngx_conf_t *cf); void *(*create_main_conf)(ngx_conf_t *cf); char *(*init_main_conf)(ngx_conf_t *cf, void *conf); void *(*create_srv_conf)(ngx_conf_t *cf);
table {:toc} ngx_http_init_connection() 负责建立 http 链接的是 ngx_http_init_connection(), 我们先来看一下谁会调用这个函数。 ngx_http_optimize_servers() 是一个负责合并配置项的函数,
table {:toc} 从 main() 函数开始之后,很快就调用到 ngx_init_cycle(),这是 nginx 源码中一个非常重要的函数,它负责调用所有模块的init_modul
table {:toc} 编写模块 想要学习如何开发一个 nginx 模块,最快速简单的方法莫过于写一个 Hello World 模块,没错,还真有这么一个 nginx-hello-world-mod