free命令显示的buffers与cached的区别

作者 vmunix


据说很少有人能说清楚 free 命令所显示的 “buffers” 与 “cached” 之间的区别:


那我们来挑战一下如何?就从分析 free 命令开始吧。先用 strace 跟踪一下,看能不能发现 free 命令是如何计算 “buffers” 和 “cached” 的:


很显然,free 命令是从 /proc/meminfo 中读取信息的,跟我们直接读到的结果一样:


那么 /proc/meminfo 中的 “Buffers” 和 “Cached” 又是如何得来的呢?这回没法偷懒,只能去看源代码了。源代码文件是:fs/proc/meminfo.c ,[……]

阅读全文

日志文件系统是怎样工作的

作者 vmunix


文件系统要解决的一个关键问题是怎样防止掉电或系统崩溃造成数据损坏,在此类意外事件中,导致文件系统损坏的根本原因在于写文件不是原子操作,因为写文件涉及的不仅仅是用户数据,还涉及元数据(metadata)包括 Superblock、inode bitmap、inode、data block bitmap等,所以写操作无法一步完成,如果其中任何一个步骤被打断,就会造成数据的不一致或损坏。举一个简化的例子,我们对一个文件进行写操作,要涉及以下步骤:

  1. 从data block bitmap中分配一个数据块;
  2. 在inode中添加指向数据块的指针;
  3. 把用户数据写入数据块。[……]

阅读全文

就事论市(2)- 那些年发生的并购

辛辛苦苦弄一个startup,经历多次融资,产品迭代,公司终于上了轨道,一般有两种选择:

  1. IPO上市,向大型甚至特大型公司迈进;
  2. 找个合适的买家 –不是为了退休,而是开始下一轮创业 (攻城和守城是不一样的,创业和守业也有很大区别)

上次列举了一些行业内的明星创业公司,这次看看那些已经成名已久的天王巨星,下图是近年来的行业内并购的情况:

比较知名的并购如下:

  • 2012年:EMC 4.3亿收购 XtremIO, IBM 2.5亿收购Texas Memory System,NetApp 9千万收购CacheIQ, SanDisk 7千万收购FlashSoft;
  • 2013年:WD 6.45亿收[……]

阅读全文

Chip 2 Chip大决战之五

作者 唐杰

 

    记得IBM 100年的时候,蓝色巨人的口号是”From Zero to Hero”,现在看来,蓝色巨人的确是Hero相,坚决退出了X86的业务,因为是众所周知的原因。在系统级别,开放了自己的Power 系统。

 

    这个力度之大,可以从Github上的资源https://github.com/open-power 看到,对比之下, Oracle的OpenSparc真心是在捣糨糊。

 

    CAPI(Coherent Accelerator Processor Interface)的定义在这里:【1】

  • 高速的处理器的扩展BUS 标准
  • 底层基于PCIE的物理层,[……]

阅读全文

Chip 2 Chip大决战之四

作者 唐杰

 

    阿呆同学的这群的名字就是SSDFans,因此NAND Flash这东西不仅是大家的衣食父母,还是大家的兴趣所在。

 

    笔者依然记得在2010年初刚刚接触FusionIO的时候的感觉,这东西太快了,特别是写入的性能,基本秒了当时Intel 的X-25,都不是相同的物种。之前数年的基于HDD+RAID的性能调优基本全废了。

 

    之后的事情,大家都知道了。这些SSD厂商没有躲在系统厂商的后面,而是采用了和之前任何的部件厂商不同的策略,越过系统厂商的壁垒,直接和客户勾兑。在SSD的加速的环境中,一台安装SSD的服务器的系统的CPU使用率从之前的5% 提升到了50[……]

阅读全文