linux的makefile配置文件,Linux内核配置文件之解读Makefile.doc

vivi与Linux kernel的参数传递情景分析 收藏

在上一部分提到过了,vivi作为bootloader,向内核传递启动参数是其本职工作之一。要把这个情景分析清楚,不仅仅需要分析vivi的参数机 制,而且要分析Linux kernel的接收机制。因为这是一个简单的通信过程,比起本科所学习的TCP/IP来简单的多,但是因为简单,所以在协议上并不规范,理解上反而不如 TCP/IP协议。下面就分为两个方面对此情景分析。

一、综述内核参数传递机制

现在内核参数传递机制有两种:一种是基于struct param_struct,这种已经比较老了。缺点是该结构每个成员的位置是固定的,受限比较大。另外一种就是新的struct tag way。说新是相对的,Linux kernel 2.4.x都希望采用这种tag的方式。关于这方面的资料,可以有如下参考(所给出的目录是基于linux-2.4.18的内核,以顶层Makefile 所在目录为当前目录。这里基于ARM架构的S3C2410,其他的SoC可以类比很容易得到):

1、关于bootloader的理解--【Documentation/arm/booting】

此文档详细的讲述了bootloader的作用,具体内容如下:

[armlinux@lqm arm]$ cat Booting

Booting ARM Linux

=================

Author: Russell King

Date : 18 May 2002

The following documentation is relevant to 2.4.18-rmk6 and beyond.

In order to boot ARM Linux, you require a boot loader, which is a small

program that runs before the main kernel. The boot loader is expected

to initialise various devices, and eventually call the Linux kernel,

passing information to the kernel.

Essentially, the boot loader should provide (as a minimum) the

following:

1. Setup and initialise the RAM.

2. Initialise one serial port.

3. Detect the machine type.

4. Setup the kernel tagged list.

5. Call the kernel image.

1. Setup and initialise RAM

Existing boot loaders: MANDATORY

New boot loaders: MANDATORY

The boot loader is expected to find and initialise all RAM that the

kernel will use for volatile data storage in the system. It performs

this in a machine dependent manner. (It may use internal algorithms

to automatically locate and size all RAM, or it may use knowledge of

the RAM in the machine, or any other method the boot loader designer

sees fit.)

2. Initialise one serial port

Existing boot loaders: OPTIONAL, RECOMMENDED

New boot loaders: OPTIONAL, RECOMMENDED

The boot loader should initialise and enable one serial port on the

target. This allows the kernel serial driver to automatically detect

which serial port it should use for the kernel console (gener

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值