IP2000网络终端系统方案概要设计(doc)

  文件类别:策划方案 方案报告

  文件格式:文件格式

  文件大小:292K

  下载次数:88

  所需积分:3点

  解压密码:qg68.cn

  下载地址:[下载地址]

清华大学卓越生产运营总监高级研修班

综合能力考核表详细内容

IP2000网络终端系统方案概要设计(doc)
IP2000是我们公司根据市场需求将开发的第二代网络终端,要求具有友好的类WINDOWS风 格的人机交互界面,在满足传统终端全部功能基础上,实现以太网联机功能(实现TELN ET远程登录协议)和支持多任务的一种更新换代产品。功能需求简述如下: o 提供类WINDOWS风格的用户界面,采用桌面图标的方式启动任务 o 实现TELNET远程登录协议 o 支持最多达8个任务同时运行 o 支持PS/2鼠标 o 支持网络版本更新 o 支持网关功能 o 支持本地和网络打印机 在此需求前提下,我们决定采用多任务嵌入式操作系统(EOS)+嵌入式GUI+终端仿真 的结构来实现需求,系统结构框图描述如下: [pic] 一、结构设计 在此系统框图的基础上,我们分别对各层次进行结构设计分析: 1、EOS设计 目前存在的嵌入式系统多不胜数,流行的有WinCE、PalmOS、Vxwork、pSOS、Neculeu s等多种系统。从目前嵌入式系统使用最广泛的信息家电行业和通讯行业分析,PalmOS和 WinCE、Vxwork是当前应用最广泛的三种: o Windows CE: Microsoft Windows CE是一个简洁的,高效率的多平台操作系统。它不是削减的Windows95版本,而是从 整体上为有限资源的平台设计的多线程,完整优先权,多任务的操作系统。它的模块 化设计允许它对于从掌上电脑到专用的工业控制器的用户电子设备进行定制,但Win CE是非开放性操作系统,使第三方很难实现产品的定制,嵌入式操作系统追求高效、 节能,而WinCE在这方面是笨拙的,它占用过多的内存,应用程序庞大,而且入门费 和许可费较高,使得整个产品的成本急剧上升。所以WinCE多用于从高档的产品。 o VxWorks: VxWorks所在的公司WindRiver兼并了pSOS的ISI公司,使得该公司现在有两大RTO S系统。VxWorks是目前嵌入式系统领域中使用最广泛,市场占有率最高的系统。它支 持多种处理器,如x86,i960,Sun Sparc,Motorola MC68xxx,MIPS RX000,POWER PC等等。使用的是和UNIX不兼容的环境,大多数的VxWorks API是专有的。采用GNU的编译和调试器。 o pSOS: ISI公司已经被WinRiver公司兼并,现在是属于WindRiver公司的产品。这个系统 是一个模块化,高性能的实时操作系统,专为嵌入式微处理器设计,提供一个完全多 任务环境,在定制的或是商业化的硬件上提供高性能和搞可靠性。可以让开发者将操 作系统的功能和内存需求定制成每一个应用所需的系统。开发者可以利用它来实现从 简单的单个独立设备到复杂的、网络化的多处理器系统。 o QNX: QNX是一个实时的,可扩充的操作系统,它遵循POSIX.1 (程序接口)和POSIX.2 (Shell和工具)、部分遵循POSIX.1b(实时扩展)。它提供了一个很小的微内核以及一 些可选的配合进程。其内核仅提供4种服务:进程调度、进程间通信、底层网络通信 和中断处理,其进程在独立的地址空间运行。所有其它OS服务,都实现为协作的用户 进程,因此QNX内核非常小巧(QNX4.x大约为12Kb)而且运行速度极快。这个灵活的结 构可以使用户根据实际的需求将系统配置成微小的嵌入式操作系统或是包括几百个处 理器的超级虚拟机操作系统。 o Palm OS: 3Com公司的Palm OS在PDA市场上占有很大的市场份额,它有开放的操作系统应用程序接口(API),开 发商可以根据需要自行开发所需要的应用程序。目前已经有总共3500多个应用程序可 以运行在Palm Pilot上,其中大部分应用程序均为其他厂商和个人所开发,使得Palm Pilot的功能得以不断增多。这些软件包括计算器、各种游戏、电子宠物、地理信息 等等。在开发环境方面,可以在Windows 95/98,Windows NT以及Macintosh下安装Palm Pilot Desktop;PlamPilot可以与流行的PC平台上的应用程序如Word,Excel等进行数据交 换。 o OS-9: Microwave的OS- 9是为微处理器的关键实时任务而设计的操作系统,广泛应用于高科技产品中,包括 消费电子产品,工业自动化,无线通讯产品,医疗仪器,数字电视/多媒体设备中。 它提供了很好的安全性和容错性。与其他的嵌入式系统相比,它的灵活性和可升级性 非常突出。 o LynxOS: Lynx Real-time Systems的LynxOS是一个分布式、嵌入式、可规模扩展的实时操作系统,它遵循POSI X.1a、POSIX.1b和POSIX.1c标准。LynxOS支持线程概念,提供256个全局用户线程优 先级;提供一些传统的,非实时系统的服务特征;包括基于调用需求的虚拟内存,一 个基于Motif的用户图形界面,与工业标准兼容的网络系统以及应用开发工具。 o Linux: Linux在嵌入式领域获得了飞速发展,目前正在开发的嵌入式系统中,49%的项目 选择Linux作为嵌入式操作系统。Linux之所以能在嵌入式系统市场上取得如此迅速的 发展,与它自身的优良特性有着不可分割的关系: 免费、开放源码,丰富的软件资源; 功能强大的内核,性能高效、稳定,多任务; 支持多种体系结构,如X86、ARM、MIPS、ALPHA、SPARC等; 完善的网络通信、图形、文件管理机制; 支持大量的周边硬件设备,驱动丰富; 大小、功能都可定制; 良好的开发环境,不断发展的开发工具集; 广泛的软件开发者的支持; 价格低廉。 从我们IP2000网络终端的需求和目前网络终端的市场来分析,目前我们公司已有的产品 IP1000采用Linux+Microwin这种方式已基本实现网络终端的需求,只是在界面的美观程 度和系统速度上比同类型的较为突出的实达netterm 860终端有所不足,但从系统的角度和开发进度以及成本的角度考虑,重新引进一种新的 嵌入式操作系统,以上介绍的几种EOS引进的门槛成本太高,且需要较长时间消化和熟悉 ,移植到我们的硬件平台也需要长时间的过程,综合考虑,我们还是决定在博利思提供 的Linux内核的基础上构筑我们的IP2000的OS,并准备对内核作如下改进: o 优化framebuffer代码,并在原有256色的基础上增加16色支持 o 修改ttyS0/1的设备驱动,解决目前IP1000存在的所有由于串口造成的问题 2、GUI设计 通过对目前几种基于Linux的嵌入式GUI的详细分析,较好的嵌入式GUI通常结合面 向对象方法采用多层独立设计,具有以下结构: o 设备相关层(driver) 在这一层的功能应该是将系统中与设备和操作系统平台的具体细节屏蔽起来。它利 用实际的设备驱动程序接口或者OS系统调用来与硬件设备交互,这些硬件设备主要 包括screen、mouse和keyboard等。我们使用设备对象(device object)的概念来描述一类设备,每一个对象描述了一类实际设备的属性和方法。 比如,screen设备对象就描述了screen设备的各种属性(屏幕尺寸、分辨率、像素 深度、像素格式、逻辑显存首地址等等)和基本方法(打开和关闭显示器、设置调 色板、返回屏幕属性、读写像素点等等)。对于同一类设备在不同驱动或者平台上 的具体情况则以设备对象实例来描述,比如screen类型的设备,我们可能让它工作 在Linux上,通过framebuffer 或者SVGALib驱动来操作它。他们的对象类相同,但是类的属性和方法的实现不一 样。中间层看到的只是该类设备的可选的对象实例,不用关心底层是如何操作的( 也就是对象的方法是怎样实现的)。最底层实际上是以设备对象的方式为中间层提 供了一个抽象的设备驱动界面。为了移植更容易,最底层应尽量简洁,只实现最基 本的设备功能函数。可以看到,当系统要移植到另外的平台上时,我们只要按照各 类设备对象的定义实现相对较少的函数就能建立新的设备对象实例并让中间层选择 他们就可以了。 o 设备无关层(engine) 这一层的功能是提供一个可以为各种应用层共享的与设备无关的核心图形引擎 ,其中的主要工作就是实现各种图形函数和输入设备的功能函数。对于中间层,它 向下看到的是各类设备对象,向上则是要提供一个抽象的核心图形界面,使得上面 的应用层对它所使用的到底是什么设备对象不用去理会。很显然,这一层根据不同 的设备和平台选择相应的设备对象实例来实现核心图形引擎。 由于每类设备的各个实例拥有同样的对象类型定义,所以中间层基于设备对象所实 现的功能是不会因为设备和平台的更改而受影响的。同时,中间层把消息驱动机制 、窗口管理机制交给应用层去完成,因此,对于各类型的应用层(Win32或者是X- Windows),中间层完成的功能都是通用的。 o 应用层(API) 这一层的功能是按照应用的具体要求为应用程序提供适当的应用层用户界面。 当应用程序不需要窗口系统的时候,用户自定义图形界面将十分简单,甚至可以 什么都不做而直接使用中间层提供的抽象核心界面。如果用户需要完善的多任务 窗口系统,比如是类Win32的,可以使用抽象核心界面来实现其应用程序编程接口 (API)以及窗口和消息机制等。 嵌入式GUI的体系结构的抽象参考模型如下: [pic] 目前采用此套结构的比较成熟的嵌入式GUI有Microwindow和MiniGUI两种GUI平台, Microwindow平台提出较早,并且经过多年的实践,已经比较成熟,目前国内的众多嵌入 式系统厂商包括联想、中软、红旗、桑夏科技、华恒等都采用Micorwindow作为基础开发 自己嵌入式GUI,但因为该项目缺少强有力的核心代码维护,代码质量参差不齐,因此在 另外一种GUI Qt/Embedded发布以来,它就长时间停留在了0.89Pre7版本,近几年来发展缓慢; MiniGUI项目起源于清华大学一个采用嵌入式Linux系统的工业控制系统项目,开发之初 借鉴了Microwindow的一些经验,但后来在发展速度上超过了Microwindow(MiniGUI已是 1.2.0版本,但Microwindow至今还是0.89pre版本),由于两者都是自由软件项目,开放 源代码和所有文档,可作为我们IP2000网络终端的GUI设计的参考选择,我们可以在其中 一种的基础上构筑我们自己的GUI平台。由于IP2000网络终端有多任务功能需求,因此我 们的GUI设计必须能够满足适应多任务的需求,通过对已有的两种GUI进行预研,我们发 现,GUI的多任务设计通常有两种方法: o 采用C/S结构 C/S结构是天然的多任务,在Sever端专门负责监控外部事件和随之的消息传递和分 发,Client完成消息的处理,各个Client之间互不干扰和影响。采用这种方法实现 多任务支持的有Microwindows的Nano- x方案和MiniGUI,但两种GUI实现的机制有很大差别,MicroWindows为了追求和X Window的兼容,采用了传统的基于Unix套接字通讯方式的C/S系统结构,这样大量的 数据在客户/内核/服务器之间传递,增加了系统负荷,占用了更多系统资源,降低 了系统的图形效率,并不适应于CPU速度较慢和系统资源有限的一般嵌入式场合。而 MiniGUi吸取了Microwindows的经验,采用了独特的体系结构,它的最初版本采用线 程机制来实现C/S结构,这样所有的应用程序都运行在同一个地址空间,大大提高了 程序之间的通信效率,但这种结构也导致了系统整体的脆弱,如果某个线程因为非 法的数据访问而终止运行,整个进程都将受到影响,不过,这种体系结构对关键的 实时控制系统来说,还是非常适合的,后期发展的MiniGUI- Lite版本则作了一些改进,在独立多进程和系统效率之间作了一些综合,采用套接 字和共享内存结合的方式支持多进程,并且提供前后台进程的切换,通过共享内存 机制提供全局资源的共享,以便减少实际内存的消耗,但好像MiniGUI的图形引擎不 是直接建立在内核framebuffer驱动上,而要由如Libggi或Svgalib等更高一级的图 形库支持,并且由于MiniGUI采用了独特的接口设计,其应用程序的可移植性很差, 而 MicroWindows的Nano-x方案则采用 X Window的兼容接口设计,大大方便了许多基于X Window的应用程序的移植和代码复用。 o 采用GUI上下文共享的方法 通常在单任务GUI基础上开发图形界面应用有如下图左边的系统流程, [pic] 应用程序通过调用GUI的API实现相应功能,而这些函数有自己的上下文,并且这些上下 文主要是通过数据空间的形式(data & BSS)来保持的。由于消息系统的同步功能,如果在同一进程中创建并使用多个窗口,也 不会造成GUI的冲突。例如,可以在一个进程中构造记事本和计算器,两个窗口都可以正 常地运行,因为任一时刻只有一个窗口接受消息队列的消息分发并处理(使用或改变GU I上下文)——这种同步是由消息系统来保证的。假如把GUI使用的上下文和应用其它部分 的上下文分开,一个应用完全是可以正常运行的。如果把这种方法应用到多任务的系统 ,如果各个任务独有自己的GUI上下文,则不能解决一些系统公共的设备例如鼠标、键盘 、输入法等事件的检测、转换、分派以及系统庞大等许多问...
IP2000网络终端系统方案概要设计(doc)
 

[下载声明]
1.本站的所有资料均为资料作者提供和网友推荐收集整理而来,仅供学习和研究交流使用。如有侵犯到您版权的,请来电指出,本站将立即改正。电话:010-82593357。
2、访问管理资源网的用户必须明白,本站对提供下载的学习资料等不拥有任何权利,版权归该下载资源的合法拥有者所有。
3、本站保证站内提供的所有可下载资源都是按“原样”提供,本站未做过任何改动;但本网站不保证本站提供的下载资源的准确性、安全性和完整性;同时本网站也不承担用户因使用这些下载资源对自己和他人造成任何形式的损失或伤害。
4、未经本网站的明确许可,任何人不得大量链接本站下载资源;不得复制或仿造本网站。本网站对其自行开发的或和他人共同开发的所有内容、技术手段和服务拥有全部知识产权,任何人不得侵害或破坏,也不得擅自使用。

 我要上传资料,请点我!
人才招聘 免责声明 常见问题 广告服务 联系方式 隐私保护 积分规则 关于我们 登陆帮助 友情链接
COPYRIGT @ 2001-2018 HTTP://WWW.QG68.CN INC. ALL RIGHTS RESERVED. 管理资源网 版权所有