基于ARM和uClinux的嵌入式系统的构建研究
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
随着Internet的发展和后PC时代的到来,嵌入式系统成为当前IT产业的焦点之一,呈现了巨大的市场需求。但同时大量的嵌入式应用也对嵌入式设备的性能和功能提出了更高的要求。现在,嵌入式设备一般都需要有良好的网络支持和多任务处理的能力,如何合理选择软硬件平台,设计一个良好的嵌入式多应用综合开发平台是本论文研究和解决的重要课题。
     ARM(Advanced RISC Machines)公司的32位RISC处理器,以其高速度、低功耗、低成本、功能强、特有16/32位双指令集等诸多优异的性能,已成为移动通信、手持计算、多媒体数字消费等嵌入式解决方案中的首选处理器。其中,ARM公司的ARM7TDMI系列特别适合于低功耗、需要网络支持的工控设备。但因ARM7TDMI不具有MMU模块,在相应的软件实现中需要特别处理。在ARM7TDMI型的众多处理器中,Samsung公司的S3C4510B处理器以其低价格、低功耗以及强大的网络支持等在工控设备、PDA等领域占有了重要的市场份额。本文描述的产品平台即是基于此款处理器建立的嵌入式产品平台。
     uClinux操作系统从它刚出生就已经决定了它的不凡。它是从Linux衍生出来的一种操作系统,支持众多嵌入式处理器类型,具有完善的各类驱动支持,对没有MMU模块的处理器也有相应的实现,具有完整的TCP/IP协议栈的实现和完备的工具集。它同时具有Linux的优点,如高度模块化,开放源码等。因此,uClinux操作系统成为了许多嵌入式系统研究领域的首选操作系统之一。本文的描述产品平台采用的操作系统即选为uClinux。
     由于越来越多的嵌入式设备在网络上的应用和功能不断扩展,对这些嵌入式设备的网络管理问题也日益突出。实现对嵌入式设备的网络管理功能,是本文重点研究实现的嵌入式应用。
     本文首先介绍了嵌入式系统的概念以及嵌入式系统的软硬件的选型标准,并建立了一硬件平台——嵌入式ARM-Linux产品平台。籍此平台的建立,深入分析了uClinux操作系统,并将uClinux移植到产品平台上。作为嵌入式系统整体中的一部分,本文也设计了Bootloader、产品平台网络管理程序,并在产品平台上实现了NFS、Web Server、Telnet等服务。
     本文的设计成果,已作为实验室的嵌入式应用二次实验平台,用于产品开发及教学工作。
With the development of Internet and the coming of the post-PC era, the embedded systems is becoming the center of interest in the IT industry and exhibiting broad potential market. Meanwhile, the embedded applications are calling for better performance and functionality of embedded systems. At current stage, the embedded devices commonly require the supports of network and multi-task, therefore how to select a reasonable hardware/software platform and design an excellent integrated platform for multifunctional embedded applications is the focus of this thesis.
    ARM is the leading provider of 32-bit embedded RISC microprocessors. ARM offers a wide range of processor cores and delivering high performance together with low power consumption and system cost, high performance and specific THUMB instrument set, ARM7TDMI, one processor core of ARM, is very suitable to be applied in control field where requires low power consumption and network surpport, although the programming should be taken care because of the special property of not having a MMU in it. Among many processors based ATM7TDMI, S3C4510B of Samsung is selected in our platform. Because S3C4510B combines many virtues such as low cost and power comsumption, well network performance, it has been becoming an ideal processor of embedded applications.
    uClinux is distinct from its birth. It is derived of Linux and inherits lots of virtures of Linux such as open source, surpporting wide range processors, many drivers, and so on. Above all, it has special implements in the case of not having MMU. uClinux also has full implementions of TCP/IP and some essencial tools. It is one of the best choices in various OSs for embedded system.
    The problem of managing the network composed of embedded devices is catching more attention in that the number of multifunctional embedded devices is becoming increasingly large and difficult to manage the devices. The realization of network management for embedded devices is the main content of this dissertation.
    The main work of this dissertation could be summarized as follows. First, the concept of embbeded system and criterias of choosing system's software and hardware are presented. And a hardware platform named "ARM-Linux based embedded system product platform" is developed. Secondly, the paper analyses the uClinux and introduces how to port uClinux to the platform. As a part of an embedded system, Bootloarder and network manager are designed. And many services of various types are offered, such as NFS, telnetd, Web Server etc. Thirdly, we redesigned the network driver because of unstability of the original code of uClinux provided by the standard publish version. Finally, we designed MTD driver to manage storage device and a flexible and configurable root filesystem is constructed.
引文
[1] www.uclinux.org
    [2] sourceforge.net
    [3] www.ucdot.org
    [4] What is the difference between uClibc and uC-libc; www.ucdot.org
    [5] XIP eXecute In Place; www.ucdot.org
    [6] Karim Yaghmour; Building Embedded Linux Systems; O'Reilly, 2003. 4
    [7] http://romfs.sourceforge.net/
    [8] Greg Ungerer; Using Flash Memory With uClinux; www.snapgear.com
    [9] http://openarm.linuxforum.net/doc/DOC/CrossHowTo.txt
    [10] 彭良清;基于XMODEM协议的在板文件下载软件设计;合肥工业大学
    [11] 未明;Linux 网卡驱动程序;网上资料
    [12] 潘纲;Linux 网络设备分析;浙江大学计算机系
    [13] http://www.wanhenet.com/technology/whn/r&d/r&d-23.htm
    [14] 未明;Linux 日志式文件系统报告;网上资料
    [15] Borko, Furht, David Gluch; Real Time UNIX Systems Design and Application Guide;
    [16] Alessandro Rubini; Linux Device Driver; O'Reilly; 2000. 12
    [17] http://tinylogin.busybox.net/
    [18] 魏忠,蔡勇,雷红卫;嵌入式开发详解;第一版,电子工业出版社,2003.1
    [19] uClinux-BFLT Binary Flat Format; http://www.beyondlogic.org
    [20] 未明; Find your Root File System with MTD; www.ucdot.org
    [21] 未明:用uClinux 开发嵌入式网关;网上资料
    [22] www.armzone.com
    [23] bbs.edw.com.cn
    [24] 李善平,刘文峰;Linux与嵌入式系统;清华大学出版社,2003.1
    [25] 邹思铁;嵌入式Linux设计与应用;清华大学出版社,2002
    [26] 未明;ARM开发详解;bbs.edw.com.cn
    [27] sdtuserguide.pdfi SDT帮助文件
    [28] sdtrefman.pdf;SDT帮助文件
    [29] Wooky, Tak-shing; Porting linux kernel to ARM; www.alephl.co.uk
    [30] Snds100开发板资料:www.samsung.com
    [31] RTL8021芯片资料;www.realtek.com
    [32] SST39VF160芯片资料;www.sst.com
    [33] The Linux MTD, JFFS HOWTO; http://www.linux-mtd.infradead.org/
    [34] 陈坚华:基于ARM7TDMI的uClinux移植:浙江大学硕士学位论文,2003
    [35] 万晨妍:基于ARM的嵌入式系统及其SNMP的实现与实现;浙江大学硕士学位论文,2003

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700