CN108289250A - 机顶盒操作系统管理方法及系统 - Google Patents
机顶盒操作系统管理方法及系统 Download PDFInfo
- Publication number
- CN108289250A CN108289250A CN201711446239.1A CN201711446239A CN108289250A CN 108289250 A CN108289250 A CN 108289250A CN 201711446239 A CN201711446239 A CN 201711446239A CN 108289250 A CN108289250 A CN 108289250A
- Authority
- CN
- China
- Prior art keywords
- operating system
- project
- public
- code areas
- public code
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及一种顶盒操作系统管理方法及系统,在SVN服务器上建立公用OS代码区,并建立和定义各个操作系统所需的函数、基本功能接口等等,将各个操作系统建立在公用OS代码区,当有项目需求时只需要提供所需操作系统类型传入公用OS代码区进行编译,将生成的库放到项目中,让项目直接链接操作系统进行编译生产最终的运行文件即可。多个项目可以公用操作系统,无需在每个项目中都存储一份操作系统,这就大大降低了服务器载荷,提高了编译运行速度,大大提高了操作系统的可复用性,降低了每个项目的工作量,提高工作效率,降低了成本。
Description
技术领域
本发明涉及数字电视领域,尤其涉及一种机顶盒操作系统管理方法及系统。
背景技术
机顶盒的操作系统(Operating System,简称OS)是管理和控制机顶盒硬件和软件资源的核心程序,是基本的系统软件,其他任何软件均需要操作系统的支持才能运行。
但是,目前机顶盒会用到的操作系统种类繁多,例如:Linux、UNIX、Ecos、Android、TDS、Montage等。随着机顶盒研发生产项目的增加,机顶盒会利用到的操作系统种类也会渐渐增多。对于每个项目,在每个项目中建立并编写所匹配的操作系统虽然是一种行之有效的方法,但这会造成SVN(Subversion的简称,是一个开放源代码的版本控制系统)服务器载荷较重,编译运行起来速度较慢的问题。
另外,并不是每个项目都会用不同的操作系统运行。比如:项目A用到的是Ecos操作系统,项目B也是Ecos操作系统,而此时项目A和项目B中均有一份相同的Ecos操作系统代码,这样操作系统的可复用性就大大降低,增大了每个项目的工作量,降低工作效率,增加了成本。
发明内容
有鉴于此,有必要针对上述操作系统管理造成SVN服务器压力较重、编译运行速度慢、复用性差的问题,提供一种机顶盒操作系统管理方法及系统。
本发明提供的一种机顶盒操作系统管理方法,包括如下步骤:
S10:在SVN服务器上,建立公用OS代码区;
S20:在公用OS代码区针对每个操作系统,建立不同的OS文件夹,每个OS文件夹用于实现对应操作系统的内部实现函数;
S30:在公用OS代码区建立公用头文件,公用头文件囊括每个操作系统的所有基本功能接口,供上层应用所使用;
S40:在公用OS代码区建立内部头文件,内部头文件供操作系统内部使用,定义回调函数结构体、利用宏定义及“##”连接符定义的有关调用不同操作系统的模板;
S50:在公用OS代码区建立一个囊括基本功能接口的实现文件;
S60:在有项目时,将项目所需的操作系统类型传入公用OS代码区,对公用OS代码区进行编译并生成所需操作系统的库,将编译生成的库放入项目中使用。
在其中的一个实施方式中,所述步骤S20还包括:对公用OS代码区中的操作系统建立OS目录清单。
在其中的一个实施方式中,所述步骤S50还包括:在实现文件中定义一个用于选择操作系统类型的全局变量。
在其中的一个实施方式中,所述步骤S60还包括:有多个项目时,获取项目所需的操作系统类型列表,若存在使用同一操作系统类型的项目,则将生成的所需操作系统的库放入同一类型的所有项目中。
本发明提供的一种机顶盒操作系统管理系统,包括:
公用代码区建立模块,在SVN服务器上,建立公用OS代码区;
OS文件夹建立模块,在公用OS代码区针对每个操作系统,建立不同的OS文件夹,每个OS文件夹用于实现对应操作系统的内部实现函数;
公用头文件建立模块,在公用OS代码区建立公用头文件,公用头文件囊括每个操作系统的所有基本功能接口,供上层应用所使用;
内部头文件建立模块,在公用OS代码区建立内部头文件,内部头文件供操作系统内部使用,定义回调函数结构体、利用宏定义及“##”连接符定义的有关调用不同操作系统的模板;
实现文件建立模块,在公用OS代码区建立一个囊括基本功能接口的实现文件;
编译生成模块,在有项目时,将项目所需的操作系统类型传入公用OS代码区,对公用OS代码区进行编译并生成所需操作系统的库,将编译生成的库放入项目中使用。
在其中的一个实施方式中,所述OS文件夹建立模块对公用OS代码区中的操作系统建立OS目录清单。
在其中的一个实施方式中,所述实现文件建立模块在实现文件中定义一个用于选择操作系统类型的全局变量。
在其中的一个实施方式中,有多个项目时,所述编译生成模块获取项目所需的操作系统类型列表,若存在使用同一操作系统类型的项目,则将生成的所需操作系统的库放入同一类型的所有项目中。
本发明机顶盒操作系统管理方法及系统,在SVN服务器上建立公用OS代码区,并建立和定义各个操作系统所需的函数、基本功能接口等等,将各个操作系统建立在公用OS代码区,当有项目需求时只需要提供所需操作系统类型传入公用OS代码区进行编译,将生成的库放到项目中,让项目直接链接操作系统进行编译生产最终的运行文件即可。多个项目可以公用操作系统,无需在每个项目中都存储一份操作系统,这就大大降低了服务器载荷,提高了编译运行速度,大大提高了操作系统的可复用性,降低了每个项目的工作量,提高工作效率,降低了成本。
附图说明
图1是一个实施例中的机顶盒操作系统管理方法的流程图;
图2是一个实施例中的机顶盒操作系统管理系统的结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
图1是一个实施例中的机顶盒操作系统管理方法的流程图,如图1所示该方法包括如下步骤:
S10:在SVN服务器上,建立公用OS代码区。
该步骤通过在SVN服务器上建立公用OS代码区的方式来替代每个项目中都需要包含操作系统的方式。首先在SVN服务器上划分建立可以放置各个操作系统的公用OS代码区,供各个项目公用。
S20:在公用OS代码区针对每个操作系统,建立不同的OS文件夹,每个OS文件夹用于实现对应操作系统的内部实现函数。
建立公用OS代码区后,在公用OS代码区建立对应每个操作系统的OS文件夹。为使得用户能够获知公用OS代码区中有哪些操作系统,该步骤还包括:对公用OS代码区中的操作系统建立OS目录清单,这样通过目录清单即可了解公用OS代码区中所有的操作系统,方便使用。
S30:在公用OS代码区建立公用头文件,公用头文件囊括每个操作系统的所有基本功能接口,供上层应用所使用。
公用头文件囊括每个操作系统的基本功能接口,是链接操作系统内部接口和外部使用的中间桥梁。
S40:在公用OS代码区建立内部头文件,内部头文件供操作系统内部使用,定义回调函数结构体、利用宏定义及“##”连接符定义的有关调用不同操作系统的模板。
S50:在公用OS代码区建立一个囊括基本功能接口的实现文件。
进一步的,在实现文件中定义一个用于选择操作系统类型的全局变量。全局变量将根据项目需求而被指定。假如一个项目使用的操作系统为Ecos,在编译时将通过定义全局变量指向Ecos,这样Ecos操作系统将被指定。
S60:在有项目时,将项目所需的操作系统类型传入公用OS代码区,对公用OS代码区进行编译并生成所需操作系统的库,将编译生成的库放入项目中使用。
在公用OS代码区定义存储好各个操作系统后,后期有项目需要使用时,首先获取项目所需的操作系统类型,然后将操作系统类型传入到公用OS代码区进行编译生成所需类型操作系统的库供项目使用,这样项目在进行时,只需要提供所需操作系统类型传入公用OS代码区进行编译,将生成的库放到项目中,让项目直接链接操作系统进行编译生产最终的运行文件即可。多个项目可以公用操作系统,无需在每个项目中都存储一份操作系统,这就大大降低了服务器载荷,提高了编译运行速度,大大提高了操作系统的可复用性,降低了每个项目的工作量,提高工作效率,降低了成本。
当有多个项目时,存在有多个项目都需要同一个操作系统的情况,则进一步的,该步骤还包括:有多个项目时,获取项目所需的操作系统类型列表,若存在使用同一操作系统类型的项目,则将生成的所需操作系统的库放入同一类型的所有项目中。
同时,本发明还提供一种机顶盒操作系统管理系统,如图2所示,该系统包括:
公用代码区建立模块100,在SVN服务器上,建立公用OS代码区。
该系统通过在SVN服务器上建立公用OS代码区的方式来替代每个项目中都需要包含操作系统的方式。首先公用代码区建立模块100在SVN服务器上划分建立可以放置各个操作系统的公用OS代码区,供各个项目公用。
OS文件夹建立模块200,在公用OS代码区针对每个操作系统,建立不同的OS文件夹,每个OS文件夹用于实现对应操作系统的内部实现函数。
建立公用OS代码区后,OS文件夹建立模块200在公用OS代码区建立对应每个操作系统的OS文件夹。为使得用户能够获知公用OS代码区中有哪些操作系统,OS文件夹建立模块200对公用OS代码区中的操作系统建立OS目录清单,这样通过目录清单即可了解公用OS代码区中所有操作系统,方便使用。
公用头文件建立模块300,在公用OS代码区建立公用头文件,公用头文件囊括每个操作系统的所有基本功能接口,供上层应用所使用。
公用头文件囊括每个操作系统的基本功能接口,是链接操作系统内部接口和外部使用的中间桥梁。
内部头文件建立模块400,在公用OS代码区建立内部头文件,内部头文件供操作系统内部使用,定义回调函数结构体、利用宏定义及“##”连接符定义的有关调用不同操作系统的模板。
实现文件建立模块500,在公用OS代码区建立一个囊括基本功能接口的实现文件。
进一步的,在实现文件中定义一个用于选择操作系统类型的全局变量。全局变量将根据项目需求而被指定。假如一个项目使用的操作系统为Ecos,在编译时将通过定义全局变量指向Ecos,这样Ecos操作系统将被指定。
编译生成模块600,在有项目时,将项目所需的操作系统类型传入公用OS代码区,对公用OS代码区进行编译并生成所需操作系统的库,将编译生成的库放入项目中使用。
在公用OS代码区定义存储好各个操作系统后,后期有项目需要使用时,编译生成模块600首先获取项目所需的操作系统类型,然后将操作系统类型传入到公用OS代码区进行编译生成所需类型操作系统的库供项目使用,这样项目在进行时,只需要提供所需操作系统类型传入公用OS代码区进行编译,将生成的库放到项目中,让项目直接链接操作系统进行编译生产最终的运行文件即可。多个项目可以公用操作系统,无需在每个项目中都存储一份操作系统,这就大大降低了服务器载荷,提高了编译运行速度,大大提高了操作系统的可复用性,降低了每个项目的工作量,提高工作效率,降低了成本。
当有多个项目时,存在有多个项目都需要同一个操作系统的情况,则进一步的,有多个项目时,编译生成模块600获取项目所需的操作系统类型列表,若存在使用同一操作系统类型的项目,则将生成的所需操作系统的库放入同一类型的所有项目中。
本发明机顶盒操作系统管理方法及系统,在SVN服务器上建立公用OS代码区,并建立和定义各个操作系统所需的函数、基本功能接口等等,将各个操作系统建立在公用OS代码区,当有项目需求时只需要提供所需操作系统类型传入公用OS代码区进行编译,将生成的库放到项目中,让项目直接链接操作系统进行编译生产最终的运行文件即可。多个项目可以公用操作系统,无需在每个项目中都存储一份操作系统,这就大大降低了服务器载荷,提高了编译运行速度,大大提高了操作系统的可复用性,降低了每个项目的工作量,提高工作效率,降低了成本。
以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种机顶盒操作系统管理方法,其特征在于,包括如下步骤:
S10:在SVN服务器上,建立公用OS代码区;
S20:在公用OS代码区针对每个操作系统,建立不同的OS文件夹,每个OS文件夹用于实现对应操作系统的内部实现函数;
S30:在公用OS代码区建立公用头文件,公用头文件囊括每个操作系统的所有基本功能接口,供上层应用所使用;
S40:在公用OS代码区建立内部头文件,内部头文件供操作系统内部使用,定义回调函数结构体、利用宏定义及“##”连接符定义的有关调用不同操作系统的模板;
S50:在公用OS代码区建立一个囊括基本功能接口的实现文件;
S60:在有项目时,将项目所需的操作系统类型传入公用OS代码区,对公用OS代码区进行编译并生成所需操作系统的库,将编译生成的库放入项目中使用。
2.根据权利要求1所述的机顶盒操作系统管理方法,其特征在于,所述步骤S20还包括:对公用OS代码区中的操作系统建立OS目录清单。
3.根据权利要求1所述的机顶盒操作系统管理方法,其特征在于,所述步骤S50还包括:在实现文件中定义一个用于选择操作系统类型的全局变量。
4.根据权利要求1所述的机顶盒操作系统管理方法,其特征在于,所述步骤S60还包括:有多个项目时,获取项目所需的操作系统类型列表,若存在使用同一操作系统类型的项目,则将生成的所需操作系统的库放入同一类型的所有项目中。
5.一种机顶盒操作系统管理系统,其特征在于,包括:
公用代码区建立模块,在SVN服务器上,建立公用OS代码区;
OS文件夹建立模块,在公用OS代码区针对每个操作系统,建立不同的OS文件夹,每个OS文件夹用于实现对应操作系统的内部实现函数;
公用头文件建立模块,在公用OS代码区建立公用头文件,公用头文件囊括每个操作系统的所有基本功能接口,供上层应用所使用;
内部头文件建立模块,在公用OS代码区建立内部头文件,内部头文件供操作系统内部使用,定义回调函数结构体、利用宏定义及“##”连接符定义的有关调用不同操作系统的模板;
实现文件建立模块,在公用OS代码区建立一个囊括基本功能接口的实现文件;
编译生成模块,在有项目时,将项目所需的操作系统类型传入公用OS代码区,对公用OS代码区进行编译并生成所需操作系统的库,将编译生成的库放入项目中使用。
6.根据权利要求5所述的机顶盒操作系统管理系统,其特征在于,所述OS文件夹建立模块对公用OS代码区中的操作系统建立OS目录清单。
7.根据权利要求5所述的机顶盒操作系统管理系统,其特征在于,所述实现文件建立模块在实现文件中定义一个用于选择操作系统类型的全局变量。
8.根据权利要求5所述的机顶盒操作系统管理系统,其特征在于,有多个项目时,所述编译生成模块获取项目所需的操作系统类型列表,若存在使用同一操作系统类型的项目,则将生成的所需操作系统的库放入同一类型的所有项目中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711446239.1A CN108289250B (zh) | 2017-12-27 | 2017-12-27 | 机顶盒操作系统管理方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711446239.1A CN108289250B (zh) | 2017-12-27 | 2017-12-27 | 机顶盒操作系统管理方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108289250A true CN108289250A (zh) | 2018-07-17 |
CN108289250B CN108289250B (zh) | 2020-05-12 |
Family
ID=62832307
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711446239.1A Active CN108289250B (zh) | 2017-12-27 | 2017-12-27 | 机顶盒操作系统管理方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108289250B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112130858A (zh) * | 2019-06-25 | 2020-12-25 | 深圳Tcl新技术有限公司 | 一种代码编译方法及编译服务器 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070294699A1 (en) * | 2006-06-16 | 2007-12-20 | Microsoft Corporation | Conditionally reserving resources in an operating system |
CN102685134A (zh) * | 2012-05-15 | 2012-09-19 | 深圳市中电电力技术股份有限公司 | 一种基于可扩展标记语言与动态库综合实现的通信管理机 |
CN102830981A (zh) * | 2012-09-12 | 2012-12-19 | 上海斐讯数据通信技术有限公司 | 一种用于嵌入式系统软件开发工具的实现方法 |
CN105095089A (zh) * | 2015-09-14 | 2015-11-25 | 北京金山安全软件有限公司 | 一种测试应用软件性能的方法及装置 |
CN105744366A (zh) * | 2016-02-22 | 2016-07-06 | 深圳创维数字技术有限公司 | 一种机顶盒的数据配置共享方法及系统 |
CN106095601A (zh) * | 2016-06-16 | 2016-11-09 | 广东工业大学 | 一种多进程并发解算差分服务器系统及其实现方法 |
CN106293701A (zh) * | 2016-07-26 | 2017-01-04 | 浪潮软件股份有限公司 | 基于云端服务器的多租户版本管理的应用引擎设计方法 |
CN106648589A (zh) * | 2016-09-28 | 2017-05-10 | 郑州云海信息技术有限公司 | 一种svn源代码的在线管理和共享查看的系统及方法 |
CN107424178A (zh) * | 2017-02-24 | 2017-12-01 | 西安电子科技大学 | 一种基于Cortex系列多核处理器的目标跟踪系统实现方法 |
-
2017
- 2017-12-27 CN CN201711446239.1A patent/CN108289250B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070294699A1 (en) * | 2006-06-16 | 2007-12-20 | Microsoft Corporation | Conditionally reserving resources in an operating system |
CN102685134A (zh) * | 2012-05-15 | 2012-09-19 | 深圳市中电电力技术股份有限公司 | 一种基于可扩展标记语言与动态库综合实现的通信管理机 |
CN102830981A (zh) * | 2012-09-12 | 2012-12-19 | 上海斐讯数据通信技术有限公司 | 一种用于嵌入式系统软件开发工具的实现方法 |
CN105095089A (zh) * | 2015-09-14 | 2015-11-25 | 北京金山安全软件有限公司 | 一种测试应用软件性能的方法及装置 |
CN105744366A (zh) * | 2016-02-22 | 2016-07-06 | 深圳创维数字技术有限公司 | 一种机顶盒的数据配置共享方法及系统 |
CN106095601A (zh) * | 2016-06-16 | 2016-11-09 | 广东工业大学 | 一种多进程并发解算差分服务器系统及其实现方法 |
CN106293701A (zh) * | 2016-07-26 | 2017-01-04 | 浪潮软件股份有限公司 | 基于云端服务器的多租户版本管理的应用引擎设计方法 |
CN106648589A (zh) * | 2016-09-28 | 2017-05-10 | 郑州云海信息技术有限公司 | 一种svn源代码的在线管理和共享查看的系统及方法 |
CN107424178A (zh) * | 2017-02-24 | 2017-12-01 | 西安电子科技大学 | 一种基于Cortex系列多核处理器的目标跟踪系统实现方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112130858A (zh) * | 2019-06-25 | 2020-12-25 | 深圳Tcl新技术有限公司 | 一种代码编译方法及编译服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN108289250B (zh) | 2020-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6968535B2 (en) | Service mapping method of enterprise application modeling and development for multi-tier service environments | |
Kramer et al. | View-centric engineering with synchronized heterogeneous models | |
CN109087004B (zh) | 一种基于领域模型的公共工作流引擎系统 | |
CN100489778C (zh) | Java程序可动态更新化实现方法 | |
CA2777443C (en) | Automated enterprise software development | |
US20100030783A1 (en) | Metadata Driven Mobile Business Objects | |
CN105487864A (zh) | 代码自动生成的方法和装置 | |
CN102314358B (zh) | 一种在云平台上以soa的方式部署常规应用的方法 | |
CN102413022A (zh) | 一种应用调试方法和系统 | |
CN103645908A (zh) | 网构软件全生命周期开发实现系统 | |
CN106547567A (zh) | 一种安卓系统中多业务下进程间通信系统及其实现方法 | |
CN102375743B (zh) | 一种基于模型和模板开发soa系统的方法 | |
CN111857801B (zh) | 一种移动应用的构建方法 | |
CN104272259A (zh) | 用于在事务中间件机器环境中支持基于版本的路由的系统和方法 | |
CN112035090B (zh) | 基于容器化技术实现智能合约智慧化管理系统及方法 | |
CN103164206A (zh) | 基于saas的软件定制系统 | |
CN109871241A (zh) | 一种跨环境应用服务器的配置方法 | |
CN104615489A (zh) | 一种多节点数据交互的实现方法 | |
US9141442B1 (en) | Automated connector creation for provisioning systems | |
CN1662011A (zh) | 使用元数据定义映射来构建组件应用程序的系统和方法 | |
CN105094984A (zh) | 资源调度的方法及系统 | |
CN113296742A (zh) | App数据处理方法、装置及移动终端 | |
CN102215264A (zh) | 一种支持多租户数据与服务定制运行的方法和装置 | |
CN108289250A (zh) | 机顶盒操作系统管理方法及系统 | |
EP2810179B1 (en) | Method and system for implementing a common data interface to web services |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |