个人微薄: weibo.com/manuscola
发布时间:2013-06-06 00:18:48
最近一段时间一直在学习PostgreSQL源码中backend/storage目录下的源码,学习了smgr,学习了buffer,对PostgreSQL数据在磁盘的布局,shared buffer及其缓存替换机制有了一定的了解。本文重点讲述PostgreSQL中的数据库和数据库中的表如何在磁盘存储。当然FSM和VM文件暂不涉及。PostgreSQL大牛可以一笑而过。 &.........【阅读全文】
发布时间:2013-05-23 23:46:12
前一阵子我在机房排查问题,我们的QA进去把磁盘查看磁盘序列号,我当时戏谑到用命令查看呗。物理磁盘的序列号,转速之类的信息如何查看呢? 有个命令是hdparm,可以查看硬件信息: 我们可以看到我们磁盘的信息,序列号Serial Number为 S26.........【阅读全文】
发布时间:2013-05-13 22:29:17
如果我们将ELF格式的可执行文件执行两次eu-strip,产生的可执行程序和执行一次eu-strip得到的可执行程序是不是一模一样,我说的一模一样是指完全一样,MD5值都一样。 我为什么问这个问题,原因是我在工作中不小心将可执行文件eu-strip了两次,每次都保存了符号表到另一个ELF文.........【阅读全文】
发布时间:2013-05-04 11:44:29
Thread Local Storage,线程本地存储,大神Ulrich Drepper有篇PDF文档是讲TLS的,我曾经努力过三次尝试搞清楚TLS的原理,均没有彻底搞清楚。这一次是第三次,我沉浸glibc的源码和kernel的源码中,做了一些实验,也有所得。对Linux的线程有了进一步的理解。 线程是有栈的,我们知道,普通的一个进程,.........【阅读全文】
发布时间:2013-05-02 18:39:28
我原本是没有调试glibc这项需求的,这两天在学习NPTL线程 堆栈及TLS相关的东西,实在是比较复杂,才动了调试glibc,单步跟踪一窥究竟的念头。在网上找了一些资料,解决了这个问题。中间遇到的很有意思的东西我都记录下来了,这篇文章不能算原创,基本来源于参考文献的两篇文章。向这两位最这致谢。 .........【阅读全文】