基于S3C2440的Linux内核移植和yaffs2文件系统制作
基于S3C2440的Linux内核移植和yaffs2文件系统制作 收藏
Linux内核移植和根文件系统制作
第一章 移植内核... 2
1.1 Linux内核基础知识... 2
1.1.1 Linux版本... 2
1.1.2 什么是标准内核... 2
1.1.3 Linux操作系统的分类... 3
1.1.4 linux内核的选择... 4
1.2 Linux内核启动过程概述... 5
1.2.1 Bootloader启动过程... 5
1.2.2 Linux启动过程... 7
1.3 Linux内核移植... 10
1.3.1 移植内核和根文件系统准备工作... 10
1.3.2 修改Linux源码中参数... 11
1.3.3 配置Linux内核... 15
1.3.4、编译内核... 17
第二章 制作根文件系统... 19
2.1 根文件系统预备知识... 19
2.2、构建根文件按系统... 19
2.2.1、建立根文件系统目录... 19
2.2.2、建立动态链接库... 21
2.2.3 交叉编译Bosybox. 21
2.2.4 建立etc目录下的配置文件... 24
2.2.5 制作根文件系统映像文件... 26
第三章 启动系统... 26
第四章 总结... 34
第一章 移植内核
1.1 Linux内核基础知识
在动手进行Linux内核移植之前,非常有必要对Linux内核进行一定的了解,下面从Linux内核的版本和分类说起。
1.1.1 Linux版本
Linux内核的版本号可以从源代码的顶层目录下的Makefile中看到,比如2.6.29.1内核的Makefile中:
VERSION = 2
PATCHLEVEL = 6
SUBLEVEL = 29
EXTRAVERSION = .1
其中的“VERSION”和“PATCHLEVEL”组成主版本号,比如2.4、2.5、2.6等,稳定版本的德主版本号用偶数表示(比如2.6的内核),开发中的版本号用奇数表示(比如2.5),它是下一个稳定版本内核的前身。“SUBLEVEL”称为次版本号,它不分奇偶,顺序递增,每隔1~2个月发布一个稳定版本。“EXTRAVERSION”称为扩展版本号,它不分奇偶,顺序递增,每周发布几次扩展本版号。
1.1.2 什么是标准内核
按照资料上的习惯说法,标准内核(或称基础内核)就是指主要在http://www.kernel.org/维护和获取的内核,实际上它也有平台属性的。这些linux内核并不总是适用于所有linux支持的体系结构。实际上,这些内核版本很多时候并不是为一些流行的嵌入式linux系统开发的,也很少运行于这些嵌入式linux系统上,这个站点上的内核首先确保的是在Intel X86体系结构上可以正常运行,它是基于X86处理器的内核,如对 linux-2.4.18.tar.bz2的配置make menuconfig时就可以看到,Processor type and features--->中只有386、486、586/K5/
相关文档:
一、引言
想使用Linux已经很长时间了,由于没有硬性任务一直也没有系统学习,近日由于工作需要必须使用Linux下的MySQL。本以为有
Windows下使用SQL
Server的经验,觉得在Linux下安装MySql应该是易如反掌的事,可在真正安装和使用MySQL时走了很多弯路,遇见很多问题,毕竟Linux
和Windows本身就有很大区别。为了让 ......
C/C++传递二维数组 - [IT资料]
//c语言中经常需要通过函数传递二维数组,有三种方法可以实现,如下:
//方法一, 形参给出第二维的长度。
#include <stdio.h>
void func(int n, char str[][5])
{
int i;
& ......
/*
file:string.h
#ifndef _LINUX_STRING_H_
#define _LINUX_STRING_H_
/* We don't want strings.h stuff being user by user stuff by accident */
#ifdef __KERNEL__
#include <linux/types.h> /* for size_t */
#include <linux/stddef.h> /* for NULL */
#include <linux/compiler.h&g ......
这篇文章介绍在LINUX下进行C语言编程所需要的基础知识.在这篇文章当中,我们将会学到以下内容:
源程序编译
Makefile的编写
程序库的链接
程序的调试
头文件和系统求助
1.源程序的编译
在Linux下面,如果要编译一个C语言源程序,我们要使用GNU的gcc编译器. &nb ......
(1) 安装和配置Apache
在如下页面下载apache的for Linux 的源码包http://www.apache.org/dist/httpd/
存至/home/xx目录,xx是自建文件夹,我建了一个why的文件夹。
命令列表:
& ......