<dl id='wcc7s'></dl>
    1. <tr id='wcc7s'><strong id='wcc7s'></strong><small id='wcc7s'></small><button id='wcc7s'></button><li id='wcc7s'><noscript id='wcc7s'><big id='wcc7s'></big><dt id='wcc7s'></dt></noscript></li></tr><ol id='wcc7s'><table id='wcc7s'><blockquote id='wcc7s'><tbody id='wcc7s'></tbody></blockquote></table></ol><u id='wcc7s'></u><kbd id='wcc7s'><kbd id='wcc7s'></kbd></kbd>
    2. <acronym id='wcc7s'><em id='wcc7s'></em><td id='wcc7s'><div id='wcc7s'></div></td></acronym><address id='wcc7s'><big id='wcc7s'><big id='wcc7s'></big><legend id='wcc7s'></legend></big></address>
      <i id='wcc7s'></i>
      <fieldset id='wcc7s'></fieldset>
      1. <span id='wcc7s'></span>

        <ins id='wcc7s'></ins>

        <code id='wcc7s'><strong id='wcc7s'></strong></code>

        <i id='wcc7s'><div id='wcc7s'><ins id='wcc7s'></ins></div></i>

          STB 上Linux软件系统解决方案

          • 时间:
          • 浏览:2
          • 来源:124软件资讯网

            近年来  ,海内庞大的STB潜在市场  ,吸引了包罗芯片厂商、CA厂商、中心件供应商、机顶盒生产厂商等厂家的热情  ,围绕STB的竞争周全睁开 。

              机顶盒是一种专用装备  ,包罗软件模块和硬件模块 。软件模块包罗系统指导法式、嵌入式操作系统和应用软件  。硬件模块凭据CPU的差别  ,分为ASIC专用芯片 组、多媒体DSP、X86三种  。低档机顶盒一样平常接纳专用芯片组或多媒体DSP  ,只支持较少的几种媒体编解码尺度  ,营业扩展能力较弱  ,价钱比力低 。高等机顶 盒大多基于X86硬件  ,使用WinCE或Linux操作系统  ,甚至配有硬盘  ,与PC机很是相似  ,营业功效富厚  ,固然  ,价钱也不菲  。

              事实上  ,随着IPTV的兴起  ,对机顶盒的性能要求也越来越高  ,接纳X86硬件提升机顶盒的性能已是局势所趋  。可是  ,在提供更富厚营业功效的同时 ,大幅降低 机顶盒成本  ,也是机顶盒手艺生长的一个一定偏向  。本文将讲述基于兼容X86的STB上Linux软件系统解决方案  ,不涉及手艺开发细节 。主要将从以下方面 举行先容:

              一、硬件情况先容

              本机顶盒焦点部件包罗:STPC CPU  ,2M FLASH ,64M DOM和32M RAM  。

              其中FLASH中存放Bootloader代码  ,DOM中存放嵌入式Linux操作系统  。固然 ,机顶盒需要一些外围硬件电路 ,好比网络接口、遥控器接口等等 。

              二、Bootloader开发

              Bootloader是跟底层硬件关联性很是强的一层软件  ,也称为BSP  。开发职员需要相当熟悉硬件结构  ,一样平常来说  ,可以由硬件职员完成  ,也可以由软硬件 职员配合协助完成  。Bootloader除了初始化CPU ,RAM和基本的串口输出等功效外  ,还需要一些扩展功效  ,好比实现通过网络接口或者串口烧录操作 系统等  。u-boot是一个开源的面向多个目的平台(ppc, mips, arm, x86)的bootloader ,而且功效强盛  ,现在普遍应用在嵌入式系统开发中  ,只要凭据硬件平台做有限的修改  ,就可以顺遂实现 。本篇不讲述u- boot的详细移植历程  ,移植细节可参见《u-boot在PowerPC 860上的移植》一文  。

              三、嵌入式Linux淘汰与移植

              嵌入式Linux我们选用Peewee Linux举行淘汰 ,Peewee Linux的先容和基本设置可参考《Embedded Linux 嵌入式系统原理与实务》一书 。Peewee Linux的淘汰仅仅是通过设置界面选择某些组件  ,但需要注重的是要保留X窗口 ,浏览器需要X窗口支持才气启动图形化浏览器  。可是  ,通过Peewee Linux淘汰的Linux系统通常比力大  ,还需要做更进一步的淘汰  。一样平常来说一个不带X窗口的嵌入式Linux可以小到4M  ,带有X窗口的Linux也 可以在30M以下构建出来 。总之 ,淘汰后的Linux系统不能过于重大  ,否则加上浏览器法式极有可能超出DOM的64M空间 ,需要另加存储空间  ,增添成 本  。

              另一方面  ,在移植Linux到STB上后  ,由于STB上许多硬件在Linux下缺少驱动法式支持  ,不能事情  。为此  ,开发须要的驱动法式是必不行少的一步  。 在Linux下开发一个驱动是相当容易的  ,一是由于Linux驱动法式的架构相对牢固 ,二是有许多的源码可供参考 。难点往往是调试历程 ,也更花时间 ,而且 经常需要改动某些代码  ,同时  ,驱动开发历程中也经常需要示波器、逻辑剖析仪等装备的资助  。

              四、浏览器法式选择 (Embedded Mozilla)

              在Linux情况下有许多开源的浏览器 ,但综合比力来说  ,Mozilla功效强盛  ,支持的协议也相对比力多 ,图形界面富厚  。其次  ,Mozilla专门为嵌 入式系统开发了一个Embedded Mozilla项目  ,不加淘汰的话  ,编译效果或许20M多  ,用户可以对其举行淘汰  ,一样平常来说 ,淘汰到14M左右是很十拿九稳的事  。而且该项目是提供源码 的  ,用户可以凭据需要定制一些功效  ,好比用户界面等等  。

              详细可以参考主页:http://www.mozilla.org

              五、JVM移植

              针对现在许多网页是Java severlet的特点  ,使得浏览器能支持Java语言是一大趋势  ,Embedded Mozilla很容易实现对Java的支持 ,这也是为什么选择Embedded Mozilla的缘故原由之一  。只要以动态库的形式注册sun公司提供的JVM到该STB的系统库路径下  ,并在Embedded Mozilla中设置一下浏览器针对Java severlet的plug in功效 ,即可实现Embedded Mozilla对Java severlet的支持  。

              JVM下载参考:http://www.sun.com

              六、其它应用开发扩展(EPG实现及EasySoap使用)

              该部门功效主要是为解决STB向PVR/DVR的扩展  ,固然云云扩展后需要添加大容量存储装备  ,以存储数据  。EPG是PVR/DVR上不行或缺的软件之 一  ,预先提供节目给用户 ,用户通过预定的方式下“订单” ,PVR/DVR凭据用户的预定情形实现节目的自动录制功效 。现在EPG功效比力盛行的做法是:在 PC机上用Web Service实现服务端  ,在PVR/DVR上实现客户端 ,由于Web Service使用SOAP协议交互  。为此  ,EasySoap浮出水面 ,使用该开源项目  ,可以很利便开发出Linux上的EPG客户端  ,实现与Web Service的交互  。

              七、媒体播放软件实现

              该功效也可以为是STB的扩展  ,是PVR/DVR功效的一部门  。媒体播放器我们选用功效强盛的mplayer  ,这是Linux下又一个精彩的开源软件 ,支 持花样众多 ,包罗许多流媒体在内  ,移植mplayer也比力简朴 。参见网站:http://www.mplayerhq.hu/

              八、VOD实现

              VOD是STB交互功效的增强 ,由于我们已经移植了Embedded Mozilla以及mplayer ,VOD功效可以使用这两个软件顺遂实现 ,需要做的事情只是在Embedded Mozilla中怎样判断当前的毗连是一个媒体文件 ,以判断是否需要打开mplayer举行播放  。

              九、软件远程更新问题

              虽然现在用户要在STB装备上实现软件远程更新的需求并不突出  ,但软件远程更新问题是降低维护用度一个强有力的手段  。STB的远程软件更新可以接纳自动或 被动的方式 ,自动的方式就是由用户手动去下载最新软件  ,实现升级;被动方式就是由STB开发商凭据STB的信息自动提醒用户更新  ,类似于window 2000/XP的升级法式  。思量到STB的特殊性  ,好比升级历程中可能发生意外  ,掉线等情形 ,建议接纳由用户手动去下载软件举行升级的方式  。

              详细实现要领是:在STB上开发专门12下一页