2 系统软件平台的构建
uclinux经过对标准Linux内核的改动,形成了一个高度优化的、代码紧凑的嵌入式Linux,虽然它的体积很小,但uclinux仍然保留了Linux的大多数的优点:稳定、良好的移植性、优秀的网络功能、对各种文件系统完备的支持,以及标准丰富的API,适合远程配置模块的建立。因此,远程配置模块以uclinux为基础,建立系统的软件平台。
系统采用GNU的套件arm-elf工具链:arm—elf-tools-20030314.sh建立对uclinux进行编译的交叉环境。将arm-elf-tools-20030314.sh拷贝到根目录,运行安装:
sh arm-elf-tools-20030314.sh即可对uclinux进行编译和移植了
交叉编译成功后,在uClinux-dist/目录下产生images目录,其中包含的3个二进制文件文件image.ram,image.rom和romfs.img。
3 系统软件设计
系统的软件是实现远程配置模块的核心,首先编写bootloader的过程,以优化系统在开发板上的执行,然后实现了应用程序以及设备驱动程序的开发。应用程序的开发主要是基于Socket应用程序的编写。在socket的实现过程中.本系统采用了xml文件配置设备驱动参数。
3.1 Bootloader的设计
Bootloader的设计主要是为了在系统上电复位之后,将系统程序执行跳转到系统内核的执行地点。针对这个主要的功能,必须对微处理器的内核以及其他部分进行初始化以及其它的功能扩展,Bootloader它主要完成了以下几个过程:
(1)建立中断向量表
(2)初始化各种处理器模式
(3)引入特殊变量
(4)初始化memory
(5)代码复制
完成了系统的硬件初始化过程后,将CPU使用权交给
了操作系统,从而完成了.Bootloader的最终目的。
3.2设备驱动程序开发
Linux对设备的操作Linux系统访问设备就像访问文件
—样。例如打开设备使用系统调用open(),关闭设备使用系