CN112235639B - Extensible Linux smart television operating system easy to upgrade - Google Patents
Extensible Linux smart television operating system easy to upgrade Download PDFInfo
- Publication number
- CN112235639B CN112235639B CN202010896821.3A CN202010896821A CN112235639B CN 112235639 B CN112235639 B CN 112235639B CN 202010896821 A CN202010896821 A CN 202010896821A CN 112235639 B CN112235639 B CN 112235639B
- Authority
- CN
- China
- Prior art keywords
- plug
- library
- module
- function
- main program
- 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.)
- Active
Links
Images
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/40—Transformation of program code
- G06F8/41—Compilation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- 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
- H04N21/4431—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB characterized by the use of Application Program Interface [API] libraries
-
- 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/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/458—Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
- H04N21/4586—Content update operation triggered locally, e.g. by comparing the version of software modules in a DVB carousel to the version stored locally
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
The invention provides an easily-upgraded extensible Linux smart television operating system which comprises: the system comprises a UI, a main program, a plug-in set, a platform abstraction layer library and a basic platform function library; traversing module plug-in directories in the plug-in set by the main program, loading all module plug-ins contained in the module plug-in directories one by one in a dynamic loading mode, informing all supported module plug-ins to a UI by the main program after traversing is completed, and displaying a corresponding UI interface according to the currently supported module plug-ins after the UI receives the notice of the main program; each plug-in module calls a basic platform function library through a platform abstraction layer library to realize the calling of a function interface; the coupling of each layer of codes of the software is reduced, so that the software is more flexible and convenient to compile and run.
Description
Technical Field
The invention relates to an easily-upgraded extensible Linux smart television operating system.
Background
The existing television system at least comprises a plurality of functional modules, such as a network module, a bluetooth module, a television channel searching module, an intelligent APP functional module and the like, and a television manufacturer can often make a plurality of televisions with different models, such as: a television manufacturer may produce an intelligent television which comprises an intelligent APP function module, and another non-intelligent television which does not comprise the intelligent APP function module; another example is: a television manufacturer may produce a high-end brand product that includes a bluetooth module and another low-end brand product that does not include a bluetooth module. These brands may have most of the functional modules identical, but the individual functional modules differ. If the codes of each brand and model are written separately, a lot of repeated writing work is available, and if one module finds the BUG, the BUG of all the brand and model codes needs to be modified, so that the workload is huge, and the codes are not easy to maintain synchronously; in order to avoid the problem of the situation, some companies share a set of codes with common parts, and the difference part controls the compiled difference part codes through a compiling script; if one of the modules needs to be updated, then if all modules of the TV system are compiled together into one software, the whole TV system needs to be recompiled, and at the same time, the whole software needs to be upgraded. Many brands of TV systems support online network upgrading, and the size and the network speed of the system affect the upgrading speed. If the interface API of a functional module is called directly by the upper layer, the code of the calling part needs to be modified if the module needs to be removed.
The disadvantages of the method are:
1. all modules are integrated in one software, and when one module is changed, all modules need to be compiled, so that the compiling time is long;
2. if all the functional modules are compiled into a TV system, the upgrading needs to be carried out on the whole software, including upgrading modules without updates, the upgrading file is large, the upgrading time is long, and even the problem of unsuccessful upgrading can occur in a place with poor network;
3. the module can not be disassembled, and the software needs to be recompiled when the module is removed or added.
Disclosure of Invention
The technical problem to be solved by the invention is to provide an easily upgraded and extensible Linux smart television operating system, which reduces the coupling of each layer code of software and enables the software to be compiled and run more flexibly and conveniently.
The invention is realized by the following steps: an easily upgraded and extensible Linux smart television operating system, comprising: the system comprises a UI, a main program, a plug-in set, a platform abstraction layer library and a basic platform function library;
traversing module plug-in directories in the plug-in set by the main program, loading all module plug-ins contained in the module plug-in directories one by one in a dynamic loading mode, informing all supported module plug-ins to a UI by the main program after traversing is completed, and displaying a corresponding UI interface according to the currently supported module plug-ins after the UI receives the notice of the main program;
and each plug-in module calls a basic platform function library through the platform abstraction layer library to realize the calling of the function interface.
Further, the traversing of the module plug-in directory in the plug-in set by the main program, and the loading of all module plug-ins included in the module plug-in directory one by one in a dynamic loading manner further specifically includes: and traversing the module plug-in directory in the plug-in set by the main program, and loading all the module plug-ins contained in the module plug-in directory one by using a dlopenAPI of a dl library through a dynamic library loading mechanism.
Further, each module plug-in needs to implement 3 function methods, including: plug _ Load, plug _ Execute and Server _ PublishNotification _ Callback; the main program calls each module plug-in function method by using dlsymAPI loading of a dl library;
the main program acquires an interface command provided by each module plug-in by calling a Plugin _ Load function method;
the main program executes an interface command of a corresponding module plug-in by calling a plug-in _ Execute function method to acquire related data or Execute related function actions;
the main program registers a Callback interface function to the module plug-in by calling a Server _ Publish Notification _ Callback function method, so that the plug-in module informs the main program of relevant event notification through the registered interface Callback function.
Further, the platform abstraction layer library calls a basic platform function library provided by a board card manufacturer to realize the calling of the function interface.
Further, the module plug-in and platform abstraction layer library are in the form of a shared library or a dynamically linked library.
The invention has the following advantages:
1. the coupling of each layer of codes of the software is reduced, so that the software is more flexible and convenient to compile and run;
2. if only one functional module is updated, only the module plug-in is compiled, and the module plug-in is upgraded, so that the compiling time and the upgrading time are saved;
3. when the television system supports online network upgrade, if only individual function modules are upgraded, the method reduces the size of software to be downloaded, thus improving the success rate of upgrading the software in some areas with poor networks and being more convenient for updating the TV system;
4. the dependence and the coupling of the television system and the bottom layer board card are reduced, and the compatibility and the portability of software are improved; .
Drawings
The invention will be further described with reference to the following examples and figures.
FIG. 1 is a schematic block diagram of the system of the present invention;
FIG. 2 is a diagram of a plug-in directory of the plug-in set according to the present invention.
Detailed Description
As shown in fig. 1, the easily upgraded and extensible Linux smart television operating system of the present invention includes: the system comprises a UI, a main program, a plug-in set, a platform abstraction layer library and a basic platform function library;
traversing module plug-in directories in the plug-in set by the main program, loading all module plug-ins contained in the module plug-in directories one by using a dlopenAPI of a dl library through a dynamic library loading mechanism, informing all supported module plug-ins to a UI (user interface) by the main program after traversing is finished, and displaying a corresponding UI interface according to the currently supported module plug-ins after the UI receives an announcement of the main program;
each plug-in module calls a basic platform function library through a platform abstraction layer library to realize the calling of a function interface;
the platform abstraction layer library calls a basic platform function library provided by a board card manufacturer to realize the calling of a function interface, and the module plug-in and the platform abstraction layer library exist in a shared library or dynamic link library mode.
Each module plug-in needs to implement 3 function methods, including: plug _ Load, plug _ Execute and Server _ PublishNotification _ Callback; the main program calls each module plug-in function method by using dlsymAPI loading of a dl library;
the main program acquires an interface command provided by each module plug-in by calling a Plugin _ Load function method;
the main program executes an interface command of a corresponding module plug-in by calling a plug-in _ Execute function method to acquire related data or Execute related function actions;
the main program registers a Callback interface function to the module plug-in by calling a Server _ Publish Notification _ Callback function method, so that the plug-in module informs the main program of relevant event notification through the registered interface Callback function.
One specific embodiment of the present invention:
1. as shown in fig. 1, the present solution splits system software into five layers, i.e., a UI, a main program, a module plug-in, a platform abstraction layer library and a base platform function library (including hardware drivers);
2. the interactive communication mode of the UI and the main program can be in various modes according to different implementation modes of the UI, for example, if the UI is native UI written by using C/C + +, the API interface provided by the main program can be called by directly calling the API interface, the interactive mode of the UI and the main program is not the core key point of the invention, in the implementation process of the scheme, the UI uses WebUI, and the UI and the main program interact in a mode of carrying out http message communication by using websocket.
3. As shown in FIG. 2, the core focus of the present invention is the interactive design of three layers of main program, functional plug-in, and platform abstraction layer library. The method comprises the steps of firstly separating function modules from a main program, splitting each function module into an independent shared library (link dynamic library) (also called module plugins herein), placing all module plugins under a folder, such as rpc _ plugins, placing each module plugin under a directory independently, placing a Bluetooth module plugin under a bluetooth folder, placing a network plugin module under a network folder, and the like.
4. After the TV system is started, the main program traverses a module plug-in directory (rpc _ plugins), all module plug-ins contained in the directory are loaded one by using a dlopenAPI of a dl library through a dynamic library loading mechanism, after the traversal is completed, the main program informs all module plug-ins supported by the system to a UI, and the UI displays a corresponding UI interface according to the module plug-ins supported by the current system after receiving the notice of the main program.
5. Each module plug-in needs to implement 3 function methods: plug _ Load, plug _ Execute, server _ PublishNotification _ Callback. The main program calls these 3 function methods of each module plug-in using the dlsymAPI load of the dl library. The main program obtains the interface command provided by each module plug-in by calling the plug _ Load function method,
the main program executes the interface command of the corresponding module plug-in to acquire related data or Execute related function actions by calling a plug-in _ Execute function method, and registers a Callback interface function to the module plug-in by calling a Server _ publishing notification _ Callback function method, so that the plug-in module can inform the main program of related event notification through the registered interface Callback function.
6. And each module plug-in unit realizes the calling of the functional interface by directly calling the API interface of the platform abstraction layer library. The platform abstraction layer library is in the form of a shared library (dynamic link library) mainly because it needs to be called by multiple module plug-ins.
7. The platform abstraction layer library realizes the calling of the function interface by directly calling the basic platform function library, so that the addition of the platform abstraction layer library between the module plug-in layer and the basic platform function library is mainly used for abstracting the function of the platform and stripping the coupling relation between the plug-in module and the basic platform function library, so that the platform is changed more easily to improve the expansion compatibility. For example, if a card manufacturer of novatek currently provides a base platform function library, then a TV system manufacturer wants to replace a card with an mstar card, and only needs to replace the mstar card with an abstract platform layer library supporting the base platform function library provided by mstar, and the above layers do not need to be modified. Similarly, if the interface of the basic platform function library provided by the board card manufacturer is updated and adjusted, the function upgrade of the TV system can be realized without modifying the upper layer code only by updating and adjusting the abstract platform layer library.
Although specific embodiments of the invention have been described above, it will be understood by those skilled in the art that the specific embodiments described are illustrative only and are not limiting upon the scope of the invention, and that equivalent modifications and variations can be made by those skilled in the art without departing from the spirit of the invention, which is to be limited only by the appended claims.
Claims (3)
1. An extensible Linux smart television operating system easy to upgrade is characterized in that: the method comprises the following steps: the system comprises a UI, a main program, a plug-in set, a platform abstraction layer library and a basic platform function library;
traversing the module plug-in directories in the plug-in set by the main program, loading all module plug-ins contained in the module plug-in directories one by using a dlopen API of a dl library through a dynamic library loading mechanism, informing all supported module plug-ins to a UI (user interface) by the main program after traversing is completed, and displaying a corresponding UI interface according to the currently supported module plug-ins after the UI receives an announcement of the main program;
each plug-in module calls a basic platform function library through a platform abstraction layer library to realize the calling of a function interface; each of the module plug-ins needs to implement 3 function methods, including: plug _ Load, plug _ Execute and Server _ PublishNotification _ Callback; the main program loads and calls each module plug-in function method by using a dlsym API of a dl library;
the main program acquires an interface command provided by each module plug-in by calling a plug _ Load function method;
the main program executes an interface command of a corresponding module plug-in by calling a plug-in _ Execute function method to acquire related data or Execute related function actions;
the main program registers a Callback interface function to the module plug-in by calling a Server _ Publish Notification _ Callback function method, so that the plug-in module informs the main program of relevant event notification through the registered interface Callback function.
2. The easily upgradeable and extensible Linux smart television operating system of claim 1, wherein: and the platform abstraction layer library calls a basic platform function library provided by a board card manufacturer to realize the calling of the function interface.
3. The easily upgradeable and extensible Linux smart television operating system of claim 1, wherein: the module plug-in and the platform abstraction layer library exist in a shared library or a dynamic link library.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010896821.3A CN112235639B (en) | 2020-08-31 | 2020-08-31 | Extensible Linux smart television operating system easy to upgrade |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010896821.3A CN112235639B (en) | 2020-08-31 | 2020-08-31 | Extensible Linux smart television operating system easy to upgrade |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112235639A CN112235639A (en) | 2021-01-15 |
CN112235639B true CN112235639B (en) | 2023-04-14 |
Family
ID=74115765
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010896821.3A Active CN112235639B (en) | 2020-08-31 | 2020-08-31 | Extensible Linux smart television operating system easy to upgrade |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112235639B (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113867840B (en) * | 2021-09-29 | 2023-06-13 | 四川长虹电器股份有限公司 | Smart television WEB NATIVE plug-in frame and construction method |
CN114546538B (en) * | 2022-04-27 | 2022-08-02 | 季华实验室 | OSgi-based virtual simulation platform construction method |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103164239A (en) * | 2012-12-11 | 2013-06-19 | 广东电网公司电力科学研究院 | Plug-in implement method based on micro network visual platform |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7478395B2 (en) * | 2002-09-23 | 2009-01-13 | Telefonaktiebolaget L M Ericsson (Publ) | Middleware application message/event model |
CN102375729A (en) * | 2010-08-20 | 2012-03-14 | 希姆通信息技术(上海)有限公司 | Method for designing laminated framework based on ARENA platform high-rise service software |
CN101950255A (en) * | 2010-09-16 | 2011-01-19 | 深圳市迎风传讯科技有限公司 | Plug-in management method, plug-in manager and set top box |
CN104427388A (en) * | 2013-09-10 | 2015-03-18 | 国家广播电影电视总局广播科学研究院 | Operating system of intelligent television |
CN103645901A (en) * | 2013-12-16 | 2014-03-19 | 上海证券交易所 | Event chain based user interface plugin interaction method |
CN104333808B (en) * | 2014-11-14 | 2017-10-10 | 复旦大学 | For the universal player on Android and Linux smart television machine |
CN105183458A (en) * | 2015-08-14 | 2015-12-23 | 深圳联友科技有限公司 | Software platform development method and apparatus |
US10819581B2 (en) * | 2018-04-05 | 2020-10-27 | Servicenow, Inc. | Performance analytics content gallery |
CN110673844A (en) * | 2019-09-26 | 2020-01-10 | 苏州中科全象智能科技有限公司 | Image processing software development method and system |
-
2020
- 2020-08-31 CN CN202010896821.3A patent/CN112235639B/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103164239A (en) * | 2012-12-11 | 2013-06-19 | 广东电网公司电力科学研究院 | Plug-in implement method based on micro network visual platform |
Also Published As
Publication number | Publication date |
---|---|
CN112235639A (en) | 2021-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109451472B (en) | Dynamic management method for multiple Bluetooth chips on Android intelligent device | |
CN112235639B (en) | Extensible Linux smart television operating system easy to upgrade | |
CN102880498B (en) | The method of virtual SD card on the device of Android system | |
CN105159788B (en) | Method and system for dynamically sharing resources between Android applications | |
CN107305553B (en) | Method and system for dynamically jumping Hybrid page based on Hybrid App | |
CN107741844B (en) | Method and device for generating application installation package | |
CN103246529A (en) | Method, equipment and system for updating and pushing navigation bar | |
CN102830989B (en) | Reader provides method, reader and the terminal of service | |
CN106686200B (en) | Mobile application program updating method, mobile terminal and updating system | |
CN101667131A (en) | Mobile terminal and updating method of configuration information thereof | |
CN102833350A (en) | Processing method and processing device of WebApp updating | |
CN102750176A (en) | Software upgrading method and device for network TV | |
CN111459539A (en) | Continuous integration pipeline operation method and device based on mirror layering | |
CN105808278A (en) | Client version upgrading method and device | |
CN110968331A (en) | Method and device for running application program | |
CN108874412A (en) | For updating the method, apparatus, equipment and system of interface layout | |
CN103634393A (en) | IVR (interactive voice response) and realization method thereof | |
CN113360211A (en) | Loading display method based on control and related equipment | |
CN107193565B (en) | Method for developing native APP (application) across mobile terminals | |
CN113656005B (en) | Application component library construction method, application component configuration method and related devices | |
CN110413292B (en) | Light application installation method of application program, mobile terminal and storage medium | |
CN108733399A (en) | The method and apparatus that dynamic updates configuration data | |
CN101551746A (en) | UI interface configuration method of mobile communication terminal | |
CN112035129A (en) | Method and device for driver installation and upgrade and computer equipment | |
CN104581695A (en) | Mobile terminal configuration method and system |
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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20230403 Address after: Room 305, building 2, No. 15, Wanyuan street, Beijing Economic and Technological Development Zone, Daxing District, Beijing 102600 Applicant after: Beijing Zhixiang Information Technology Co.,Ltd. Address before: 350000 room 2-17z, building 1, No. 27 Huli Road, Mawei District, Fuzhou City, Fujian Province (in the pilot Free Trade Zone) Applicant before: Fuzhou Zhixiang Information Technology Co.,Ltd. |