LINUX编译概念,linux内核编译

本文详细介绍了LINUX内核的概念,解释了编译的含义,以及内核模块的相关知识。通过以Centos6.9为例,阐述了编译前的准备工作,包括安装开发包组、下载内核源码并解压,以及配置文件的准备。接着,逐步讲解了如何执行make menuconfig选择需要的内核模块,如何编译、安装模块和内核相关文件,以及编辑grub配置文件以确保新内核能够正常启动。最后,总结了整个编译过程的关键步骤,为读者提供了一套完整的LINUX内核编译指南。
摘要由CSDN通过智能技术生成

bf2b35e75106

一:前言

1:内核的概念:

Kernel(内核)是操作系统的核心,掌控着所有硬件设备的控制权。计算机所要完成的各项工作,都需要通过内核的帮助才能完成。内核就是系统上的一个文件,这个文件包含了驱动主机各项硬件的检测程序与驱动模块。

2:什么叫做编译?

如果想要完成的某个功能是内核没有提供的,那我们就无法通过内核来控制计算机完成这项工作。如果我们想让内核去完成这个功能,那就必须将这个模块“添加”到内核中,这就类似于“驱动程序”,有了这样一个“驱动程序的支持后,硬件(CPU、网卡等)”才能去完成之前不能完成的功能。这里的模块“添加”的过程就叫做编译。

3:内核模块

内核模块的存放位置为/lib/modules/$(uname -r)/kernel,所有以.ko结尾的文件都是模块文件;其中uname -r为当前系统内核版本信息。

二:编译前准备(以Centos6.9为例)

1:安装开发包组

# yun groupinstall Development tools`

2:下载内核源码及解压

#cd /usr/src

# tar -xvf linux-3.18.56.tar.xz

bf2b35e75106

查看解压出来的文件夹

3:准备配置文件

# cd /usr/src/

# cp /boot/config-2.6.32-696.el6.x86_64 ./linux-3.18.56/

# grep NTFS ./linux-3.18.56/config-2.6.32-696.el6.x86_64

显示结果为# CONFIG_NTFS_FS is not set

注:从boot下拷贝一个config文件主要是为了方便,这个文件里保存的是之前在安装系统时内核做安装的模块。这里拷贝过来主要是为了方便演示

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值