linux学习中
发布时间:2013-12-13 15:07:00
Linux内核构建系统之四回到我们的主框架上面来,讨论完配置目标的处理后,就轮到框架中 "ifeq ($(config-targets),1)-endif" 块的 else 部分了。这部分是为了处理那些构建目标以及和.config无关的目标,其对这些目标处理的代码都位于框架中的E部分中。在E部分之前,有一个不小的 "ifeq ($(dot-config),1)-endif" .........【阅读全文】
发布时间:2013-12-13 14:59:16
顶层Makefile的总体框架结构 既然前面我们说过顶层Makefile最为重要,那么我们就先来研究一下这个文件。在你用VI编辑器打开这个文件时,千万别被它的复杂吓倒。这个文件虽然行数颇多,但其实里面也是有道道可寻的,我们可以抽出其中最重要的框架结构出来,列出如下(稍做整理和缩进):从上面的框架中可以.........【阅读全文】
发布时间:2013-12-12 10:11:16
我们在浏览Linux内核源代码时,经常会碰到一些非常奇怪的代码记号。按照我们之前对C语言的一般掌握,这些代码记号通常都算不上是符合C语言语法的。那这是怎么回事呢?其实,这基本上是GNU C对 C语言标准的扩充,有了这些扩充,人们就可以更方便的开发,开发出的程序经过GCC编译后,也会产生更有效的二进制代码。通常.........【阅读全文】
发布时间:2013-12-10 17:47:49
一:前言 RCU机制出现的比较早,只是在linux kernel中一直到2.5版本的时候才被采用.关于RCU机制,这里就不做过多的介绍了,网上有很多有关RCU介绍和使用的文档.请自行查阅.本文主要是从linux kernel源代码的角度.来分析RCU的实现. 在讨论RCU的实现之前.有必要重申以下几点: 1:RCU使用在读者多而写者少的情况..........【阅读全文】
发布时间:2013-12-10 17:21:09
kernel module编程(八):读取proc文件之seq_file 在上次我们使用了read_proc的方式通过/proc文件读取kernel module的信息。作者给的例子他自己说是ugly。而我们在读取大量数据时发现,受到用户buffer大小的限制(page的大小),可能需要读取多次,不仅需要记录上次读取的位置,而且由于每次读取我.........【阅读全文】