机顶盒C语言开发

原创 2017年09月13日 20:35:25

ucos操作系统C语言开发


本人现就职于出口机顶盒公司,公司只做国外市场,产品主要有T2/S2 COMBO(T2_S2) -C -T等。机顶盒采用ucos操作系统,芯片来自于montage(上海澜起科技),相比于sunpluse ali等还处于兴起阶段。

ucos操作系统:
μC/OS II(Micro-Controller Operating System Two)是一个可以基于ROM运行的、可裁剪的、抢占式、实时多任务内核,具有高度可移植性,特别适合于微处理器控制器,适合很多商业操作系统性能相当的实时操作系统(RTOS)。为了提供最好的移植性能,μC/OS II最大程度上使用ANSI C语言进行开发,并且已经移植到近40多种处理器体系上,涵盖了从8位到64位各种CPU(包括DSP)。 μC/OS II可以简单的视为一个多任务调度器,在这个任务调度器之上完善并添加了和多任务操作系统相关的系统服务,如信号量、邮箱等。其主要特点有公开源代码,代码结构清晰、明了,注释详尽,组织有条理,可移植性好,可裁剪,可固化。

μC/OS-II可以大致分成核心、任务处理、时间处理、任务同步与通信,CPU的移植等5个部分。
1) 核心部分(OSCore.c)  是操作系统的处理核心,包括操作系统初始化、操作系统运行、中断进出的前导、时钟节拍、任务调度、事件处理等多部分。能够维持系统基本工作的部分都在这里。

2) 任务处理部分(OSTask.c)  任务处理部分中的内容都是与任务的操作密切相关的。包括任务的建立、删除、挂起、恢复等等。因为μC/OS-II是以任务为基本单位调度的,所以这部分内容也相当重要。

3) 时钟部分(OSTime.c)  μC/OS-II中的最小时钟单位是timetick(时钟节拍)。任务延时等操作是在这里完成的。

4) 任务同步和通信部分  为事件处理部分,包括信号量、邮箱、消息队列、事件标志等部分;主要用于任务间的互相联系和对临界资源的访问。
5) 与CPU的接口部分  是指μC/OS-II针对所使用的CPU的移植部分。由于μC/OS-II是一个通用性的操作系统,所以对于关键问题上的实现,还是需要根据具体CPU的具体内容和要求作相应的移植。这部分内容由于牵涉到SP等系统指针,所以通常用汇编语言编写。主要包括中断级任务切换的底层实
现、任务级任务切换的底层实现、时钟节拍的产生和处理、中断的相关处理部分等内容。(这些百度有微笑

目前在开发过程中有用到时钟部分 任务处理部分 通信部分底层的部分还没怎么接触。像sleep(200)就属于时钟部分延时操作,创建线程OS_creat_Task就属于任务处理部分,响应遥控器按键的消息就属于通信部分。


Android TV机顶盒开发简单介绍

最近接触了点Andiroid 机顶盒开发,简单的写一下,希望我的经验可以给各位带来一点经验。图片我就不上传的,很麻烦的! 首先是Android的apk如何安装到机顶盒上? 1. 将TV连接机...
  • qq_34475058
  • qq_34475058
  • 2016年12月15日 14:43
  • 4074

Android电视机(机顶盒)初次开发的一些经验分享

从之前的web后台开发转到Android应用开发,做的第一个正式项目就是公司一个App的电视机(机顶盒)版本Demo开发。经过四个人近两周加班加点的开发和测试,总算按时交付了任务。在后续开发还没有开始...
  • xiaoxiandroid
  • xiaoxiandroid
  • 2015年01月04日 12:28
  • 4216

机顶盒开发

  • 2016年01月31日 14:05
  • 212KB
  • 下载

机顶盒C语言开发

ucos操作系统C语言开发 本人现就职于出口机顶盒公司,公司只做国外市场,产品主要有T2/S2 COMBO(T2_S2) -C -T等。机顶盒采用ucos操作系统,芯片来自于montage(...
  • song_kernel
  • song_kernel
  • 2017年09月13日 20:35
  • 113

一步一步学习Android TV/盒子开发(一)

一步一步学习Android TV/盒子开发(一)写在前面的话:本人做了几年的机顶盒和Android电视上的应用开发,写这些文章只是为了让初次接触大屏开发的同学能够快速上手。TV端因为没有触控操作,只有...
  • u013321339
  • u013321339
  • 2017年03月16日 17:45
  • 331

Android之NDK开发(一)C语言初识

一、基本数据类型C的基本数据类型 char(1),int(4),short,long,float,double,signed,unsigned,and,void(1)java的基本类型 cha...
  • Jacky_Can
  • Jacky_Can
  • 2017年07月30日 23:17
  • 336

《C语言也能干大事》19节:C语言也能开发网站

在线观看地址: http://player.youku.com/player.php/sid/XOTUzMDI4MTY=/v.swf 课程全部资料见:http://www.rupeng.com/f...
  • cownew
  • cownew
  • 2009年05月31日 23:16
  • 9109

国产26种机顶盒升级程序包

  • 2010年03月03日 20:19
  • 2KB
  • 下载

Android TV开发经验总结---初识TV开发

之前一直从事手机APP应用开发,由于工作的需要转入TV电视端的开发,初次接触确实有点懵逼,在TV开发过程中的处理思路跟手机还是有很大区别的,接下来将讲述下TV开发过程的经验,与大家一起分享共同学习。 ...
  • Derbe
  • Derbe
  • 2016年07月18日 10:55
  • 14953

Linux下C语言开发(开篇hello world.)

从大学选择走嵌入式方向到现在从事嵌入式驱动工程师职位已一年多了,要能胜任嵌入式驱动工程师(当然,这里我所说的嵌入式驱动工程师并非指驱动开发,往往只需要根据自己的系统移植驱动以及编写简单的驱动)确实需要...
  • Thanksgining
  • Thanksgining
  • 2014年12月08日 10:29
  • 1145
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:机顶盒C语言开发
举报原因:
原因补充:

(最多只允许输入30个字)