Linux内核裁剪过程
2016-09-22 18:32
239 查看
博客内容来源:网络、书籍和自己整理补充
Linux 内核裁剪过程(以烧录到arm开发板为例)
1、将新内核拷贝到/usr/src下,
2、解压缩内核:
tar jxvf linux.2.6.29.tar.bz2
3、cd /usr/src/linux
4、清除不必要的文件:make disclean
5、裁剪内核:系统运行的必要配置+动态添加其他配置,make menuconfig生成一个.config文件,文件位置位于arch/$cpu/configs
6、menuconfig配置菜单,选择相应配置时,有三种选择方式:Y--将该功能编译进内核、N--不将该功能编译进内核、M--将该功能编译成可以在需要的时候动态插入到内核的模块,通过空格键进行选取,可以将其重命名,以便下次直接使用cp mini2451_config .config
7、将配置好的内核进行交叉编译:make ARCH=arm CROSS_COMPILE=arm-linux-
8、生成uImage:内核镜像在arch/arm/boot中的zImage
将mkimage工具拷贝/bin:cp mkimage /bin
生成内核镜像uImage:make uImage
9、编译内核模块
命令:make modules
10、安装内核模块
命令:make modules_install
将编译好的内核模块会从内核源代码目录拷贝至/lib/modules下
11、通过modprobe filename或insmod hello.ko(路径:/sbin/insmod)把模块加载到内核中,modprobe -r filename 和 rmmod hello.ko从内核中卸载模块
普及知识点:modprobe和insmod的区别?
1、modprobe可以解决load module时的依赖关系,比如load moudleA 就必须先load moudleB,它是通过/lib/modules/modules.dep文件来查找依赖关系的,而insmode不能解决问题
2、modprobe默认会去/lib/modules下查找moudles,而insmod只在给它的参数中去找modules
3、insmod一次只能加载特定的一个设备驱动,且需要驱动的具体地址,modprobe则可以一次将有依赖关系的驱动全部加载到内核
希望能对大家有帮助!谢谢阅读!
Linux 内核裁剪过程(以烧录到arm开发板为例)
1、将新内核拷贝到/usr/src下,
2、解压缩内核:
tar jxvf linux.2.6.29.tar.bz2
3、cd /usr/src/linux
4、清除不必要的文件:make disclean
5、裁剪内核:系统运行的必要配置+动态添加其他配置,make menuconfig生成一个.config文件,文件位置位于arch/$cpu/configs
6、menuconfig配置菜单,选择相应配置时,有三种选择方式:Y--将该功能编译进内核、N--不将该功能编译进内核、M--将该功能编译成可以在需要的时候动态插入到内核的模块,通过空格键进行选取,可以将其重命名,以便下次直接使用cp mini2451_config .config
7、将配置好的内核进行交叉编译:make ARCH=arm CROSS_COMPILE=arm-linux-
8、生成uImage:内核镜像在arch/arm/boot中的zImage
将mkimage工具拷贝/bin:cp mkimage /bin
生成内核镜像uImage:make uImage
9、编译内核模块
命令:make modules
10、安装内核模块
命令:make modules_install
将编译好的内核模块会从内核源代码目录拷贝至/lib/modules下
11、通过modprobe filename或insmod hello.ko(路径:/sbin/insmod)把模块加载到内核中,modprobe -r filename 和 rmmod hello.ko从内核中卸载模块
普及知识点:modprobe和insmod的区别?
1、modprobe可以解决load module时的依赖关系,比如load moudleA 就必须先load moudleB,它是通过/lib/modules/modules.dep文件来查找依赖关系的,而insmode不能解决问题
2、modprobe默认会去/lib/modules下查找moudles,而insmod只在给它的参数中去找modules
3、insmod一次只能加载特定的一个设备驱动,且需要驱动的具体地址,modprobe则可以一次将有依赖关系的驱动全部加载到内核
希望能对大家有帮助!谢谢阅读!
相关文章推荐
- linux内核裁剪的具体过程和方法
- Linux内核裁剪的具体过程和方法
- linux内核裁剪的具体过程和方法
- linux内核裁剪的具体过程和选择
- linux内核裁剪的具体过程和方法
- linux内核裁剪的具体过程和方法
- linux内核裁剪的具体过程和方法
- 从一个精简Linux内核分析操作系统的基本运行过程
- Linux内核源码分析--内核启动之zImage自解压过程
- Linux内核升级全过程 手把手教你一次成功(2.4.20-8到2.6.18)
- 【学习笔记】编译Linux内核(上)--编译基于x86平台的Linux内核的过程
- Linux内核启动过程概述
- linux内核bug问题排查过程详细报告
- Linux内核分析之简析system_call中断处理过程
- Linux内核Makefile编译生成内核目标文件的过程
- Linux内核裁剪的具体步骤
- Linux内核中断处理过程分析-基于arm平台
- linux内核的配置机制及其编译过程
- 《Linux内核--分析Linux内核创建一个新进程的过程 》 20135311傅冬菁
- Linux内核分析6:分析Linux内核创建一个新进程的过程