1、本科毕业论文(20 届)基于嵌入式 Linux 系统的 Web 的应用开发所在学院 专业班级 通信工程 学生姓名 学号 指导教师 职称 完成日期 年 月 - I -目录摘要 .IIIAbstract.IV第一章 概述 .11.1 课题背景 .11.2 选题意义 .11.3 研究方法 .1第二章 嵌入式 Linux 概述 .22.1 嵌入式系统 .22.1.1 什么是嵌入式系统 .22.1.2 嵌入式处理器 .32.2 嵌入式 Linux.52.2.1 嵌入式 linux 的定义 .52.2.2 嵌入式 Linux 的特点 .62.3 嵌入式 Linux 面临的挑战 .7第三章 嵌入式 Linu
2、x 的应用开发前景 .103.1 嵌入式 Linux 的应用开发前景 .103.1.1 与硬件芯片的紧密结合 .103.1.2 开放的源代码 .103.1.3 嵌入式 Linux 与硬件芯片的紧密结合 .103.2 部分嵌入式 Linux 产品 .113.3 开发嵌入式 Linux 的几个问题 .12第四章 基于嵌入式 Linux 在 web 上的各种应用 .134.1 基于 Linux 的嵌入式 Web 服务器设计与应用 .134.1.1 嵌入式 web 服务器概述 .134.1.2 系统的硬件结构 .134.1.3 嵌入式 Linux 操作系统的建立 .144.1.4 Boa 在 Web
3、服务器中的应用 .144.2 基于 Linux 平台的 Web 应用程序攻击防御机制 .15- II -4.2.1 Web 应用攻击 .154.2.2 Web 应用程序攻击防御方法 .164.3 基于嵌入式 Linux 的动态 Web 开发模型研究 .174.3.1 动态 Web 模型的设计 .184.3.2 动态 Web 模型及其工作流程 .184.3.3 模型的结构 .194.3.4 模型的功能特点 .20第五章 Linux 是互联网的枢纽 .215.1 Linux 是互联网的枢纽原因 .215.2 嵌入式 Linux 的发展及应用前景 .22第六章 总结 .24参考文献 .25致谢 .2
4、6- III -基于嵌入式 Linux 在 Web 上的运用摘 要二十一世纪开始的后 PC 时代,3C 产品大量融入到人们的生产和生活中。作为产品工业化的主流技术,嵌入式技术以具体应用为中心,结合计算机技术和通信技术成为研究与开发的重点,其产品多以非计算机形式出现,遍布各个方面,包括:航空电子、汽车电子、消费电子和家用电子等;同时根据目标系统的应用要求 ,微型化、网络化和高性价比的趋势也越来越显著。随着国内外嵌入式产品地进一步开发和推广,嵌入式技术越来越和人们地生活密切相关。本论文主要分析嵌入式系统应用开发的特点,概述其开发过程和所面临的挑战;阐述嵌入式 Linux 的发展过程和应用前景。本文
5、首先介绍了个人对嵌入式Linux 认识,接着阐述了个人认为嵌入式 Linux 应用开发前景,根据这些问题举出了嵌入式 Linux 在 web 上的一些研究与运用。关键词:嵌入式;Linux;web;应用- IV -Based On Embedded In Web Application On LinuxAbstractThe 21st century, the PC era began after a 3C products into peoples production and life. As a product of mainstream technological industrial
6、ization, embedded technology with specific application as the center, based on the computer technology and communication technology become research and development of key, its product in a computer form more throughout each aspect, including avionics, automobile electronics, consumer electronics and
7、 home electronics, etc.; Also according to the target system application requirements, miniaturization, networked and high ratio of performance to price trend also more and more remarkable. As foreign and domestic embedded products further development and promotion, embedded technology is more and m
8、ore closely related with people to live. This thesis mainly analyses the characteristics of embedded system application development, Outlines the development process and the challenges facing the; This process of development of embedded Linux and application in the future. This paper first introduce
9、s personal for embedded Linux understanding, then expounds the individual thinks embedded Linux application prospects, according to these problems cited the embedded Linux in web on some of the research and application. Keywords: embedded,Linux ,Web ,application- 1 -第一章 概述1.1 课题背景随着信息化、网络化、智能化技术的发展,
10、嵌入式技术得到了极大的发展,Linux操作系统以其稳定性好,可靠性高,源代码公开,可剪裁,版权免费等优点,已成为嵌入式领域的一股新兴力量,具有巨大的市场潜力和商业价值。嵌入式处理器种类繁多,要使 Linux 嵌入式系统在各个领域得到广泛的应用,就必须把 Linux 嵌入式系统移植到各种处理器平台上,特别是当前主流平台上,并应用于实际的产品。1.2 选题意义嵌入式系统与 Internet 技术相结合,形成的嵌入式 Internet 技术是近几年随着计算机网络技术的普及而发展起来的一项新兴技术,对远程设备进行监控,管理是嵌入式系统的重要研究发展方向之一。网络监控设备逐渐成为趋势:使用嵌入式 Web
11、 主要有几点优势:(1) 直接使用浏览器界面,不需要再安装其他的客户端软件;(2)可以实现远程自动系统升级;(3)由于 web 标准的统一,使得开发可以跨平台的易于移植 1。1.3 研究方法根据论文要解决的问题,查阅了大量有关嵌入式 linux 在 web 上运用的资料,借鉴己有的研究成果,提出自己的研究结论和创新看法。理论研究与实证分析有机结合,提出了嵌入式 linux 发展趋势,本文首先介绍了嵌入式 Linux,接着介绍了嵌入式Linux 应用开发前景,根据这些问题举出了嵌入式 Linux 在 web 上的一些运用。- 2 -第二章 嵌入式 Linux 概述2.1 嵌入式系统2.1.1 什
12、么是嵌入式系统根据 IEEE(国际电机工程师协会)的定义,嵌入式系统是“ 控制、监视或者辅助装置、机器和设备运行的装置”(devices used to control, monitor, or assist the operation of equipment, machinery or plants) 。从中可以看出嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。目前国内一个普遍被认同的定义是:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。简单地说,嵌入式系统集系统的应用软件与硬件于一体,类似于 PC 中
13、BIOS 的工作方式,具有软件代码小 ,高度自动化,响应速度快等特点,特别适合于要求实时和多任务的体系。嵌入式系统主要由嵌入式处理器,相关支撑硬件,嵌入式操作系统及应用软件系统等组成,它是可独立工作的“器件 “。嵌入式系统几乎包括了生活中的所有电器设备 ,如掌上 PDA ,移动计算设备,电视机顶盒,手机上网,数字电视 ,多媒体,汽车,微波炉,数字相机,家庭自动化系统,电梯,空调,安全系统,自动售货机,蜂窝式电话,消费电子设备,工业自动化仪表与医疗仪器等。嵌入式系统的硬件部分,包括处理器/微处理器,存储器及外设器件和 I/O 端口等。嵌入式系统有别于一般的计算机处理系统,它不具备像硬盘那样大容量
14、的存储介质,而大多使用 EPROM,EEPROM 或闪存(Flash Memory)作为存储介质。软件部分包括操作系统软件( 要求实时和多任务操作)和应用程序编程。应用程序控制着系统的运作和行为; 而操作系统控制着应用程序编程与硬件的交互作用。它的核心是嵌入式微处理器。2.1.2 嵌入式处理器嵌入式系统的核心是嵌入式微处理器。嵌入式处理器一般就具备以下 4 个特点:对实时多任务有很强的支持能力,能完成多任务并且有较短的中断响应时间,从而使内部的代码和实时操作系统的执行时间减少到最低限度;具有功能很强的存储区保护功能。这是由于嵌入式系统的软件结构已模块化,而为了避免在软件模块之间出现错误的交叉作
15、用,需要设计强大的存储区保护功能,同时也有- 3 -利于软件诊断;可扩展的处理器结构,以能最迅速地开展出满足应用的最高性能的嵌入式微处理器;嵌入式微处理器必须功耗很低,尤其是用于便携式的无线及移动的计算和通信设备中靠电池供电的嵌入式系统更是如此,如需要功耗只有 mW 甚至 W 级。据不完全统计,目前全世界嵌入式处理器的品种总量已经超过 1000 种,流行的体系结构有 30 多个系列。其中 8051 体系占多半 ,生产这种单片机的半导体厂家有 20 多个,共 350 多种衍生产品,仅 Philips 就有近 100 种。现在几乎每个半导体制造商都生产嵌入式处理器,越来越多的公司有自己的处理器设计
16、部门。嵌入式处理器的寻址空间一般从 64kB 到 16MB ,处理速度为 0.12000MIPS ,常用封装 8144 个引脚。根据现状,嵌入式计算机可分成下面几类:嵌入式微处理器 (Embedded Microprocessor Unit, EMPU)。嵌入式微处理器采用“增强型 “通用微处理器。由于嵌入式系统通常应用于环境比较恶劣的环境中,因而嵌入式微处理器在工作温度,电磁兼容性以及可靠性方面的要求较通用的标准微处理器高。但是,嵌入式微处理器在功能方面与标准的微处理器基本上是一样的。根据实际嵌入式应用要求,将嵌入式微处理器装配在专门设计的主板上,只保留和嵌入式应用有关的主板功能,这样可以大
17、幅度减小系统的体积和功耗。和工业控制计算机相比,嵌入式微处理器组成的系统具有体积小,重量轻,成本低,可靠性高的优点,但在其电路板上必须包括 ROM,RAM,总线接口,各种外设等器件,从而降低了系统的可靠性,技术保密性也较差 2。由嵌入式微处理器及其存储器,总线,外设等安装在一块电路主板上构成一个通常所说的单板机系统。嵌入式处理器目前主要有 Am186/88, 386EX, SC-400, Power PC,68000,MIPS,ARM 系列等。嵌入式微控制器 (Microcontroller Unit, MCU)。嵌入式微控制器又称单片机,它将整个计算机系统集成到一块芯片中。嵌入式微控制器一般
18、以某种微处理器内核为核心,根据某些典型的应用,在芯片内部集成了ROM/EPROM,RAM 总线 ,总线逻辑,定时/计数器,看门狗 ,I/O,串行口,脉宽调制输出,A/D,D/A,Flash RAM,EEPROM 等各种必要功能部件和外设。为适应不同的应用需求,对功能的设置和外设的配置进行必要的修改和裁减定制,使得一个系列的单片机具有多种衍生产品,每种衍生产品的处理器内核都相同,不同的是存储器和外设的配置及功能的设- 4 -置。这样可以使单片机最大限度地和应用需求相匹配,从而减少整个系统的功耗和成本。和嵌入式微处理器相比,微控制器的单片化使应用系统的体积大大减小,从而使功耗和成本大幅度下降,可靠
19、性提高。由于嵌入式微控制器目前在产品的品种和数量上是所有种类嵌入式处理器中最多的,而且上述诸多优点决定了微控制器是嵌入式系统应用的主流。微控制器的片上外设资源一般比较丰富,适合于控制,因此称为微控制器。通常,嵌入式微处理器可分为通用和半通用两类,比较有代表性的通用系列包括 8051,P51XA,MCS-251,MCS-96/196/296,C166/167,68300 等。而比较有代表性的半通用系列,如支持 USB 接口的 MCU 8XC930/931,C540,C541;支持 I2C,CAN 总线,LCD 等的众多专用 MCU 和兼容系列。目前 MCU 约占嵌入式系统市场份额的 70%。嵌入
20、式 DSP 处理器 (Embedded Digital Signal Processor)。在数字信号处理应用中,各种数字信号处理算法相当复杂,这些算法的复杂度可能是O(nm)的,甚至是 NP 的,一般结构的处理器无法实时的完成这些运算。由于 DSP 处理器对系统结构和指令进行了特殊设计,使其适合于实时地进行数字信号处理。在数字滤波,FFT,谱分析等方面,DSP 算法正大量进入嵌入式领域 ,DSP 应用正从在通用单片机中以普通指令实现 DSP 功能,过渡到采用嵌入式 DSP 处理器。嵌入式 DSP 处理器有两类:1)DSP 处理器经过单片化,EMC 改造,增加片上外设成为嵌入式 DSP 处理器
21、,TI 的TMS320C2000/C5000 等属于此范畴 ;2)在通用单片机或 SOC 中增加 DSP 协处理器,例如Intel 的 MCS-296 和 Infineon(SIEMENS)的 TriCore 。另外,在有关智能方面的应用中,也需要嵌入式 DPS 处理器,例如各种带有智能逻辑的消费类产品,生物信息识别终端,带有加解密算法的键盘,ADSL 接入,实时语音压解系统,虚拟现实显示等。这类智能化算法一般都是运算量较大,特别是向量运算,指针线性寻址等较多,而这些正是 DSP 处理器的优势所在。嵌入式 DSP 处理器比较有代表性的产品是 TI 的 TMS320 系列和 Motorola 的
22、DSP56000 系列。TMS320 系列处理器包括用于控制的 C2000 系列,移动通信的 C5000系列,以及性能更高的 C6000 和 C8000 系列。 DSP56000 目前已经发展成为DSP56000,DSP56100,DSP56200 和 DSP56300 等几个不同系列的处理器。另外,Philips 公司最近也推出了基于可重置嵌入式 DSP 结构,采用低成本,低功耗技术制造的R。E。A。L DSP 处理器 ,其特点是具备双 Harvard 结构和双乘/累加单元,应用目标是大批量消费类产品。嵌入式片上系统 (System On Chip, SOC)。- 5 -随着 EDI 的推广
23、和 VLSI 设计的普及化,以及半导体工艺的迅速发展 ,可以在一块硅片上实现一个更为复杂的系统,这就产生了 SOC 技术。各种通用处理器内核将作为SOC 设计公司的标准库,和其他许多嵌入式系统外设一样,成为 VLSI 设计中一种标准的器件,用标准的 VHDL,Verlog 等硬件语言描述,存储在器件库中。用户只需定义出其整个应用系统,仿真通过后就可以将设计图交给半导体工厂制作样品。这样除某些无法集成的器件以外,整个嵌入式系统大部分均可集成到一块或几块芯片中去,应用系统电路板将变得很简单,对于减小整个应用系统体积和功耗,提高可靠性非常有利。SOC 可分为通用和专用两类,通用 SOC 如 Infi
24、neon (SIEMENS)的 TriCore,Motorola 的 M-Core,以及某些 ARM 系列器件,如 Echelon 和 Motorola 联合研制的 Neuron 芯片等;专用 SOC 一般专用于某个或某类系统中,如 Philips 的 Smart XA,它将 XA 单片机内核和支持超过 2048 位复杂 RSA 算法的 CCU 单元制作在一块硅片上,形成一个可加载 Java 或 C 语言的专用SOC,可用于互联网安全方面 3。2.2 嵌入式 Linux2.2.1 嵌入式 linux 的定义虽然大多数 Linux 系统运行在 PC 平台上,但 Linux 也可以作为嵌入式系统的
25、可靠主力。Linux 流行的“back-to-basics“ 方法使得它的安装和管理比 UNIX 更加简单灵活,这对于那些 UNIX 专家们来说又是一个优点,他们已经因为 Linux 中有许多命令和编程接口同传统的 UNIX 一样而赏识它了。典型的压缩包装 Linux 系统经过打包,在拥有硬盘和大容量内存的 PC 机上运行,嵌入式系统可不要这么高的配置。一个功能完备的 Linux 内核要求大约 1 MB 内存。而 Linux 微内核只占用其中很小一部分内存,包括虚拟内存和所有核心的操作系统功能在内,只需占用 Pentium CPU 系统的 100 K 内存。只要有 500 K 的内存,一个有网络栈和基本实用程序的完全的 Linux 系统就可以在一台 8 位总线(SX)的 Intel 386 微处理器上运行的很好了。由于内存要求常常是需要的应用所决定的,比如 Web 服务器或者 SNMP 代理,Linux 系统甚至可以仅使用 256 KB ROM 和 512 KB RAM 进行工作。因此它是一个瞄准嵌入式市场的轻量级操作系统。与传统的实时操作系统相比(RTOS),采用象嵌入式 Linux 这样的开放源码的操作系统的另外一个好处是 Linux 开发团体看来会比 RTOS 的供应商更快地支持新的 IP 协议和其它协议。例如,用于 Linux 的设备驱动程序要比用于商业操作系统的设备驱动