(电路与系统专业论文)嵌入式Web+Server及其网络通信实现研究[电路与系统专业优秀论文].pdf_第1页
(电路与系统专业论文)嵌入式Web+Server及其网络通信实现研究[电路与系统专业优秀论文].pdf_第2页
(电路与系统专业论文)嵌入式Web+Server及其网络通信实现研究[电路与系统专业优秀论文].pdf_第3页
(电路与系统专业论文)嵌入式Web+Server及其网络通信实现研究[电路与系统专业优秀论文].pdf_第4页
(电路与系统专业论文)嵌入式Web+Server及其网络通信实现研究[电路与系统专业优秀论文].pdf_第5页
已阅读5页,还剩59页未读 继续免费阅读

(电路与系统专业论文)嵌入式Web+Server及其网络通信实现研究[电路与系统专业优秀论文].pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 网络监控,是指利用计算机网络技术实现( 远程) 工业生产控制系统的监视 和控制。随着计算机网络技术的飞速发展和应用,网络已逐渐渗入到工业应用领 域,对工业设备的远程监控成为一种迫切的需求。针对目前嵌入式系统在工业控 制领域的应用越来越广泛这一趋势,将嵌入式系统作为数据采集和控制的前端设 备,利用i n t e m e t 网络,为嵌入式系统构架w e b 服务器,直接接入i n t e r n e t ,结 合b si ) i :9 络体系结构和c s 结构的优点,提出b s 与c s 结构结合的网络监控系 统架构并加以实现。 本文主要研究了嵌入式系统的软硬件发展状况,嵌入式u c l i n u x 操作系统及 其上应用程序开发技术,嵌入式w e b 服务器技术及其上动态w e b 技术c g i ,v c 平台下w i n s o c k 接口及数据库编程技术等技术。在以a r m 7 t d m i 内核为核心、 支持以太网的嵌入式硬件平台巴,在这些理论技术的研究基础上实现应用t - 工业 控制领域的网络监控系统。构建的以嵌入式系统为前端设备的网络监控系统的架 构是:一个嵌入式终端系统可被分布于互联网络的不同浏览器监控,而多个嵌入 式终端系统可同时被一个客户端软件监控的。 本文实现的这个系统立足于实际需求,并且具有低成本,高性能的特点,有 着广阔的应用前景。 关键词:嵌入式系统b o aw i n s o c k m f c 网络模式 c g i a b s t r a c t a st h ef a s td e v e l o p m e n ta n da p p l i c a t i o no ft h ec o m p u t e rn e t w o r kt e c h n i q u e , n e t w o r kh a sa f f e c t e dt h ei n d u s t r ya p p l i c a t i o na r e ag r a d u a l l y i tb e c o m e sar e q u i r e m e n t t od os u p e r v i s o r yc o n t r o lf o rt h ei n d u s t r yd e v i c ev i an e t w o r k a n dn o we m b e d d e d s y s t e mh a sb e e nu s e dm o r ea n dm o r ew i d e l yi nt h ei n d u s t r yc o n t r o la r e a f o rt h i s t r e n d ,w er e a l i z ean e t w o r ks u p e r v i s o r yc o n t r o la n dd a t aa c q u i s i t i o ns y s t e mf o rt h e i n d u s t r yc o n t r o la p p l i c a t i o n ,u s i n gt h ew i d e l ys p r e a dn e t w o r k - 一i n t e r n e t t h es y s t e m m a k e st h ee m b e d d e ds y s t e maw e bs e r v e ra n dm a k i n gi t a c c e s s i n gt h ei n t e m e t d i r e c t l y ac o n j u n c t i o no ft h eb r o w s e r , s e r v e ra n dc l i e n t s e r v e ra r c h i t e c t u r ej s s e l e c t e df o rt h i ss y s t e m t h ep a p e rf i r s t l yd e s c r i b e st h et h e o r yo fe m b e d d e ds y s t e m ,e m b e d d e do p e r m i n g s y s t e mu c l i n u xa n di t sa p p l i c a t i o nd e v e l o p i n gt e c h n i q u e ,e m b e d d e dw e bs e r v e ra n d i t sc g it e c h n o l o g y , w i n s o c ka n dd a t a b a s ep r o g r a m m i n gt e c h n i q u e s b a s e do nt h e s e t h e o r i e s ,an e t w o r ks u p e r v i s o r yc o n t r o ls y s t e mf o rt h ei n d u s t r yc o n t r o li sr e a l i z e d t h es u p e r v i s o r ya n dc o n t r o ls y s t e mi sr e a l i z e do nah a r d w a r ep l a t f o r ms u p p o r t i n g e t h e m e ta n dw i t hp r o c e s s o ro fa r m 7 t d m ik e r n e l i nt h i ss y s t e m ,a ne m b e d d e dw e b s e r v e rs y s t e mc a nb ec o n t r o l l e db yb r o w s e r sd i s t r i b u t e di nd i f f e r e n ta r e a s ,m a n y e m b e d d e dw e bs e r v e rs y s t e mc a nb ec o n t r o l l e da l m o s tc o n c u r r e n t l yb yas i m p l e c l l e n t t h es y s t e mr e a l i z e df e a t u r e si nl o wc o s ta n dh i r 曲p e r f o r m a n c e ,s oi tc a nb e b e l i e v e dt oh a v eab r i 曲tf u t u r e k e y w o r d s : e m b e d d e ds y s t e mb o aw i n s o c km f cn e t w o r ka r c h i t e c t u r ec g i 嵌入式w e bs e r v e r 及其网络通信实现研究 1 1 引言 第一章绪论 随着目前i n t c m e t 网和无线骨干网技术的飞速发展,使得基于分组交换技术 的通信性能、质量和可靠性得到稳步提高,网络的应用逐步渗透到工业应用领域, “网络盟控”这个名词也逐渐被人们所熟悉。网络监控,顾名思义,足指利用计 算机网络技术实现( 远程) 工业生产控制系统的监视和控制i l j 0 将工业生产过程 的监视信息接入i n t c r n c t ,在一定条件卜 就可以通过i n t e r n e t 监视并控制生产系统 和现场设备的运行状态和各种参数,这便是基于i n t e m e t i n t r a n e t 的网络监控系 统。 而当前在工业控制、信息家电等应用领域,存在大量的嵌入式设备,如何实 现对这些嵌入式设备的远程监控,就成为当前嵌入式系统和监控系统发展的必然 要求。 1 2 嵌入式系统概述 嵌入式系统是以应用为中心,以计算机为基础,软硬件可裁剪,适用丁系统 对功能、t 叮靠性、成本、功耗严格要求的专用计算机系统。实时性是嵌入式系统 的基本要求,其次,还要求代码小,速度快,可靠性高。它可以实现对其他设备 的控制、监视或管理等功能【2 o 嵌入式系统主要具有以下四项特性: ( 1 ) 执行特定的操作,完成特定的功能 f 2 ) 以微处理器为核心,辅以一些必要的外设 ( 3 ) 有严格的稳定性要求,某些系统还要求有严格的实时性 ( 4 1 一切操作由微处理完成,不需要人的干预 1 2 1 嵌入式系统的硬件概述 一般来说,嵌入式系统由硬件和软件两大部分组成。硬件部分通常包括嵌入 嵌入武w e bs e r v e r 及其嗍络通信实现研究 式处理器和嵌入式外同设备;软件部分则由嵌入式操作系统和嵌入式应用软件组 成。 在嵌入式系统的硬件中,核心是嵌入式处理器。到目前为止,全球嵌入式处 理器的体系结构超过3 0 个,型号更是多达千种以卜。近年来,随着半导体工艺 水平的发展,嵌入式微处理器的性能提高很快,功耗也小断地在降低。同时出现 了专门的嵌入式内核供应商,如a r m 、m i p s 等。他们并不生,。芯片,只足向 各个半导体厂商提供处理器内核,厂商在内核外增加一些必要的外设来生产各个 应用领域的处理器芯片。 业界一般将嵌入式处理器分为4 类【3 1 : ( 1 ) 嵌入式微处理器( e m b e d e dm i c r op r o c e s s o ru n i t ,e m p u ) 嵌入式微处理器类似于通用计算机的c p u ,安装于一一块母板之上,所有的 外设都处于芯片之外,芯片内之保留处理器内核和一些必要的存储区。嵌入式微 处理器在工作温度、抗电磁干扰、可靠性方面都十分强大。目前,这类处理器主 要有x 8 6 、6 8 k 、a r m 等。 ( 2 ) 嵌入式微控制器( m i c r oc o n t r o l l e ru n i t ,m c u ) 嵌入式微控制器与嵌入式微处理器相比而言,嵌入式微控制器将必要的功能 模块和外设,例如r o m 、r a m 、u a r t 、a d c 、d a c 和总线等,集成于单片芯 片中,可以完成嵌入式微处理器加一些外围电路所能完成的功能。因而又叫做单 片机。内核的微控制器一般拥有多个型号,包含不同的外设,用柬完成不同的功 能。目前嵌入式微控制器种类包括8 0 5 1 系列、p i c 系列等,约占嵌入式系统市 场的7 0 左右。 ( 3 ) 嵌入式数字信号处理器( d i g i t a ls i g n a lp r o c e s s o r ,d s p ) d s p 对处理器的体系结构进行了改进,使处理器能更适应快速的数字信号处 理运算。大多数d s p 采用了哈佛结构,将程序和数据存储区分开,以不同的地 址数据总线分别对程序和数据进行读取或存储,同时采用一系列措施保证处理 速度,如划快速傅立叶变换( f f t ) 的专门优化。这类处理器目前主要有t i 公 司的t m s 3 2 0 系列和m o t o r o l a 公司的d s p 5 6 0 0 0 系列。 ( 4 ) 嵌入式片上系统( s y s t e mo nc h i p ) 嵌入式片l 系统是指利用多方面知识产权将复杂的系统或子系统集成到一 2 嵌入式w e bs e r v e r 及其网络通信实现研究 块芯片上,从而提高系统性能,降低成本,延长电池使用寿命,并减少芯片面积, 完成更出色的设计。随着e d a 工具的推广和工艺水平的进步,已经可以将一个 复杂的系统微处理器、模拟i p 核、数字i p 核和存储器集成到一块芯片中,这t 可 以在极大程度上降低系统的复杂性。 在以上四类嵌入式处理器中,由于m c u 与工控机相比,具有体积小、成本 低、功耗低、可靠性商的优点,目前在工业控制中所用的大多数是m c u 。但是 m c u 的总线一般是4 位、8 位或者1 6 位的,而e m p u 则采用3 2 位或6 4 位的总 线,因此e m p u 采用的是比m c u 更为先进的技术,e m p u 必将取代m c u 成为 主流。而在e m p u 的几类内核架构中,a r m 内核占了3 2 位r 1 s c 微处理器市场 的7 5 以卜。 开发一个嵌入式系统,对嵌入式处理器的要求一般如下: ( 1 ) 技术因素。 低功耗,高速不是首要的; 外围设备接口丰富程度 ( 2 ) 非技术因素。 刚好适用、不盲目追求速度,求得芯片成本与功耗、功能的最佳匹 配; 供货稳定持久,不要经常升级换代、导致停产; 产品是系列化、家族化的。 因此,本设计所采用的是应用最广的a r m 7 内核的芯片作为系统核心。 1 2 2 嵌入式系统的软件概述 嵌入式系统由硬件和软件构成,离开了软件,硬件就无法工作。嵌入式软件 在嵌入式系统设计中占据了重要地位。嵌入式软件可以采用各个架构相应的汇编 语言,也可以用各种高级语言,如c c + + 、j a v a 等来编写。 总的来说,嵌入式系统的软件经历了从传统的简单的无操作系统的嵌入式软 件系统架构到嵌入式操作系统作为软件基础平台的软件系统架构的这样一个质 的变化。 这是由于随着嵌入式系统的越来越复杂,传统的脱离操作系统的软件设计己 嵌入式w e b s e r v e r 及其网络通信实现研究 经不能满足各个方面的需求,这也就导致了操作系统的出现。操作系统可以有效 的解决这个问题,它有以下i 个方面的优点: ( 1 ) 操作系统能有效管理越来越复杂的系统资源; ( 2 ) 操作系统能够把硬件虚拟化,使得开发人员从繁忙的驱动程序移植和维 护中解脱出来; ( 3 ) 操作系统能够提供库函数、驱动程序、工具集以及应j h j 程序。 在嵌入式操作系统( e m b e d d e do p e r a t i n gs y s t e m ) 出现之前,所有的系统初 始化和控制工作都南用户来完成。这样的传统的嵌入式软件系统主要有前后台系 统、中断驱动系统和基于定时器的巡回服务系统等h 1 。对丁这些传统的软件系统 架构,单片机设汁人员都非常熟悉。 而当嵌入式操作系统诞生后,因为许多工作都由操作系统完成,大大减轻了 用户的工作强度,而且大大增强了系统的可扩展性。 本文主要研究的是软件系统的设计实现问题,对于软件系统的方面将在下面 作较详细的说明。 1 3 本文的研究内容 基于目前嵌入式设备在各个领域,特别是工业控制领域的广泛使用,嵌入式 设备的远程监控成为一种迫切需求。而目,对于工业上的应用大多需要现场数据的 采集及现场控制,需要嵌入式系统作为前端模块系统| 5 i 。 因此本课题研究的是嵌入式系统的网络监控实现,即将嵌入式系统作为数据 采集和控制的前端设备,结合b s 和c s 这两种网络体系结构的优点,实现b s 和c s 结合的1 ) c ) 9 络体系架构,利用网络实现前端设备的远程监控。丰要研究的是 整个系统的软件实现。 具体工作主要包括以下几个方面: f 1 1 研究嵌入式操作系统和嵌入式w e b 服务器实现原理,为嵌入式系统构建 一个w e b 服务器。对嵌入式终端系统的远程的监控实现是通过将其直接接入 i n t e m e t i n t r a n e t 来实现的,即要为该嵌入式系统构建一个w e b 服务器,使得它可 以成为一个w e b 服务器进行与浏览器和客户软件交互,而不需要p c 机来作为交 互的媒介。 4 寰 aw e bs e r v e r 厦儿睫络通信实现研究 经不能满足各个力而的需求,这 ! 王就导致了操作系统的出现。操作系统可以有效 的解决这个问题,它有以下三个方面的优点: ( 1 ) 操作系统能有效管理越来越复杂的系统资源; ( 2 ) 操作系统能够把硬件虚拟化,使得丌发人员从繁忙的驱动程序移植和维 护中解脱出来; ( 3 ) 操作系统能够提供库函数、驱动程序、工具集以及应川程序。 舟嵌入式操作系统( e m b e d d e d o p e r a t i n g s y s t e m ) 出现之前,所有的系统初 始化和控制上作都由用户来完成。这样的传统的嵌入式软件系统主要有d 口后台系 统、巾断驱动系统和基十定时器的巡回服务系统等【4 j 。对于这些传统的软件系统 架构,单片机设计人员都非常熟悉。 而当嵌入式操作系统诞生后,冈为许多工作都由操作系统完成,大大减轻了 用户的工作强度,而且大大增强了系统的可扩展性。 本文主要研究的足软件系统的设计实现问题,对于软件系统的方面将在r 面 作较详细的说明。 1 3 本文的研究内容 基于目前嵌入式设备在各个领域,特别足工业控制领域的广泛使用,嵌入式 设备的远程监控成为一种迫切需求。而且对于t 业上的应用大多需要现场数掘的 采集及现场控制,需要嵌入式系统作为前端模块系统i ”。 因此本课题研究的足嵌入式系统的网络监控实现,即将嵌入式系统作为数据 采集和控制的| j i i 端设备,结合b t s 和c s 这两种网络体系结构的优点,实现b s 和c s 结合的网络体系架构,利用网络实现前端设备的远程监控。丰要研究的是 整个系统的软件实现, 具体工作主要包括以f 几个 面: f 1 1 研究嵌入式操作系统和嵌入式w e b 服务器实现原理,为 荻入式系统构建 一个w e b 服务器。刘嵌入式终端系统的远程的监控实现是通过将其直接接入 i n t e r n e v i n t r a n e t 来实现的,即要为该嵌入式系统构建一个w e b 服务器,使得它可 以成为一个w e b 服务器进行与浏览器和客户软件交互,而不需要p c 机来作为变 以成为一个w e b 服务器进行与浏览器和客户软件交互,而不需要p c 机来作为变 互的煤介。 嵌入式w e bs e r v e r 及其网络通信实现研究 f 2 ) 分析c g i 原理和驱动实现原理,设计嵌入式w e b 服务器应用程序。构建 好了w e b 服务器后,要为其研发应用程序,堆单的静念网页是满足不了服务器 和客户端交互的功能的,这就需要使用动态网页技术。 ( 3 ) 研究网络通信原理,利用v c 开发平台设计客户端软件梨构。s o c k e t 网络 通信原理是实现网络通信的基础,w i n d o w s 平台下的w i n s o c k 是类似于u n i x 下 的s o c k e t 。客户端软件的刚络通信功能实现就是利用w i n s o c k 接口来实现的。 嵌入式w e bs e r v e r 及其网络通信实现研究 第二章嵌入式w e b 服务器及其网络通信架构 对嵌入式系统实现网络监控是采用将嵌入式设备作为w e b 服务器直接接 i n t e m e t 的方式实现的。将嵌入式系统接入到i n t e r n e t 后,接下来就要考虑网络通 信的实现问题。这就涉及到了网络体系结构的选择问题。网络体系结构对整个网 络监控系统来况是处于基础地位的,合理选择网络体系结构( 在本文中也可理解 为客户服务器的软件体系结构) 对系统运行效率、系统应用的广泛性和可维护性 都有至关重要的作用。 2 1 网络体系结构分析 基于网络的工业监控系统的构成方式可以分为两大类:u s 结构模式和b s 结构模式。 c s 结构,即c l i e n t s e r v e r ( 客户机服务器) 结构,是大家熟知的软件系统 体系结构,该模式采用两层设计,即客户应用层和服务器层。客户应用层提供的 是管理人员与工业设备的交互通信界面,而服务器层则提供管理人员所需的数据 采集、存储和处理,这两层通过计算机网络相互连接”1 。 c s 结构的主要特点为: ( 1 ) 网络流量明显减少。 在c s 结构下,网络中传输的仪仪是客户的请求和返回结果,不需要将整个 数据库文件进行传输。这样做对于网络带宽不人的低速连接的客户端有相当大的 好处。 ( 2 ) 数据库工作平台与工作站无关。 由于数据库采用集中管理,客户通过s o l 语言访问数据库数据,因此客户1 i 限于一种平台,可以是u n i x 、l i n u x 、w i n d o w s 等。 ( 3 ) 数据库与客户程序无关。 矧样由于数据库采用集中管理,客户通过s q l 访问数据库数据,因此,当数 据库结构改变,数据库平台更换时,客户程序将不需要或只需要极少量的改变。 ( 4 ) 维护数据库的完整性。 数据库采用基于事务的r d b m s ,保留事务日志和数据库备份恢复机制。 嵌入式w e bs e r v e r 及其嘲络通信实现列究 除了上述几个特点外,c s 结构还有见外一个特点,也是它的典型的优点, 即交互性强。 b s 结构,即b r o w s e r s e r v e r ( 浏览器n 务器) 结构,该结构的系统只需安 装维护一个服务器,而客户端不需要安装专业的软硬件,只需要浏览器即可运行。 它是随着计算机网络技术的发展,将i n t e r n e t 技术应用于c s 结构上的种改 进。这种结构主要利用了不断成熟的w w w 浏览器技术,结合浏览器的多种s c r i p t 语言和a c t i v e x 技术,从而构造了一种全新的软件体系。 在采用b s 模式结构的系统中,用户通过客户端p c 机的浏览器向目标服务 器发出请求,服务器对浏览器的请求进行处理,将用户所需信息返回到浏览器。 而其余如数据请求、加工、结果返回以及动态网页生成、对数据库的访问和应用 程序的执行等工作全部由w e b 服务器完成。 b s 结构的主要特点为 ( 1 ) 共享性强、分布性强。b s 结构中的客户端可以处于i n t e r n e t 的任何个 端点,只要接入网络都可以访问权限允许内的相关服务器。 ( 2 ) 维护方便、开发简单。由于在b s 结构中,客户端只需要浏览器便可访 问w e b 服务器,所以以往在c s 结构中所需要的专用客户端软硬件不再需要单 独设计和维护,设计者只需要专注丁服务器端的设计,这就人大减少了维护和外 发时间。 ( 3 ) 总体拥有成本低。因为省去了客户端软硬件的开发工作,整个系统的成 本被大大降低。 分析以上两种模式可以发现c s 模式和b s 模式各有利弊。因此我们结合这 两种模式的优点,提出b s 和c s 结合的网络体系结构。 2 2 系统的网络通信架构实现 通过分析两种结构的优缺点,本系统的设计采用的网络体系结构是b s 和 c s 结合的结构。即在b s 监控模式的基础上同时设计了一个客户端软件,使客 户端可以几乎同时访问到多个嵌入式终端的信息。图2 1 具体表示了系统的通信 架构。 嵌入式w e bs e r v e r 及其网络通信实现研究 图2 1 系统网络体系结构模式 在这个架构中,将嵌入式设备接入网络,利用无所不在的互联网络,可以从 全球的任何一个角落实现对设备的监控;利用开放的t c p i p 网络通信协议,任 何的计算机都可以使用通用的网络浏览软件访问设备,不需要专门的计算机和专 门的软件;没备的信息通过网页的彤式体现。然而这种b s 模式有一个缺点,就 是用户使用浏览器一次只能监控一台嵌入式设备,就像我们访问w e b 网站一样, 一次只能访问一个网站。凼此结合目前通用计算机上的主流操作系统是w i n d o w 操作系统的情况,开发一个基于w i n d o w s 的监控软件,以弥补这个缺点。这也 就是我们使用b s 和c s 结合的模式的意义。从该架构的左边部分可以看出,客 户端软件可以实现对多台嵌入式w e b 服务器进行监控。 从该架构出发,本课题接下来的重点工作就是嵌入式w e b 服务器的实现和 客户端软件的实现。 8 嵌入式w e bs e l v e r 及其网络通信实现研究 第三章嵌入式w e b 服务器的软件实现 3 1 嵌入式w e b 服务器架构原理 对丁二整个嵌入式系统来说,包括硬件和软件部分【7 】。嵌入式w e b 服务器的实 现也不外如足。图3 1 以分层结构的方式具体表示出了嵌入式w e b 服务器的架 构。 i服务器应用程序 lw e b 服务器 l r 内霉 上 硬件 图3 1 嵌入式w e b 服务器实现原理 从图3 1 看出,嵌入式系统在硬件支持操作系统和网络功能的情况下,软件 各分层之间交互和依赖情况如下:在硬件平台上跑起嵌入式操作系统u c l i n u x , 在操作系统上移植w e b 服务器,再开发服务器端应用程序以使w e b 服务器真正能 实现与客户端交互,达到监控的目的。对底层硬件的接口操作是通过驱动来实现 的。即应用程序要通过驱动与硬件接口之间进行交互。 本文的研究是主要针对丁其软件部分的实现。在做软件实现前先介绍一下支 持软件的硬件平台。 3 2 嵌入式w e b 服务器硬件平台 一个完整的嵌入式w e b 服务统的硬件系统必须具备f l a s hr o m 存储器用 米存储实时操作系统的系统内核、t c p i p 协议栈、各种w e b 文档;d r a m 存储 器用来给系统运行时使用;以太网接口实现与i n t e r n e t i n t r a n e t 连接。 嵌入式w e bs e r v e f 发其嘲络通信实现研究 本设计系统的硬件大致分为四个模块,分别是处理器模块、存储模块、网络 部分和系统接口模块。 核心微处理部分的采用的是s a m s u n g 公司的a r m 7 t d m i 核心的 s 3 c 4 4 b o x 8 , 9 l 。存储模块的内存使用了a m d 公司的s d r a m h y 5 7 v 6 4 1 6 2 0 , 块存储设备为h y n i x 公_ i j :j 生产的n o rf l a s h - - a m 2 9 l v l 6 0 1 1 0 】。 以太网接 j 电路主要有m a c ( 媒体访问控制器) 和物理层接口两大部分构 成。由于a r m 控制器本身小带有以太刚络接口,因此需要外接以太网接r 丁芯片, 选用目前比较常见的r t l s 0 1 9 a s 芯片。该芯片是款高度集成的以太网控制器, 它为即插即用式的具有全双工和断电特性的n e 2 0 0 0 兼容网络适配器提供了简易 的解决方案。因为具有3 级断电控制特性,r t l 8 0 1 9 a s 成为设计网络设备的极 好选择。全双工功能可以实现与全双t 以太网交换机之间通过双绞线同时进行数 据的传输和接收。这种特性不仅提高了通道带宽,而且避免了由以太网 c s m a c d 协议造成的通道冲突特性而导致的性能下降。 系统接口模块主要包括模数转换器( 片内) ,数模转换器一公司的 t l c 5 6 2 8 ,继电器组和r s 2 3 2 收发器一m a x 2 3 2 。 3 3 嵌入式操作系统u c l i n u x 3 3 1u c l i n u x 系统介绍 嵌入式操作系统e o s ( e m b e d d e do p e r a t i n gs y s t e m ) 负责嵌入式系统的全部 软、硬件资源的分配、调度、控制、协调并发活动。它必须体现其所在系统的特 征,能够通过装卸某些模块来达到系统所要求的功能。随着i n t e r n e t 技术的发展、 信息家电的普及应用及e o s 的微型化和专业化,e o s 开始从单的弱功能向高 专业化的强功能方向发展。 l i n u x 是一种非常受欢迎的操作系统,它与u n i x 系统兼容,源代码开放。 它现在广泛应用于服务器领域【1 1 】,而更大的影响在于它正逐渐地应用于嵌入式 设备。u c l i n u x 正是在这种氛围下产生的。在u c l i n u x 这个英文单词中u 表示 m i c r o ,小的意思,c 表示c o n t r o l ,控制的意思,所以u c l i n u x 就是 m i c r o c o n t r o l l i n u x ,字面l 的理解就是“微控制领域中的l i n u x 系统”。u c l i n u x 1 0 嵌入式w e bs e r v e r 及jc 刚络通信实现研究 专门针对没有m m u 的c p u ,是由l i n u x 2 0 2 4 内核派生而来,沿袭了主流l i n u x 绝人部分特性,其内核结构与标准l i n u x 系统相似,如图3 2 所示。 图3 2u c i i n u x 内核体系结构 但与l i n u x 相比,主要有以下几大方面的区别。 ( 1 ) 内存管理 这部分是u c l i n u x 与标准l i n u x 区别最人的地方。 标准l i n u x 是针对有m m u 的处理器设计的。在这种处理器上,虚拟地址被 送到m m u ,把虚拟地址映射为物理地址。通过赋予每个任务不同的虚拟一物理 地址转换映射,支持不同任务之问的保护【”1 。 对于u c l i n u x 来说,其设计针对没有m m u 的处理器,即u c l i n u x 不能使用 处理器的虚拟内存管理技术。u c l i n u x 仍然采用存储器的分页管理,系统在启动 时把实际存储器进行分页。在加载应用程序时程序分页加载。但是由于没有 m m u 管理,所以实际上u c l i n u x 采用实存储器管理策略。这一点影响了系统丁 作的很多方面。u c l i n u x 系统对于内存的访问是直接的,所有程序中访问的地址 都是实际的物理地址。操作系统对内存空间没有保护,各个进程实际上共享一个 运行空间。一个进程在执行前,系统必须为进程分配足够的连续地址空间,然后 全部载入主存储器的连续空间中。 f 2 ) u c l i n u x 的内核加载方式【1 3 】 1 1 嵌入式w e bs e r v e r 及其刚络通信实现研究 u c l m u x 的内核有两种可选的运行方式:可以在f l a s h 上直接运行,也可以 加载到内存中运行。后者可以减少内存需要。 f l a s h 运行方式:把内核的可执行映像烧写到f l a s h 上,系统启动时从f l a s h 的某个地址开始逐句执行。这种方法实际上是很多嵌入式系统采用的方法。 内核加载方式:把内核的压缩文件存放在f l a s h 卜,系统启动时渎取压缩文 件在内存坐解压,然后开始执行,这种方式相对复杂一些,但是运行速度可能更 快( r a m 的存取速率要比f l a s h 高) 。同时这也是标准l i n u x 系统采用的启动方 式。 ( 3 ) u c l i n u x 的根( r o o t ) 文件系统 u c l i n u x 系统采用r o m f s 文件系统,这种文件系统相对于一般的e x t 2 文件系 统要求更少的空间。空间的节约来自于两个方面:首先内核支持r o m f s 文件系统 比支持e x t 2 文件系统需要更少的代码;其次r o m f s 文件系统相对简单,在建立文 件系统超级块( s u p e r b l o c k ) 需要更少的存储空叫。r o m f s 文件系统不支持动态 擦写保存,对于系统需要动态保存的数据采_ i _ | j 虚拟r a m 盘的方法进行处理( r a m 盘将采用e x t 2 文件系统) 。 ( 4 ) u c l i n u x 的应用程序库 u c l i n u x 小型化的另一个做法是重写了应用程序库,相对于越米越大且越来 越全的d i b c 库,u c l i b c 对l i b c 做了精简。 u c l i n u x 对用户程序采用静态链接的形式,这种做法会使应用程序变大,但是 基于内存管理的问题,也就是基于没有m m u 的特性,只能这样做,同时这种做 法也更接近于通常嵌入式系统的做法。 f 5 1 可执行文件格式 可执行文件格式与操作系统的支持有关,加载可执行文件由操作系统进行, 加载可执行文件的模块就称为可执行文件加载器。因此针对一种可执行文件,操 作系统必须具有这种格式的加载器。u c l i n u x 系统使用f l a t 可执行文件格式,g c c 的编泽器不能直接形成这种文件格式,但是可以形成c o f f 或e l f 格式的可执行文 件,这两种文件分别需要c o f f 2 f l t 或e l f 2 f l t 工具进行格式转化,形成f l a t 文件。 先解释几种可执行文件格式。 c o f f ( c o m m o no b j e c tf i l ef o r m a t ) :一种通用的对象文件格式; 1 2 嵌入式w e bs e r v e r 及其网络通信实现研究 e l f ( e x c u t i v el i n k e df i l e ) :一种为l i n u x 系统所采用的通用文件格式,支持 动态连接和重定位; f l a t :扁平格式。e l f 格式有很大的文件头,f l a t 文件对文件头和一些段信息 做了简化,可执行程序小。 经过如上所述的专为嵌入式系统的小型化所作的改动,形成了一个高度优化 的、代码紧凑的嵌入式l i n u x ,虽然它的体积很小,u c l i n u x 仍然保留了l i n u x 的大多数的优点:稳定、良好的移植性、优秀的网络功能、完备的对各种文件系 统的支持、以及标准丰富的a p i 。而更重要的一点是它是开放的源代码和免费的, 同其他的嵌入式操作系统相比有很大的优势。【1 4 l 它的主要特征如下: ( 1 ) 通用l i n u x a p i ( 2 ) 内核体积 a d d n e w 0 ; 设置字段值 m _ p s e t 一 u p d a t e ( ) ; 这个添加记录的过程是这样的:a d d n e w ( ) 函数将利用汜录集的宁段数据 成员准备了一个新的空记录,并上土该新记录将成为当前记录。调用a d d n e w ( ) 之后,就町以设置新记录的字段数据成员值。完成记录字段值设置后,最后需要 调用u p d a t e o i 踊l 数保存新证录。 ( 2 ) 删除记录 直接使用d e l e t e ( ) n i 数,并且在调用d e l e t e 0 n 数之后不需要调用u p d a t e 0 函数。 4 1 嵌入式w e bs e r v e r 及其网络通信实现研究 m _ p s e t 一 d e l e t e ( ) i f ( ! m _ p s e t - i s e o f 0 ) m _ p s e t m o v e n e x t 0 ; e l s e m _ p s e t 一 m o v e l a s t 0 ; 删除当前记录后,要重新定位指针。 ( 3 ) 修改记录 修改记录使用e d i t 0 函数。 m _ p s e t 一 e d j i ( ) ; 修改当前记录宁段值 mp s e t 一 u p d a t e ( ) ; 修改记录的过程如下:调用e d i t o l 函数后,设置要修改的记录的字段数据成 员值。完成记录字段值修改后,电必须调用u p d a t e 0 函数保存修改的记录。 这是因为a d d n e w 0 年l le d i t 0 都准备了一个编辑缓冲区。 ( 4 ) 撤消操作 如果用户选择了增加或者修改记录后,希望放弃当前操作,则可以在调用 u p d a t e 0 函数之前调用:c r e c o r d s e t :m o v e ( a f xm o v er e f r e s h l ;来撤消增 加或修改模式,并恢复枉增加或修改模式之前的当前记录。其中的参数 a f x _ m o v e _ r e f r e s h 的值为零。 f 5 1 查询记录 查询记录使用c r e c o r d s e t :o p e n ( ) 和c r e c o r d s e t :r e q u e r y ( ) 成员函 数。在使用c r e c o r d s e t 类对象之前,必须使用c r e c o r d s e t :o p e n ( ) 函数来获 得有效的记录集。 一旦已经使用过c r e c o r d s e t :o p e n ( ) 函数,再次查询时就可以应用c r e c o r d s e t : r e q u r y ( ) 函数。 在调用c r e c o r d s e t :o p e n ( ) 函数时,如果已经将一个已经打开的c d a t a b a s e 对象指针传给c r e c o r d s e t 类对象的n l 成员变量,则使用该数据库对_pdatabase 象建立o d b c 连接;否则如果mp d a t a b a s e 为空指针,就新建一个c d a t a b a s e 4 2 嵌入式w e bs e r v e r 及其网络通信实现研究 类对象并使其与缺省的数据源相连,然后进行c r e c o r d s e t 类对象的初始化。 查询过程中也可以利用c r e c o r d s e t 的成员变量ms t r f i l t e r 和ms t r s o r t 来执 行条件查询和结果排序。m s t r f i l t e r 为过滤字符串,存放着s q l 语句中w h e r e 后的条件宁符串;ms t r s o r t 为排序字符串,存放着s o l 语句中o r d e rb y 后 的字符串。 4 5 客户端界面设计理念 对用户和编程人员而言,m f c 框架中可见性最大的部分就是文档和视图。 在用应用程序框架开发应用程序的工作中,编写文档和视图类占了大部分。因此 要用m f c 应用程序框架开发程序,就要仔细理解其文档视图结构。 m f c 的文档视图结构是m f c 应用程序框架中一种相当重要的程序组织结 构,也可以说是这种应用程序框架的核心。 m f c 的文档视图结构机制把数据同它的显示以及用户对数据的操作分离开 来。所有对数据的修改由文档对象来完成;视图调用这个对象的方法来访问和更 新数据。 文档视图结构的核心是四个关键类: c d o c u m e n t 类:支持用于存储或控制程序数据的对象,并为开发人员定义的文档 类提供基本功能。 c v i e w ( 或它的诩多派生类之一) 类:为开发人员定义的视图类提供基本功能。 视图被附加到文档并在文档和用户之间充当中介:视图在屏幕卜呈现文档的图像 并将用户输入解释为对文档的操作。视图还为打印和打印预览呈现图像。 c f r a m e w n d 类:支持在文档的一个或多个视图周围提供框架的对象。 c d o c t e m p l a t e ( 或c s i n g l e d o c t e m p l a t e 或c m u l t i d o c t e m p l a t e ) 类:支持一个 对象,该对象协调给定类型的一个或多个现有文档并对创建该类型的正确文档、 视图和框架窗口对象进行管理。 这四个类的关系是:文档、与文档关联的视图以及给视图加框架的框架窗口 都用文档模板创建。文档模板负责创建和管理属于同一种文档类型的所有文档。 m f c 有两种类型的文档视图结构程序:堆文档接口( s d i ) 应用程序和多文 档接口( m d i ) 应用程序。 嵌入式w e bs e r v e r 及其网络通信实现研究 在单文档接口程序中,用户在同一时刻只能操作一个文档。像w i n d o w s 下的 n o t e p a d 记事本程序就是这样的例子。在这些应用程序巾,打开文档时会自动关 闭当前打丌的活动文档,若文档修改后尚未保存,会提示是否保存所做的修改。 因为一次只丌一个窗口,因此不象w o r d 那样需要一个窗口菜单。单文档应用 程序一般都提供一个f i l e 菜单,在该菜单卜- 有一组命令,用于新建文档( n e w ) 、 打丌已有文档( o p e n ) 、保存或重命名存盘文档等。 一个多文档接u 应用程序也能操作文档,而且它允许同时操作多个文档。 m i c r o s o f t w o r d 就是这样的例子。你可以打丌多个文件( 同时也就为每个文件打 丌一个窗口) ,可以通过切换活动窗口激活相应的文档进行编辑。多文档应用程 序也提供一个f i l e 菜单,用于新建、扣开、保存文档。与单文档应用程序不同的 是,它往往还提供一个c l o s e ( 关闭) 菜单项,用于关闭当前打开的文档。多文档 应用程序还提供一个窗口菜译,管理所有打开的子窗口,包括对子窗口的新建、 关闭、层叠、甲铺等。关c = f :| 一个窗【_ :l 时,窗u 内的文档也被自动关闭。 编程人员可以根据实际需要选择不同的文档视图结构模式来开发自己的程 序。 文档视图结构的提出,大大简化了多数应用程序的设计丌发过程。文档视图 结构带来的好处主要有: ( 1 ) 首先是将数据操作和数据显示、用户界面分离开。这是一种“分而治之” 的思想,这种思想使得模块划分更加合理、模块独立性更强,同时也简化了数据 操作和数据显示、用户界面工作。文档只负责数据管理,不涉及用户界面;视图 只负责数据输出与用户界面的交互,可以不考虑应用程序的数据是如何组织的, 甚至当文档中的数据结构发生变化时也不必改动视图的代码。 ( 2 ) m f c 存文档视图结构上提供了许多标准操作界面,包括新建文件、打开 文件、保存文件、打印等,减轻了用户的工作量。用户不必再书写这些重复的代 码,从而可以把更多的精力放到完成应用程序特定功能的代码上:主要是从数据 源中读取数据和显示。 一个且唯一的一个应用程序对象管理一个或多个文档模板,每个文档模板创 建和管理一个( s d i ) 或多个文档( b l d z ) 。用户通过包含在框架窗口中的视图来 浏览和操作文档中的数据。在s d i 应用程序中,以上对象关系如图4 2 所示。 嵌入式w e bs e r v e r 及其网络通信实现研究 图4 2 在s d i 程序中各对象的关系 应

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论