基于Xscale的PC/104 Linux系统构建
1 引言
PC/104是一种专门为嵌入式控制而定义的工业控制总线。其实质是一种紧凑的IEEE-P996总线规范。PC/104的信号定义和PC/AT基本一致,但电气和机械规范完全不同,是一种优化的、低功耗的、小型的、堆栈式结构的嵌入式控制系统[1]。
基于嵌入式PC/104的操作系统多为DOS或者Windows。采用DOS系统无图形窗口,交互能力差;采用Windows系统则需要昂贵的版权费,成本高,且存在安全问题。
ARM(Advanced RISC Machines) 公司是全球领先的16/32位RISC微处理器知识产权设计供应商[2]。 ARM处理器具有体积小、功耗低、性能优良且成本低廉等优点,与PC/104的工作环境对其提出的要求相符,而且Linux具有开放源码的特点,用户不必为昂贵的版权费用担心。因此,研究以基于ARM的Xscale处理器替代传统的X86架构的PC/104处理器,并以嵌入式Linux系统替代DOS或 Windows系统具有重要意义。
2 PC/104目标硬件平台介绍
本文采取博创公司的UP-PXA270 PC/104 CPU模块作为构建Linux的目标硬件平台。该模块采用Intel PXA270 Xscale低功耗处理器,主频104MHZ~520MHZ,集成了64M的SDRAM,有16M的Nor Flash存储软件程序及重要数据,提供了CF卡接口、USB接口、VGA接口、LVDS接口、串口、以太网接口。
3 Linux系统在PC/104上的实现
3.1 内核的选择与下载
目前,Linux已经正式发布了2.6.20内核版本,综合考虑先进性和稳定性两个因素,本
文不采用最新的2.6.20版本,而是采用更稳定和成熟的2.6.10版本,该版本可从下面的网址
3.2 交叉编译环境的建立
由于宿主机和目标板的处理器架构不同,需要建立交叉编译环境。在宿主机上完成程序的开发和编译,在目标板上执行,可以充分利用宿主机的高性能,有效提高编译效率。
主机采用商用版Redhat-Linux9.0,以解决基于Windows虚拟机环境存在兼容性及对速度产生影响等问题。
本文在X86架构上的主机上采用针对ARM的工具链进行开发,开发工具链采用UP-PXA270 PC/104 CPU模块配套光盘中提供的交叉编译器arm-linux-gcc,安装步骤如下:
以超级用户root登陆,并打开一个shell,依次执行如下操作:
1) #mkdir/usr/local/arm;创建开发工具目录;
2) #cd/usr/local/arm;进入该目录;
3) #tar xvzf arm_linux_gcc.tar.gz;解压缩交叉编译工具;
4) #export PATH=/usr/local/arm/3.2.1/bin:¥PATH。设置环境变量。
便可完成安装,建立好交叉编译环境。
linux操作系统文章专题:linux操作系统详解(linux不再难懂)
评论