Linux内核中的并发和同步

作者: Nick Qi

0.简介

Linux内核中并发处理、抢占调度的支持以及中断的处理都需要处理竞争条件和同步问题,
下面我将通过《Linux设备驱动程序》以及相关文档中的内核同步机制以及使用方法做一
个总结。

竞争条件是指代码段的实际效果依赖于代码段的执行顺序。包含可能产生竞争条件的代码
被叫做临界区。在Linux内核添加了SMP支持之后,竞争条件和临界区就成了内核设计和
实现主要关注的问题之一。

Posted by vmlinz Tue, 25 Jan 2011 23:57:01 +0800


GNU Emacs的终极扩展管理工具 -- el-get

今天, 你el-get了吗?

通常我们在配置GNU Emacs的时候,都会安装一些第三方的lisp扩展来让GNU Emacs用起来
更顺手,但是这些第三方lisp扩展的安装、升级和配置的方法各异,通常我们需要使用多种
完全不同管理方式的lisp扩展(http直接下载,发行版包管理器下载,版本控制器下载
等)。这样我们升级或者迁移的时候就可能会遇到各种麻烦。

GNU Emacs一直以来都缺少一个统一的第三方lisp扩展管理器,GNU XEmacs与GNU Emacs的
一个区别就是它有一个统一的第三方包管理工具。这其中的原因主要是因为GNU Emacs是
GNU Project的一个重要代表,它要求随它发行的所有lisp都要作者签名用GPL授权给FSF,
但是并不是所有的作者都支持GPL,而且这个过程给第三方贡献增加了不少阻碍。所以当时
就有一批开发者开发了GNU XEmacs。所以GNU Emacs一直到现在也没有引入官方的扩展管理
工具(指的是当前的稳定版本,ELPA已经被合并到当前的开发分支了)。

Posted by vmlinz Fri, 14 Jan 2011 13:20:51 +0800


轻量级Emacs--JED介绍

轻量级Emacs--JED

JED介绍

JED是一个轻量级的Emacs实现,它是JohnE.Davis在1992年发起的一个编辑器项目。
这个编辑器现在仍然在活跃的开发中,主要开发者仍然是最初的作者。 PS:他最近也
使用git来管理这个项目了。

JED通过S-lang(作者自己写的一个语法类似于c语言的解释器)来扩展,它的设计
结构和GNU Emacs是基本一致的(核心+解释器+扩展)。但是它非常的轻量级,同
时具有命令行界面和x界面。

Posted by vmlinz Wed, 12 Jan 2011 09:24:16 +0800