羽飞的专栏

不以物喜不以己悲

A Critique of ANSI SQL Isolation Levels

A Critique of ANSI SQL Isolation Levels NOTE 本篇摘自论文,理论性很强,本人英语水平比较低,想要对事务隔离做深入了解的人阅读原文更好。 介绍 不同的事务隔离级别可以支持不同程度的事务并发度。 ANSI/ISO SQL-92定义了四种隔离级...

2019-07-15 11:57:58

阅读数 2

评论数 0

页错误处理 Page Fault Handling

原文链接: http://www.informit.com/articles/article.aspx?p=29961&seqNum=5 当一个进程要访问一个虚拟页,而这个虚拟页对应的PTE不在页表中, 或者这个PTE在某种方式上禁止访问,比如这页不存在或者访问模式跟这页...

2019-01-30 14:13:17

阅读数 241

评论数 0

BUG FIX:进程退出时hang住

问题描述 进程kill后迟迟不退出,pstack看到一直在等锁: Thread 1 (Thread 0x2b3db1e9d900 (LWP 83917)): #0 0x00002b3db6193f4d in __lll_lock_wait () from /lib64/libpthread...

2018-10-26 11:01:48

阅读数 146

评论数 0

用户空间的SystemTap探测是怎么工作的

这篇文章介绍SystemTap在用户层的实现原理。对文档进行了部分摘抄翻译,原文易懂,建议阅读原文:How SystemTap Userspace Probes Work。另外介绍另一篇文档:动态追踪技术漫谈 在给Bitcoin增加SystemTap时,对它的实现感到很疑惑,还有这会增加...

2018-08-01 17:02:58

阅读数 250

评论数 0

munmap参数错误导致进程空间异常

munmap传入错误参数len,系统不会帮忙校验有效性,而是能删则删,把[addr,addr+len]范围内的进程空间全部移除掉,不管中间是否有空洞。

2018-07-19 12:57:38

阅读数 280

评论数 0

SLUB 代码笔记

数据结构 主要包含两个缓存对象(CPU的kmem_cache_cpu和内存节点numa的kmem_cache_node),还有一个描述本身slab数据的kmem_cache。 CPU缓存 struct kmem_cache_cpu { void **freelist; ...

2018-07-17 13:20:52

阅读数 175

评论数 0

TIP: Unable to initialize gtk, is DISPLAY set properly?

除了网上提供的一些常见方法,使用xming时可能还有一种原因,就是xming拒绝了主机的转发请求,需要在xming的配置文件X0.hosts中增加主机名称: localhost 10.1.241.70 localhost是本来默认有的。 X0.hosts与Xming.exe在同一个目录。...

2018-05-10 17:10:05

阅读数 984

评论数 0

python pkg_resource.DistributionNotFound: ReviewBoard

httpd部署ReviewBoard报错: DistributionNotFound: ReviewBoard 网上查到很多解决方法,但是都不管用。自己查pkg_resources文档,发现pkg_resources文档说需要distribution需要是egg包,但是我用pip in...

2018-02-08 11:42:10

阅读数 169

评论数 0

CBW/CWDE/CDQE扩展指令

CBW/CWDE/CDQE扩展指令使用符号扩展的方式对源操作数进行双倍扩展。CBW指令(将字节转换到字)复制源操作数的符号位(bit 7)到AH寄存器的所有位。CWDE(将字转换为双字)指令复制AX寄存器的符号位(bit 15)到EAX寄存器的高16位。 CBW和CWDE使用同一个操作数。CBW...

2017-11-02 16:38:01

阅读数 1629

评论数 0

Translation Lookaside Buffer (TLB)

CPU每次访问虚拟内存,虚拟地址都必须转换为对应的物理地址。从概念上说,这个转换需要遍历页表,页表是三级页表,就需要3次内存访问。就是说,每次虚拟内存访问都会导致4次物理内存访问。简单点说,如果一次虚拟内存访问对应了4次物理内存访问,肯定比1次物理访问慢,这样虚拟内存肯定不会发展起来。幸运的是,有...

2017-08-10 14:58:18

阅读数 4560

评论数 0

munmap导致的BUG

一次线上BUG的分析过程

2017-01-29 18:06:46

阅读数 2147

评论数 0

Linux 从core信息中找到TLS信息

Linux X86-64环境上在core文件中查找TLS变量信息

2016-08-09 16:59:07

阅读数 3329

评论数 0

pthread_key泄露问题检测

本文记录了查找pthread_key_create创建失败或者TLS资源泄露问题的查找过程

2016-07-26 11:03:14

阅读数 619

评论数 1

MapReduce在Zookeeper集群上鉴权失败

MapReduce在Zookeeper集群上鉴权失败

2016-04-26 21:07:09

阅读数 2484

评论数 0

Linux 性能测试工具

Linux 性能测试工具

2016-03-29 16:02:35

阅读数 2147

评论数 0

SystemTap介绍

SystemTap是一个诊断Linux系统性能或功能问题的开源软件。它使得对运行时的Linux系统进行诊断调式变得更容易、更简单。有了它,开发者或调试人员不再需要重编译、安装新内核、重启动等烦人的步骤。

2016-03-17 11:46:21

阅读数 1636

评论数 0

TIP: system errno 12 Cannot allocate memory

system/fork函数执行失败,错误码12,Cannot allocate memory,相关资料汇总

2016-01-14 16:08:53

阅读数 4098

评论数 0

TIP 链接错误 link error

TIP 链接错误 link error环境 OS : linux 3.13.0 gcc : 4.8.2 code: sqlite-3.5.3 详细信息执行的编译命令gcc -fpic -ftemplate-depth-64 -m64 -DLINUX -DLINUX_X86 -DOPENBOSS ...

2016-01-12 14:35:39

阅读数 649

评论数 0

添加Linux系统调用(ubuntu, 3.13.0)

Ubuntu上3.13版本添加Linux系统调用

2015-06-01 10:04:09

阅读数 1510

评论数 0

推测的删除锁(Speculative Lock Elision):实现高并发多线程执行

SLE全称Speculative Lock Elision,我称之为推测的删除锁。这是一篇关于SLE的论文翻译,但是因为本人英语功底很差,所以翻译的不通顺而且会有很多错误的地方。之所以把它发出来,是因为个人感觉SLE设计的很巧妙,而且没有搜索很多到关于SLE的文章,这里的目的只是为了让大家了解SL...

2015-05-24 20:31:30

阅读数 1575

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭