您好,欢迎访问三七文档
VOD项目架构需求分析项目要求:设计一款基于具备嵌入式操作系统并具有良好图形用户界面的视频点播系统。产品功能:该系统能提供美观、友好的图形用户界面。用户可方便地实现音视频的本地播放、控制、选曲等操作,并能通过网络进行无线点播。硬件功能介绍:◆采用三星公司的S3C2440A-40,系统可稳定运行在405MHZ,主频最高可达530多MHz;◆64M字节的SDRAM,由两片K4S561632组成,工作在32位模式下;◆64M字节NANDFlash,采用的是K9F1208,可以兼容16M,32M或128M字节;◆10M以太网接口,采用的是CS8900Q3,带传输和连接指示灯;◆LCD和触摸屏接口;◆2个USBHOST,S3C2440内置的,符合USB1.1,其中一个USBHOST接口是复用的;◆一个USBDevice,S3C2440内置的,符合USB1.1;◆支持音频输入和音频输出,音频模块由S3C2440的IIS音频总线接口和UDA1341音频编码解码器组成,板上还集成了一个MIC,用于音频输入;◆2路UART串行口,波特率可高达115200bps,并具有RS232电平转换电路,其中一路为完整串口;◆SD卡接口,兼容SDMemoryCardProtocol1.0和SDIOCardProtocol1.0;◆Embedded-ICE(20脚标准JTAG)接口和并口式JTAG接口,支持ADS,SDT软件的下载◆和调试以及FLASH的烧写;◆串行EEPROM:AT24C024KbytesEEPROM,IIC接口;◆SPI接口;◆数字摄像头接口;◆蜂鸣器,4个LED灯;◆4个按键;◆开关电源,分布式电源供电;◆3V锂电池,提供RTC电源确定方案VODVideoOnDemand的缩写,即视频点播的意思。顾名思义,它是一种可以按用户需要点播节目的交互式视频系统,或者更广义一点讲,它可以为用户提供各种交互式信息服务。交互式视频点播系统一般由VOD前端处理系统、传输网络、用户机顶盒三个部分组成。系统选择嵌入式操作系统(EmbeddedOperatingSystem,EOS),是操作系统的一种,是在传统操作系统基础上加入符合嵌入式应用的元素发展而来,它负责嵌入式系统的全部软、硬件资源的分配、调度、控制和协调。嵌入式操作系统必须体现它所在系统的特征,能够通过加载或卸载某些模块来达到系统所要求的功能。嵌入式操作系统除了具备一般操作系统最基本的功能(如任务调度、同步机制、中断处理、文件处理等)外,还有以下的特点:系统选择(1)强稳定性。(2)较强的实时性:嵌入式操作系统一般实时性较强,可用于各种设备的控制中。(3)可伸缩性:开放、可伸缩的体系结构。(4)外设接口的统一性:提供各种设备驱动接口。目前国际上用于信息电器的嵌入式操作系统有数十种。国内常见的嵌入式操作系统有Linux、uClinux、WindowsCE、VxWorks、QNX、eCos、PalmOS、Symbian、uC/OS-Ⅱ等。其中嵌入式Linux和WindowsCE都是从台式机的操作系统演变而来。而VxWorks、QNX、eCos,、PalmOS、和Symbian等则是专门根据嵌入式系统应用需求设计的操作系统。系统选择嵌入式操作系统又可按实时性要求分为两大类:(1)实时操作系统(Real-TimeOperatingSystem,RTOS):是指操作系统本身要能在一个固定时限内对程序调用(或外部事件)做出正确的反应,也就是对时序与稳定性的要求十分严格。目前较为知名的实时操作系统有VxWorks、NucleusPlus、OS/9、VRTX、RT-Linux、BlueCatRT等。(2)通用性操作系统:也叫非实时性操作系统,这类操作系统在执行性能和反应速度方面,比起实时操作系统没有那么严格。目前较知名的通用型操作系统有WindowsCE、PalmOS、TimeSysLinux/GPL和BlueCatLinux等等。系统选择Vworks其价格昂贵。由于操作系统本身以及开发环境都是专有的,价格一般都比较高,通常需花费10万元人民币以上才能建起一个可用的开发环境,对每一个应用一般还要另外收取版税。一般不通供源代码,只提供二进制代码。由于它们都是专用操作系统,需要专门的技术人员掌握开发技术和维护,所以软件的开发和维护成本都非常高。支持的硬件数量有限。WindowsCE作为嵌入式操作系统有很多的缺陷:没有开放源代码,使应用开发人员很难实现产品的定制;在效率、功耗方面的表现并不出色,而且和Windows一样占用过的系统内存,运用程序庞大;版权许可费也是厂商不得不考虑的因素。Linux源代码公开,人们可以任意修改,以满足自己的应用。遵从GPL,无须为每例应用交纳许可证费。有大量的应用软件可用。其中大部分都遵从GPL,是开放源代码和免费的。可以稍加修改后应用于用户自己的系统。BootLoader就是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境。通常,BootLoader是严重地依赖于硬件而实现的,特别是在嵌入式世界。因此,在嵌入式世界里建立一个通用的BootLoader几乎是不可能的。尽管如此,我们仍然可以对BootLoader归纳出一些通用的概念来,以指导用户特定的BootLoader设计与实现。Uboot是德国DENX软件工程小组开发的、支持多种嵌入式CPU的bootloader程序。可引导的嵌入式操作系统:UBoot不仅仅支持嵌入式Linux系统的引导,当前,它还支持NetBSD,VxWorks,QNX,RTEMS,ARTOS,LynxOS嵌入式操作系统。支持的处理器:UBoot支持PowerPC、MIPS、x86、ARM、NIOS、XScale等诸多常用系列的处理器。特点:功能多、灵活性强、开发积极、开放源代码、属于“monitor”内核移植介绍•Linux内核移植就是从一种硬件平台转移到另一种硬件平台上运行;•由于硬件板的变化,内核移植是嵌入式linux系统中最常见的一项工作;•内核移植主要是修改跟硬件平台相关的代码,添加驱动,一般不涉及linux内核通用的程序;•Linux内核的重要特点是它的可移植性,支持硬件平台广泛,在大多数体系结构上都可以运行;•Linux-2.6内核已经对多种嵌入式ARM平台支持的很好,特别是s3c24xxCPU,移植的主要工作就只是添加驱动;根文件系统文件系统-在磁盘上组织文件的方法;不同的操作系统都有一种把数据保存为文件和目录的方法(不同文件系统);•如:windows操作系统中,不同的磁盘分区有独立的根目录,并且用唯一的驱动器标识符表示,比如C:\,D:\等;•Linux的文件系统组织和windows不同,它的文件系统是一个整体,把所以的文件系统结合成一个完整的统一体,这就是linux的根文件系统。当前嵌入式Linux在手机、PDA等手持信息设备领域的应用十分广泛。各种手持设备是否拥有图形用户界面GUI)己经成为其人机交互技术的关键体现,所以一个十分友好的图形用户界面(GUI)是必不可少的。嵌入式GUI是嵌入式系统广泛应用的人机交互接口。嵌入式系统有限的硬件资源要求嵌入式GUI必须简单、直观、可靠、占用资源小且反应快速。由于嵌入式系统硬件本身的多样性,嵌入式GUI应具备高度可移植性与可裁减性。Qtopia是著名的Qt库开发商Trolltech公司开发的面向嵌入式系统的Qt版本。因为Qt是KDE等项目使用的GUI支持库,许多基于Qt的XWindow程序因此可以非常方便地移植到Qtopia上。Qtopia采用framebuffer(帧缓冲)作为底层图形接口。同时,将外部输入设备抽象为keyboard和mouse输入事件。Qtopia的应用程序可以直接写内核缓冲帧,这避免开发者使用繁琐的XLIB/Server系统。。……等全Windows系列。目录服务器VOD客户端,主要采用QT图形界面。Mplayer播放器VOD架构前端系统传输网络用户端
本文标题:VOD项目架构
链接地址:https://www.777doc.com/doc-756629 .html