普通的用户态下的C编程,估计很多人都可以熟练编写掌握。但是跨入内核层之后,用户态的函数与头文件统统变了。
» Read more: 编写简单的HelloWorld Kernel Module
编写简单的HelloWorld Kernel Module
August 28th, 2014 by JasonLe's Tech 1,586 views在塔式服务器中安装Debian 7.6
August 28th, 2014 by JasonLe's Tech 1,479 views今天负责给实验室的server安装debian 7.6遇到很多问题,特在此小记一下。
由于塔式服务器不同于普通的pc,主板结构不同于pc的主板。
这个主板的特殊之处在于主板有两个cpu插槽,cpu是Intel Xeon E5530 4核八线程,如果插上两个cpu的话,可以拓展成为8核16线程。
Git标准开发模型
August 17th, 2014 by JasonLe's Tech 1,546 views之前用了很长时间的git,最近才了解到git的正确用法。
正如Nicholas said:Using git is very easy but using git correctly is not easy!
git文件最好是以二进制的存在,这样比较容易对文件进行追踪。最好不要将binary文件add进来!doc?exe?No!
创建Git服务器
August 16th, 2014 by JasonLe's Tech 1,788 viewsMemory Barriers 的一些思考
August 14th, 2014 by JasonLe's Tech 1,815 views之前由于各种原因blog停更了半个月,现在回到正常环境下。
我们都知道在多处理器环境下,我们会遇到Memory Barriers,其实说白了,就是数据的不一致性,说的更加精确点,就是cache的不一致性,因为各种architecture 不同,x86与ARM不同,在x86下,Intel与AMD又不同,所以我们要搞清cpu与cache的不同结构,之前我们知道cache分为N路组相联(N-way set associative)。在取值的时候,中间位负责区分是哪一路,在这篇文章中讲的很详细:http://www.lizhaozhong.info/archives/580
不过x86的mb。x86 CPU会自动处理store顺序,所以smp_wmb()原语什么也不做,但是load有可能乱序!