Linux 内核裁剪的具体过程和方法 根据部分网摘资料和实际烧录结果 进行整理: 内核功能: 在能够实现AT91SAM9260 开发板基本功能的基础上, 通 过串口连接上读卡器后能进行一系列的操作和控制功能等,将读卡器的相应数据进行存储或者通过网 络传输到 远程的PC机上。远程 PC 机能够通 过网 络方式在开发板上对所 连接的读卡器参数进行更新配置,如设置天线接口、设置 读卡方式等。(待与读卡器配套使用后再对内核的功能描述进行 补充和完善。 ) 编译环境: 源代码解 压完成后,进入 linux 2.6.19 目 录下,使用VI 命令编辑Makefile。确定编译环境 为 arm 交叉编译工具与本机的安装路径一致ARCH = arm CROSS_COMPILE = /opt/timesys/toolchains/armv5l-linux/bin/armv5l-linux- 内核版本是linux 2.6.19 ,开发板的版本是AT91SAM9260 BOARD V1.01 ,主机系统是ubuntu11.10 内核配置: 内核配置的方法很多,make config、 make xconfig、 make menuconfig、 make oldconfig等等,它们的功能都是一样的,区别应该从名字上就能看出来,只有make oldconfig 是指用系统当前的设置(./.config)作为缺省值。 这里用的是make menuconfig。需要牢记:不必要的驱动越多,内核就越大,不仅运行速度慢、占用内存多,在少数情况下、还会引发其他 问题。具体步骤如下:首先确定shell 是bash。然后$make menuconfig。 有一些默认的符号其含义如下:"[ ]"表示该选项有两种选择方式;[*] 直接编译进内核;[] 不 编译;"<>"表示该选项有三种选择方式; <*>直接编译进内核; 编译成模块形式,但不编译进内核;<> 不 编译。 在 menuconfig 中配置:( 详细介 绍内核配置选项及 删改情况) 第一部分: Code maturity level options ---> 代 码成熟等级选项 []Prompt for development and/or incomplete code/drivers 默 认情况下是选择的,这将会在设置界面中显示 还在 开发或者还没有完成的代码与 驱动。当内核中含有不成熟的代码或驱动,需要选上,主要用在测试阶段。 ( 产品成熟后,再去掉此选项) 这里 选上 第二部分: General setup ---> 通用的一些选项 2.1 () Local version - append to kernel release 在内核版本后追加的字符串,字符串不得超过64 字 节 2.2 [ ] Automatically append version information to the version stri...