1、内核 移植的基本过程1)下载内核 ,解压到相应的目录。2)修改 Makefile 文件, 设置架构类型及使用的编译器。3)配置内核 ,通常是尽量裁减内核。4)生成新内 核。 移植流程如内核移植步骤如下。操作 步 骤步骤 1:复 制 linux-2.6.22.5 内核压缩 包到 embedded 目录 中,并解压缩。rootlocalhost embedded# tar xjvf linux-2.6.22.5.tar.bz2步骤 2:进 入 linux-2.6.22.5 目录中。rootlocalhost embedded# cd linux-2.6.22.5/步骤 3:修 改 Makefile
2、 文件。rootlocalhost linux-2.6.22.5# vi Makefile#ARCH ?= $(SUBARCH) #注释该行#CROSS_COMPILE ?= #注释该行ARCH ?= arm #添加该行CROSS_COMPILE ?= arm-linux- #添加该行步骤 4:执行 m ake menuconfig 配置内 核。rootlocalhost linux-2.6.22.5# make menuconfigmake menuconfig 基于文本图形化终端配置菜单,是目前使用最广泛的配置内核方法。修改以下相关内容,要注意选的是 * 还是 M 之类。General s
3、etup -* Initial RAM filesystem and RAM disk (initramfs/initrd) support System Type -ARM system type (ARM Ltd. Versatile family) -(X) ARM Ltd. Versatile family改成(X) Samsung S3C2410, S3C2412, S3C2413, S3C2440, S3C2442, S3C2443 ARM system type (Samsung S3C2410, S3C2412, S3C2413, S3C2440, S3C2442, S3C24
4、43) - S3C2410 DMA support (NEW)改成* S3C2410 DMA support S3C2410 Machines - SMDK2410/A9M2410 (NEW)改成* SMDK2410/A9M2410Boot options -() Default kernel command string改成(console=ttySAC0 root=/dev/ram init=/linuxrc) Default kernel command stringDevice Drivers - Character devices -Serial drivers -Samsung S
5、3C2410/S3C2440/S3C2442/S3C2412 Serial port support (NEW)改成Samsung S3C2410/S3C2440/S3C2442/S3C2412 Serial port support* Support for console on S3C2410 serial port LED devices - LED Support (NEW)改成* LED SupportLED Class SupportLED Support for Samsung S3C24XX GPIO LEDs (NEW)改成LED Support for Samsung S3
6、C24XX GPIO LEDs LED Trigger support (NEW)改成* LED Trigger supportLED Timer TriggerLED Heartbeat Trigger Multimedia devices -Video For Linux改成Video For Linux * DAB adapters (NEW)改成 DAB adaptersGraphics support -S3C2410 LCD framebuffer support (NEW)改成S3C2410 LCD framebuffer support Console display driv
7、er support -* VGA text console (NEW)改成 VGA text consoleFramebuffer Console support (NEW)改成Framebuffer Console support* Framebuffer Console Rotation * Select compiled-in fonts* VGA 8x16 font * Mini 4x6 font Bootup logo (NEW) -改成* Bootup logo -上述修改是必须的,下面的修改是根据需要进行的。Code maturity level options -* Prom
8、pt for development and/or incomplete code/drivers改成 Prompt for development and/or incomplete code/drivers Floating point emulation - NWFPE math emulation (NEW)改成* NWFPE math emulation* Support extended precision Device Drivers -Memory Technology Device (MTD) support -改成Memory Technology Device (MTD)
9、 support - MTD partitioning support (NEW)改成(NEW)改成改成 改成 改成改成改成 改成改成*MTD partitioning support RAM/ROM/Flash chip drivers -Detect flash chips by Common Flash Interface (CFI) probeDetect flash chips by Common Flash Interface (CFI) probeSupport for Intel/Sharp flash chips (NEW)Support for Intel/Sharp fl
10、ash chipsSupport for RAM chips in bus mapping (NEW)Support for RAM chips in bus mappingSupport for ROM chips in bus mapping (NEW)Support for ROM chips in bus mapping Mapping drivers for chip access -Map driver for platform device RAM (mtd-ram) (NEW)Map driver for platform device RAM (mtd-ram) Self-c
11、ontained MTD device drivers -Physical system RAM (NEW)Physical system RAMMTD using block device (NEW)MTD using block device Parallel port support -Parallel port supportParallel port supportSCSI device support -SCSI device support改成SCSI device supportMulti-device support (RAID and LVM) -* Multiple de
12、vices driver support (RAID and LVM)改成 Multiple devices driver support (RAID and LVM) ISDN subsystem -ISDN support改成ISDN support Input device support -Joystick interface改成Joystick interfaceTouchscreen interface (NEW)改成Touchscreen interface(320) Horizontal screen resolution(240) Vertical screen resolu
13、tion Touchscreens (NEW) -改成 Touchscreens -Philips UCB1400 touchscreen (NEW)改成Philips UCB1400 touchscreen File systems -Miscellaneous filesystems -Journalling Flash File System v2 (JFFS2) support (NEW)改成Journalling Flash File System v2 (JFFS2) support *Advanced compression options for JFFS2内核移植 关 键的步
14、骤 就 在于配置 哪 些选项是 必 须选择, 哪 些选项是 不 用选的。 实 际上在配置 时 ,大部分 选 项可以使 用 其默认值 , 只有少部 分 要根据用 户 不同的需 要 选择 。 选择的原 则 是,将与 内 核其他部 分 关系较远 且 不经常使 用 的部分功 能 代码编译 成 可加 载 模块,有 利 于减小内 核 的大小、 减 小内核消 耗 的内存、 简 化该功能 相 应的环境 改 变时 对 内核的影 响 。不需要 的 s 功能就不 选 ,与内核 关 系紧密而 且 经常使用 的 部分功能 代 码直接 编译到内核中。步骤 5:执 行 make dep 命令检查依赖关系。rootlocalhost kernel# make dep步骤 6:生 成 zImage 内 核镜像文件。rootlocalhost kernel# make zImage生成的 zImage 文件在 arch/arm/boot/目录中。步骤 7:将 zImage 文件复制到/tftp boot 目录中。rootlocalhost kernel# cp arch/arm/boot/zImage /tftpboot/步骤 8:测试 生成的新内核能否启动。