上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 59 下一页
摘要: 内核源码:linux2.6.30.4 交叉编译工具:3.4.5 移植linux内核至:TQ2440 1、进入内核顶层目录,修改顶层Makefile,大概在193和194行,将ARCH和CROSS_COMPILE修改为如下所示: ARCH ?= arm CROSS_COMPILE ?= arm-linux- 2、修改内核源码arch/a... 阅读全文
posted @ 2014-04-16 22:23 ITtecman 阅读(1229) 评论(0) 推荐(0) 编辑
摘要: 根文件系统是指挂载于文件系统层次结构根部的文件系统,简单的表示为/。简单来说,根文件系统是内核挂载的第一个文件系统,挂载的位置是文件系统层次结构的顶端。 Linux系统对于根文件系统有一些特殊的要求。Linux要求根文件系统中包含应用程序和工具软件,通过它们来引导系统、初始化系统服务(比如网络和系统控制台)、加载设备驱动程序和挂载额外的文件系统。 阅读全文
posted @ 2014-04-16 16:16 ITtecman 阅读(239) 评论(0) 推荐(0) 编辑
摘要: 很多嵌入式开发人员都需要在Linux内核中添加一些特性,以支持特别的定制硬件。 ARM架构的顶层Kconfig文件中,可以看到一个名为System Type的菜单项。在ARM system type提示后有一系列与ARM架构相关的选择项。 ARM架构的顶层Kconfig文件通过source指令包含了具体与s3c2440相关的一些Kconfig定义: source "arch/arm/m... 阅读全文
posted @ 2014-04-16 15:23 ITtecman 阅读(1398) 评论(0) 推荐(0) 编辑
摘要: Linux内核源码中,差不多有300个内核子目录都包含了名为Kconfig的文件。这个文件用于配置其所在目录的源码的特性。Kconfig中的每个配置参数都有附带的帮助文本,配置子系统会解析Kconfig的内容,并提示用户做出配置选择。 配置工具(比如menuconfig)会读取各个子目录中的Kconfig文件,首先读取的是arch子目录中的Kconfig文件。它是在…/scripts/kconf... 阅读全文
posted @ 2014-04-16 14:27 ITtecman 阅读(850) 评论(0) 推荐(0) 编辑
摘要: 在顶层Linux源码目录中输入命令make help,它会显示一长串从源码树中生成的目标列表。最常见的使用make的方式是不指定目标,在这种情况下,它会生成内核ELF文件vmlinux和针对所选架构的默认二进制镜像(例如,x86架构的bzImage)。使用make时,如果不指定目标,它也会编译所有由配置文件指定的设备驱动程序模块(内核可加载模块)。 很多架构和机器类型都需要一个二进制镜像目标,而... 阅读全文
posted @ 2014-04-16 14:09 ITtecman 阅读(449) 评论(0) 推荐(0) 编辑
摘要: 在命令行中,进入顶层内核目录,并输入命令make menuconfig,就可以启动一个基于菜单的内核配置编辑器。从这里开始,你可以访问每个可用的配置参数,并生成一个定制的内核配置。 当你退出配置编辑器时,它会提示你是否保存修改,如果选择保存修改,全局配置文件.config就会被更新(如果不存在,则会被创建)。 顶层Makefile会使用这个.config文件来构建内核。 大多数内核软件模块也... 阅读全文
posted @ 2014-04-16 13:47 ITtecman 阅读(7892) 评论(0) 推荐(0) 编辑
摘要: 通用函数: /* common.h */#ifndef _COMMON_H#define _COMMON_Hvoid swap(int *ap, int *bp);void print_array(const int array[], int n);#endif /* common.c */#include "common.h"#include void swap(int *ap, in... 阅读全文
posted @ 2014-04-15 08:38 ITtecman 阅读(1057) 评论(0) 推荐(0) 编辑
摘要: 通用函数: /* common.h */#ifndef _COMMON_H#define _COMMON_Hvoid swap(int *ap, int *bp);void print_array(const int array[], int n);#endif /* common.c */#include "common.h"#include void swap(int *ap, in... 阅读全文
posted @ 2014-04-14 08:51 ITtecman 阅读(388) 评论(0) 推荐(0) 编辑
摘要: 实例功能:接收一个含有整数元素的数组和一个包含元素个数的整数,将数组中的元素从小到大重新排序。并输出排序前后的数组。 下面以模块划分的思想来实现此功能。 打印数组元素模块: /* common.h */#ifndef _COMMON_H#define _COMMON_Hvoid print_array(const int array[], int n);#endif /* commo... 阅读全文
posted @ 2014-04-13 08:42 ITtecman 阅读(465) 评论(0) 推荐(0) 编辑
摘要: 1、在加电复位之后,大多数处理器都会从一个默认的地址处获取代码。比如MIPS结构的CPU会从0xBFC00000处取第一条指令,而ARM结构的CPU则从地址0x00000000处取第一条指令。因此,在嵌入式开发板中,需要把存储器件ROM或Flash等映射到这个默认的地址处,Bootloader就存放在这个地址开始处,这样一上电就可以执行Bootloader。 2、当Bootloader完成基本的... 阅读全文
posted @ 2014-04-11 17:44 ITtecman 阅读(6711) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 59 下一页