Linux内核开发入门及内核版本-补丁制作

1.1 Linux 内核是什么?

linus 说,内核就是为上层应用程序提供运行环境并管理整个系统软硬件资源的一个程序。(管理和服务程序)

1.2 Linux 体系结构及内核功能

Linux 操作系统从上到下,可以分为:用户应用程序、库、内核、驱动程序。图形表示如下



1.内核要完成如下的功能

1)进程管理

2)内存管理

3)提供文件系统支持

4)设备控制

5)中断和异常响应

6)网络功能


1.3 内核版本号和补丁制作

1.版本号的含义

linux-2.6.30.1
VERSION = 2
PATCHLEVEL = 6
SUBLEVEL = 30
EXTRAVERSION = 1
说明:
2
.6 - 内核主版本号(偶数稳定.每隔2~3 年出一个稳定版本)

30 - 次版本号(不分寄偶,每2 个月发布一个稳定版本)
1- 扩展版本号(bug fix)

2.补丁的制作以及打补丁

1)制作补丁

diff  -Nur   linux-2.6.10   linux-2.6.13   >  2.6.33.13.patch

含义:制作从linux-2.6.33.10到linux-2.6.33.13的补丁包

2)补丁的安装

进入到要打补丁的目录

cd  linux-2.6.33.10

patch  -p1 < ../2.6.33.13.patch其中 -p1 表示忽略一级目录

1.4内核源码目录结构

├── arch
├── block
├── COPYING
├── CREDITS
├── crypto
├── Documentation
├── drivers
├── firmware
├── fs
├── include
├── init
├── ipc
├── Kbuild
├── kernel
├── lib
├── MAINTAINERS
├── Makefile
├── mm
├── modules.builtin
├── modules.order
├── Module.symvers
├── net
├── README
├── REPORTING-BUGS
├── samples
├── scripts
├── security
├── sound
├── System.map
├── tools
├── usr
├── virt
├── vmlinux
├── vmlinux.o
└── webee210_defconfig

arch:体系结构

1.5 内核配置及编译

1)解压内核

tar xvf linux-2.6.35.7-webee210.tar.bz2  -C /opt/src/

需要注意的是因为内核源码中有硬连接,所以不能解压在windows的文件系统中

2)检查交叉编译环境

arm-linux-gcc -v

检查Makefile里面的交叉编译器

ARCH= arm

CROSS_COMPILE=arm-linux

3)配置内核

默认配置文件存放目录: arch/arm/configs
生存默认配置文件: cp xxx_deconfig .config
自定义配置: make menuconfig

4)编译

make
make zImage 只编译


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值