FreeBSD 的 InfiniBand 支持
现时 InfiniBand 硬件已经相当廉价。有些 4x 的 InfiniBand 适配器已经可以在 $100 以内拿到。由于 InfiniBand 可以提供高带宽、低延迟的数据传输,而且点对点对联不需要交换机,因此可以以十分低廉的价格满足近实时同步,或分离存储服务这样的需求。
今年年初的时候, Isilon、我厂 和 Panasys 联合资助了 FreeBSD 上的 InfiniBand 协议栈的实现。这个实现基于 OpenFabrics Alliance 的 OFED,对基于 Mellanox 芯片的多种常见的 InfiniBand 卡都提供了支持。这些代码目前已合并至 FreeBSD 的开发主线,并将随 FreeBSD 9.0-RELEASE 发布。
阅读全文…有关"非正常终止"
多年以前在 USENIX HotOS 2003 论文集中看到了 一篇 关于 “Crash only software” 的论文,当时有一些想法,但很多没有认真地实践。最近做的东西用到的这方面的设计方法比较多,总结一下写出来。
阅读全文…关系代数中的除
简单记一笔,感谢 Stanford 的 数据库入门 课程课后作业 (有人在 StackOverflow提问)。复习一下。
应用场景:找出一家能制作全部30岁以上人士需要的Pizza种类的Pizza店。
在示范数据库中给出的四个关系:
阅读全文…#lspe之Disks
比较感兴趣的项目是之前了解过但仔细看过的 FlashCache,这是 Facebook 搞的一个 SSD 加速模块,原理不复杂,是在文件系统下面做上一层集关联(set-associative)高速缓存,提供了LRU和FIFO两种淘汰方法。这次 Mohan Srinivasan 讲解的时候提到了以前公开发表的讲稿上没有的一个内容—-按线程id/线程组id去做的黑白名单,并对MySQL进行了修改,令其在扫描表时不做cache。从使用的角度,这个不失为一个不错的折衷方法。
阅读全文…Dennis Ritchie病逝
C语言和 UNIX 之父、K&R 的"R",Dennis Ritchie,于2011年10月12日在家中病逝。
Dennis Ritchie 在 Bell 实验室对 Ken Thompson 设计的 B 语言进行了扩展,并以此为基础设计了 C 语言。 C 语言与当时设计操作系统常用的汇编语言相比,提供了更好的可移植性,并成为了 UNIX 系统高可移植性的基础。Dennis Ritchie 做的这些工作是开创性的。这些工作使得我们能够使用包括数据结构、函数等高级语言特性的语言书写程序,并可以很容易地移植到不同类型的硬件上,同时又保持与为不同的硬件手工书写的汇编代码接近的性能。C++ 之父 Bjarne Stroustrup 对于 Ritchie 的工作如此评价:“They said it couldn’t be done, and he did it."。即使在 40 多年后的今天, C 仍然在从嵌入式设备到超级计算机在内的各种计算环境中广泛使用。
阅读全文…配合sudo使用 Google Authenticator
📜 历史文件已不具备现实意义
基于 TOTP 的做法不易备份,此外无法防止钓鱼。新部署时应考虑 FIDO 2 等更为现代化的解决方案。
Google Authenticator 是一个 TOTP(基于时间的一次性口令)实现,它采用了 RFC 4226 算法。
阅读全文…"Stay Hungry. Stay Foolish." It was the farewell message.
Steven Paul “Steve” Jobs (1955 - 2011) passed away peacefully today. There aren’t enough words to express all he contributed to this world.
Today, a shocking news have shaken the industry. Steve Jobs, a pioneer of our industry, after several years of struggling with cancer, passed away at 56. This marks a loss not only to Apple computer, but the whole industry, even Apple’s business rivals.
I want to quote his 2005 Commencement at Stanford:
阅读全文…跨ISP冗余实在是太重要了
鸡蛋不能放在同一个篮子里,特别是 DNS 服务器这样的鸡蛋……在没拿到AS之前,至少也应该做到跨ISP冗余才好。
参与评论W^X (可写与可执行互斥)
Von Neumann体系结构的计算机系统的一项特点是使用内存来保存程序和数据。这种设计减少了制造计算机的成本,但是也带来了一个弱点:因为事实上程序也是一种数据,如果这些"数据"在运行时可写,程序便有可能修改其本身,而如果这一特性被误用,例如由于程序本身的设计缺陷,攻击者便可以利用它来执行攻击者希望的任何事情。
阅读全文…乔帮主
在与癌症斗争了 7 年之后,Steve Jobs 今天正式向 Apple 董事会辞去了 CEO 职务。
让我们用 Apple 1997 年的广告 Think Different 来怀念这位科技界的领袖和属于他的时代:
阅读全文…