易截截图软件、单文件、免安装、纯绿色、仅160KB

linux内核配置系统分析

随着 Linux 操作系统的广泛应用,特别是 Linux 在嵌入式领域的发展,越来越多的人开始投身到 Linux 内核级的开发中。面对日益庞大的 Linux 内核源代码,开发者在完成自己的内核代码后,都将面临着同样的问题,即如何将源代码融入到 Linux 内核中,增加相应的 Linux 配置选项,并最终被编译进 Linux 内核。这就需要了解 Linux 的内核配置系统。
  
  众所周知,Linux 内核是由分布在全球的 Linux 爱好者共同开发的,Linux 内核每天都面临着许多新的变化。但是,Linux 内核的组织并没有出现混乱的现象,反而显得非常的简洁,而且具有很好的扩展性,开发人员可以很方便的向 Linux 内核中增加新的内容。原因之一就是 Linux 采用了模块化的内核配置系统,从而保证了内核的扩展性。
  
  本文首先分析了 Linux 内核中的配置系统结构,然后,解释了 Makefile 和配置文件的格式以及配置语句的含义,最后,通过一个简单的例子--TEST Driver,具体说明如何将自行开发的代码加入到 Linux 内核中。在下面的文章中,不可能解释所有的功能和命令,只对那些常用的进行解释,至于那些没有讨论到的,请读者参考后面的参考文献。
  
  1. 配置系统的基本结构
  Linux内核的配置系统由三个部分组成,分别是:
  
  Makefile:分布在 Linux 内核源代码中的 Makefile,定义 Linux 内核的编译规则;
  配置文件(config.in):给用户提供配置选择的功能;
  配置工具:包括配置命令解释器(对配置脚本中使用的配置命令进行解释)和配置用户界面(提供基于字符界面、基于 Ncurses 图形界面以及基于 Xwindows 图形界面的用户配置界面,各自对应于 Make config、Make menuconfig 和 make xconfig)。
  这些配置工具都是使用脚本语言,如 Tcl/TK、Perl 编写的(也包含一些用 C 编写的代码)。本文并不是对配置系统本身进行分析,而是介绍如何使用配置系统。所以,除非是配置系统的维护者,一般的内核开发者无须了解它们的原理,只需要知道如何编写 Makefile 和配置文件就可以。所以,在本文中,我们只对 Makefile 和配置文件进行讨论。另外,凡是涉及到与具体 CPU 体系结构相关的内容,我们都以 ARM 为例,这样不仅可以将讨论的问题明确化,而且对内容本身不产生影响。
  
  2. Makefile
  2.1 Makefile 概述
  
  Makefile 的作用是根据配置的情况,构造出需要编译的源文件列表,然后分别编译,并把目标代码链接到一起


相关文档:

linux fetion

Fedora 下编译 linux fetion 应用程序demo
1: 安装编译环境
sudo yum install qt4-devel curl-devel gcc glibc-devel
2: 去 http://www.libfetion.cn/Linux_demoapp_download.html 下载最新的libfetion GUI源代码
3: 使用解压命令解压下载后的文件
tar -zxvf linux-fetion-***.tar.gz (***为程序版本号)
4: 进� ......

2010 3 16日总结(linux的进程管理1)

主要看了Linux完全注释那本书,终于准备攻读Linux内核源码了,先看了第二张的总体概念,感觉操作系统有很多东西还真是大同小异,记得ucos就是有一个叫做快表的东西,里面最多可以表示64个进程,而早版的Linux(0.11)也有这个一说的东西。
 
在Linux中也有一个PCB来表示每个进程,在这个结构体中,有指向任务代码的� ......

Linux上TCP丢失小包不可见的解决

Linux上TCP丢失小包不可见的解决
 作者:千里孤行(http://blog.csdn.net/yanghehong)
有网友在做一个Linux上的客户端碰到这样的问题:
我们在Linux下开发一个网络客户端程序(服务器是不可修改的),不断向服务器不定期发送一些很小的包(一般只有几十字节),现在出现这种情况:大部分包正常发送,但是当无线Modem ......

ubuntu 远程连接 linux 使用SSH (ubuntu 配置ssh服务)

安装OpenSSH
Ubuntu缺省没有安装SSH Server,使用以下命令安装:
sudo apt-get install openssh-server openssh-client
不过Ubuntu缺省已经安装了ssh client。
配置完成后重起:
sudo /etc/init.d/ssh restart
windows 客户端用putty连接命令shell模式
......

在Linux服务器上如何开启安全的SNMP代理

在各种Linux分发版中,大多数都已经默认集成了snmpd,比如在suse10中,你可以这样开启snmpd:
  
  suse10:~ # /etc/init.d/snmpd start
  
  如果没有默认安装,你要做的就是自己来编译snmpd,按照下边的步骤,非常简单。
  
  编译和安装
  对于Linux平台,我们推荐使用Net-SNMP,它实现了标准的SNM ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号