服务器 频道

Linux系统在嵌入式系统上的实践和探讨

  【IT168 服务器学院】1、实践目的

  向一个成熟的嵌入式硬件平台移植KERNEL 2.6版本的LINUX核心;以实践一个嵌入式系统的初步开发要求和进一步的应用程序移植。

  2、硬件平台

  VIA公司的EmCore-V611V12r/E533

  其平台主要应用于瘦客户机、机顶盒、查询机、网关防火墙、服务器等。相对硬件配置高,条件也不苛刻,但对软件的扩展、升级等要求高。

  VIA公司的VEPD是X86架构在Embedded系统的延伸,所以软件的可移殖利用性强,开发周期短等特点。

  3、安装LINUX

  A. 初始化CF卡
  将CF卡插在宿主机的ID1上。格式化CF卡,建立文件系统。CF卡出厂的时候分区一般如下:
  0....Bootloader
  1....Factory  configuration
  2
  .
  . 内核和根文件
  .
  .
  N
  分区0....放置Bootloader
  分区1....放置Factory configuration
  分区2...N放置 内核、根文件系统 等

  一般不同的硬件和LINUX的Bootloader 也不尽相同。如UCLinux 一般用COLILO等。

  嵌入式系统所用的文件格式一般有JFFS、JFFS2、EXT2。而我们现在的系统可以支持EXT3。

  1)fdisk /dev/sda
  2)mkfs.ext3 /dev/sda1
  当然也可以用图形化工具完成1)2)步骤。

  B. 在CF卡上建立和CP相关的必要文件

  1)mount CF卡
  2)建立/mnt/cf/boot、/mnt/cf/boot/grub 等目录。
  3)CP grub下的文件到/mnt/cf/boot/grub,CP 其他的根系统文件。

  C. 编译针对目标机的2.6内核

  我的源文件目录为/data/linux-2.6.6,输出目录设置为/data/cf
  1)cd /data/linux-2.6.6
  2)make mrproper
  3)make O=/data/cf gconfig
  这里主要是对目标机的硬件选相关的硬件选项,舍去不要的选项。CPU选VIA FAMILY、FLASH驱动选在MTD里,还有网卡、USB、声卡等
  4)make O=/data/cf
  5)cp /data/cf/arch/i386/boot下的vlimuz、initrid.img 到 /mnt/cf/boot下

0
相关文章