KR100720164B1 - Implementation System and Application Method of Application Manager for Set Top Box - Google Patents
Implementation System and Application Method of Application Manager for Set Top Box Download PDFInfo
- Publication number
- KR100720164B1 KR100720164B1 KR1020050116772A KR20050116772A KR100720164B1 KR 100720164 B1 KR100720164 B1 KR 100720164B1 KR 1020050116772 A KR1020050116772 A KR 1020050116772A KR 20050116772 A KR20050116772 A KR 20050116772A KR 100720164 B1 KR100720164 B1 KR 100720164B1
- Authority
- KR
- South Korea
- Prior art keywords
- xml
- top box
- application manager
- story
- terminal
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Stored Programmes (AREA)
Abstract
셋톱박스용 애플리케이션 매니저의 구축시스템 및 그 구축방법이 개시된다. 본 발명에 따른 애플리케이션 매니저의 구축시스템은, 프로그래머 단말기에 XML스토리DB가 저장되고, 셋톱박스에는 각 응용프로그램들과 본 발명에 따른 애플리케이션 매니저가 저장되는 특징이 있다. 상기 애플리케이션 매니저는 그 실행에 있어 그 상황별로 상기 프로그래머 단말기에 저장되어 있는 XML스토리DB에 수록된 스토리에 따라 응용프로그램들을 제어 및 관리할 수 있도록 이루어지는 특징이 있다. 따라서 종래의 애플리케이션 매니저 내에 하드코드의 형태로 포함되어 있는 형태와는 달리, 데이터와 프로세스를 상호 분리시킨 상태에서 호환성과 변형성이 뛰어난 XML을 스크립트별로 스토리를 구성하여 이를 수정 및 보완 설계 및 구축하는 것만으로도 애플리케이션 매니저가 구동되도록 구현된 데에 그 특징이 있다. 본 발명에 따르면, 데이터의 설계와 수정만이 요구되므로 애플리케이션 매니저의 구축이 용이하고, 구축작업에 있어 히스토리정보를 저장 및 열람할 수 있도록 이루어지는 바, 버그의 발견이 용이함은 물론, 셋톱박스에 별도의 응용프로그램을 탑재할 시에도 이를 용이하게 수정 및 보완 설계할 수 있다는 등의 효과가 있다.Disclosed are a system for building an application manager for a set-top box and a method of building the same. In the system for building an application manager according to the present invention, the XML story DB is stored in the programmer terminal, and each application program and the application manager according to the present invention are stored in the set-top box. In the execution of the application manager, the application manager may control and manage the application programs according to the story contained in the XML story DB stored in the programmer terminal for each situation. Therefore, unlike the form included in the form of hard code in the conventional application manager, it is only to compose, modify, supplement and design the story by composing XML story with excellent compatibility and transformation with script and data separated from each other. It is also characterized by the fact that the application manager is implemented to run. According to the present invention, since only the design and modification of the data is required, the application manager can be easily constructed, and the history information can be stored and read in the construction work. Also, when the application program is loaded, it can be easily modified and supplemented.
셋톱박스(Set top box), 응용프로그램(Application program), 애플리케이션 매니저(Application program manager), XML(eXtensible Markup Language), 버그(Bug), 디버깅(Debugging), XML엔진(XML Parser engine), 파서(Parser), OS(Operation System) Set top box, Application program, Application program manager, XML (eXtensible Markup Language), Bug, Debugging, XML Parser engine, Parser Parser), OS (Operation System)
Description
도 1은, 종래의 셋톱박스용 애플리케이션 매니저의 구축작업흐름도.1 is a flowchart of a construction of a conventional application manager for a set-top box.
도 2는, 도 1의 애플리케이션 매니저 생성단계의 상세작업흐름도.2 is a detailed flowchart of an application manager generation step of FIG. 1;
도 3은, 셋톱박스의 메뉴맵의 일예를 도시한 예시도.3 is an exemplary diagram illustrating an example of a menu map of a set top box.
도 4는, 본 발명에 따른 셋톱박스용 애플리케이션 매니저의 구축시스템 구성도.4 is a block diagram of a construction system of an application manager for a set-top box according to the present invention.
도 5는, 도 4의 애플리케이션 매니저의 상세구성도.Fig. 5 is a detailed configuration diagram of the application manager of Fig. 4.
도 6은, 본 발명에 따른 셋톱박스용 애플리케이션 매니저의 구축작업흐름도.Figure 6 is a building flow diagram of the application manager for the set-top box according to the present invention.
도 7은, 본 발명에 따른 셋톱박스용 애플리케이션 매니저의 작동흐름도.7 is an operational flow diagram of an application manager for a set-top box according to the present invention.
도 8은, 본 발명에 따른 셋톱박스용 애플리케이션 매니저의 오류수정제어흐름도.8 is an error correction control flow diagram of an application manager for a set-top box according to the present invention.
<도면의 주요부위에 대한 도면부호의 설명><Description of reference numerals for major parts of the drawings>
100 : 프로그래머 단말기 110 : 중앙제어처리부100: programmer terminal 110: central control processing unit
120 : 메모리(RAM) 130 : 디스플레이어120: memory 130: display
140 : 인터페이스부 150 : 저장매체(데이터베이스부)140: interface unit 150: storage medium (database unit)
151 : XML스토리DB 152 : 히스토리DB151: XML Story DB 152: History DB
153 : OS소스DB153: OS source DB
200 : 셋톱박스 210 : 애플리케이션 매니저200: set-top box 210: application manager
211 : 시작모듈 212 : 종료모듈211: start module 212: end module
213 : XML엔진 로딩모듈 214 : XML파서모듈213: XML engine loading module 214: XML parser module
215 : 실행모듈 216 : 체크모듈215: execution module 216: check module
217 : 저장모듈 218 : 출력모듈217: storage module 218: output module
220 : 메모리(RAM : FIFO방식) 230 : 응용프로그램220: memory (RAM: FIFO method) 230: application program
본 발명은 셋톱박스의 애플리케이션 매니저의 설계 및 구축과 오류의 수정 등이 보다 용이할 수 있도록 구현된 셋톱박스용 애플리케이션 매니저의 구축시스템 및 구축방법에 관한 것이다.The present invention relates to a system and a method of building an application manager for a set-top box implemented to facilitate the design and construction of the set-top application manager and correction of errors.
주지된 바와 같이, 셋톱박스는, 일반적으로 주문형 비디오(VOD), 영상판 홈 쇼핑, 네트워크 게임 등 차세대 쌍방향멀티미디어통신 서비스인 이른바, 대화형 TV를 이용하는 데 필요한 '가정용 통신 단말기'를 의미한다.As is well known, a set-top box generally means a 'home communication terminal' required for using interactive TV, a next generation interactive multimedia communication service such as video on demand (VOD), image home shopping, and network game.
이는, 본시 'TV 위에 놓고 이용하는 상자'라는 뜻으로부터 유래되어 현재까지 널리 통용되고 있으며, '가입자 신호 변환장치'라고도 명명되기도 한다. 셋톱박 스의 역할과 기능으로서는, 쌍방향TV나 전화회사의 영상전송서비스(예컨대, 미국 지역 전화회사가 제공하는 '비디오 다이얼 톤') 등의 망과 접속하여 가정에서는 TV모니터 등에 연결되어 이용되기도 하며, 전화회사나 종합유선방송(CATV)국에 설치되어 있는 비디오서버 등과 통신, 영상신호의 수신ㆍ변환기능 등이 있으며, 전화와 PC통신 등 '데이터 통신 서비스'에도 동시에 이용할 수 있도록 전화 인터페이스나 개인용 컴퓨터(PC)와의 접속 인터페이스를 갖는 것 등 다양한 규격이 검토되고 있는 실정이다. It is derived from the meaning of 'the box used on the TV' and is widely used to date, and is also called a subscriber signal converter. The role and function of set-top box is to be connected to a network such as an interactive TV or a video transmission service of a telephone company (for example, 'video dial tone' provided by a local telephone company). It can communicate with video server installed in telephone company or CATV station and receive / convert video signal.It can be used for 'data communication service' such as telephone and PC communication at the same time. Various standards, such as having a connection interface with a computer (PC), are being examined.
이러한 역할과 기능을 갖는 셋톱박스는, 앞서 언급된 바와 같은 다양한 콘텐츠의 이용에 있어 각 기능별 콘텐츠의 이용이 가능하도록 하는 응용프로그램이 구비되어야만 하며, 이들 다수의 응용프로그램들을 적절히 제어 관리하기 위한 별도의 운영프로그램인 '애플리케이션 매니저'가 필연적으로 구비되어야만 한다.Set-top box having such a role and function should be provided with an application program that enables the use of the content of each function in the use of various contents as described above, and a separate to appropriately control and manage these multiple applications. An operating program 'Application Manager' must be inevitably provided.
상기 애플리케이션 매니저의 기능과 역할을 하나의 예를 들어 살펴보면, TV를 시청하고 있는 중에 온라인게임을 실행시키는 경우, 온라인게임(이하, "AP3")이 실행되기 위하여 반드시 인터넷접속용 응용프로그램(이하, "AP1")이 구동되어야만 하고, TV응용프로그램(이하, "AP2")이 종료되어야만 하며, 화면해상도를 640×480으로 변환되어야만 해당 온라인게임(이하, "AP3")의 실행이 가능하게 된다. 따라서 상기 애플리케이션 매니저는 사용자가 이용하고자 하는 서비스를 실행하기 위하여 다수의 응용프로그램들을 적절히 관리 및 제어를 실시하는 것으로 정의된다.Looking at the function and the role of the application manager as an example, when running the online game while watching TV, in order to run the online game (hereinafter referred to as "AP3"), the application for the Internet connection (hereinafter, "AP1") must be driven, TV application program (hereinafter, "AP2") must be terminated, and the screen resolution must be converted to 640 x 480 so that the online game (hereinafter, "AP3") can be executed. Therefore, the application manager is defined as appropriately managing and controlling a plurality of application programs to execute a service that a user wants to use.
전술한 역할과 기능을 수행하는 애플리케이션 매니저의 구축작업은 첨부된 도 1 및 도 2와 같은 절차에 따라 구축되었으며, 이러한 구축작업은 각 제어상황과 환경에 따라, 응용프로그램들의 시작과 종료 및 환경설정 등에 따른 기계어로 코딩(Coding)되었던 바, 실행스토리데이터와 실행모듈이 혼재되어 있는 상태로 제공되고 있는 실정이다.The construction work of the application manager that performs the above-described roles and functions was established according to the procedures shown in FIGS. 1 and 2. The construction work is started, terminated, and configured in accordance with each control situation and environment. As coded in a machine language according to the etc., the execution story data and the execution module are provided in a mixed state.
이와 같은 종래의 애플리케이션 매니저의 구축작업은 첨부된 도 1 및 도 2에서와 같이 이루어짐을 알 수 있다. 도 1은 종래의 셋톱박스용 애플리케이션 매니저의 구축작업흐름도(S1)이고, 도 2는 도 1의 애플리케이션 매니저 생성단계(S10)의 상세작업흐름도이고, 도 3은 셋톱박스의 메뉴맵의 일예를 도시한 예시도이다.It can be seen that the construction of the conventional application manager is performed as shown in FIGS. 1 and 2. 1 is a flowchart illustrating a construction of a conventional application manager for a set-top box (S1), FIG. 2 is a detailed flowchart of the application manager generating step (S10) of FIG. 1, and FIG. 3 is an example of a menu map of the set-top box. This is an example.
첨부된 도 1 및 도 2를 통해 종래의 애플리케이션 매니저의 설계 및 구축작업을 살펴보면, 프로그래머는 단말기를 통해 셋톱박스의 메뉴맵작성(S11)(도 3 참조) → 컴파일러생성(S12) → 응용프로그램 로딩(S13) → 메뉴맵에 따른 응용프로그램의 제어코드 입력/저장(S14)하는 애플리케이션 매니저 생성작업단계(S10)를 진행한다. 이후, 이와 같이 생성된 애플리케이션 매니저를 프로그래머 단말기와 통신 접속되어 있는 셋톱박스에 로딩하는 단계를 진행한다(S20). 그리고 셋톱박스를 조작하여 애플리케이션 매니저를 메뉴별 및 온/오프(ON/OFF)시켜 정상적인 작동이 이루어지는지의 여부를 테스트한다(S30). 이러한 테스트 결과로 오류정보(버그)가 발생되면, 발생된 버그가 어디에 위치하는가를 파악하는 검색단계(S40)와 디버깅하는 단계(S50)를 거치게 되는 데, 이는 반드시 프로그래머 단말기를 통해서만 구현 가능하다는 제약조건이 따른다. 따라서 프로그래머는 디버깅된 애플리케이션 매니저를 셋톱박스에 리로딩(Reloading) 및 확인테스트를 실시하며, 버그가 더 이상 발생되지 아니할 때까지 위와 같은 단계를 반복하게 된다.Looking at the design and construction of the conventional application manager through the accompanying Figures 1 and 2, the programmer can create a menu map of the set-top box via the terminal (S11) (see Figure 3) → create a compiler (S12) → application loading (S13) → The application manager generating operation step S10 of inputting / saving the control code of the application program according to the menu map (S14) is performed. Thereafter, the step of loading the generated application manager in the set-top box that is connected to the programmer terminal is connected (S20). In operation S30, the application manager is operated by the set top box and the application manager is turned on and off (ON / OFF). When the error information (bug) is generated as a result of such a test, a search step (S40) and debugging step (S50) to determine where the generated bug is located, which is a constraint that can only be implemented through the programmer terminal Conditions follow. Therefore, the programmer reloads and checks the debugged application manager on the set-top box and repeats the above steps until the bug no longer occurs.
따라서 종래의 애플리케이션 매니저 생성작업(S10)에 있어서도 많은 시간과 노력이 필요할 뿐만 아니라, 이러한 생성작업 중에 다른 응용프로그램을 셋톱박스에 부가할 경우 새로운 컴파일러를 생성하여 새롭게 작업을 실시할 수밖에 없었으므로, 프로그램의 변형성과 탄력성을 전혀 기대할 수 없었다는 등의 단점이 있었다. 그리고, 셋톱박스로부터 발생된 오류의 수정(디버깅)작업을 프로그래머 단말기에서 진행할 수밖에 없었으므로, 디버깅된 애플리케이션 매니저를 다시금 셋톱박스로 리로딩 후 실행테스트를 계속적으로 반복할 수밖에 없었다.Therefore, not only a lot of time and effort is required in the conventional application manager creation operation (S10), but also when a new application is added to the set-top box during such creation, a new compiler must be created to perform a new operation. There were disadvantages such as no expectation of deformability and elasticity. In addition, since the error correction (debugging) operation from the set-top box was inevitable at the programmer's terminal, the execution test was repeatedly repeated after reloading the debugged application manager to the set-top box again.
이러한 문제점들은 애플리케이션 매니저의 생성작업이 기계화 코딩작업으로 이루어지는 데에도 커다란 문제점이 있으나, 버그의 검색과 이를 효율적으로 디버깅할 수 없었다는 측면에서도 프로그램의 개발에 있어 요구되는 시간과 비용이 상승될 수밖에 없는 요인으로 작용하게 되었다.These problems have a big problem in that the application manager's creation is done by mechanized coding, but the time and cost required for program development are inevitably increased in terms of finding bugs and not being able to debug them efficiently. To act.
본 발명은, 전술한 문제점을 해소함으로서 제기된 요구조건을 만족시키고자 안출된 것으로서, 셋톱박스용 애플리케이션 매니저를 개발함에 있어서, 실행모듈기반의 애플리케이션 매니저와 응용프로그램들을 셋톱박스에 로드 시키고, 셋톱박스의 메뉴별 및 상황별 환경에서 응용프로그램의 실행환경이 규정된 실행제어스토리정보로 이루어진 XML기반의 스토리DB가 프로그래머 단말기에 저장된 상태에서, 프로그래머가 상기 XML스토리DB만을 가공 처리하는 것만으로도 애플리케이션 매니저를 용이하게 개발할 수 있도록 구현된 셋톱박스용 애플리케이션 매니저의 구축시스 템 및 구축방법을 제공함을 그 목적으로 한다.The present invention has been made to meet the requirements raised by solving the above-described problems, in developing an application manager for a set-top box, loads the execution module-based application manager and applications into the set-top box, the set-top box The application manager only needs to process the XML story DB while the XML-based story DB is stored in the programmer's terminal. Its purpose is to provide a system and method of building an application manager for set-top boxes that can be easily developed.
본 발명의 다른 목적은, 프로그래머 단말기에 XML스토리DB의 개발단계와 셋톱박스의 실행제어 및 버그의 발생과 디버깅단계 등의 모든 히스토리정보가 저장되는 히스토리DB가 더 구비되어, 애플리케이션 매니저의 개발단계별 그리고, 조치단계 등을 프로그래머가 용이하게 파악할 수 있도록 구현된 셋톱박스용 애플리케이션 매니저의 구축시스템을 제공함에 있다.Another object of the present invention, the programmer terminal further comprises a history DB for storing all the history information, such as the development stage of the XML story DB, the execution control of the set-top box and the occurrence and debugging of bugs, the application manager by development stage and It is to provide a system for building an application manager for a set-top box, which is implemented so that a programmer can easily grasp the steps, steps, and the like.
본 발명의 또 다른 목적은, 애플리케이션 매니저가 상기 히스토리DB에 저장된 각 단계별 히스토리정보를 실시간으로 프로그래머 단말기를 통해 화면 출력되도록 구현됨에 따라, 버그의 발견을 보다 용이할 수 있도록 구현되는 셋톱박스용 애플리케이션 매니저의 구축시스템을 제공함에 있다.Another object of the present invention, as the application manager is implemented to output the screen information through the programmer terminal in real time for each step stored in the history DB, the application manager for a set-top box is implemented to facilitate the discovery of bugs To provide a construction system of
본 발명의 또 다른 목적은, 애플리케이션 매니저에는, 상기 프로그래머 단말기에 구성된 OS소스DB로부터 XML엔진을 검출 및 로딩하여 프로그래머 단말기에 저장된 XML스토리DB를 검출 및 파싱(분석)하여 실행기계어로 변환할 수 있도록 구현되는 셋톱박스용 애플리케이션 매니저의 구축시스템을 제공함에 있다.Still another object of the present invention is to enable an application manager to detect and load an XML engine from an OS source DB configured in the programmer terminal to detect and parse (analyze) an XML story DB stored in the programmer terminal and convert it into an execution machine language. The present invention provides a system for building an application manager for a set top box.
본 발명의 또 다른 목적은, 오류수정(디버깅)이 모두 완료된 XML스토리DB의 개발이 완료되면, 이를 프로그래머 단말기로부터 셋톱박스의 애플리케이션 매니저에 이식함으로서 완성되도록 구현되는 셋톱박스용 애플리케이션 매니저의 구축방법을 제공함에 있다.It is still another object of the present invention to provide a method of building an application manager for a set-top box, which is implemented to be completed by porting an XML story DB where error correction (debugging) is completed to an application manager of a set-top box from a programmer terminal. In providing.
본 발명의 그 밖의 목적 및 특정한 장점들은 이하의 상세한 설명을 통하여 보다 구체화 될 것이다.Other objects and specific advantages of the invention will become more apparent from the following detailed description.
전술한 목적을 달성하기 위한 본 발명에 따른 셋톱박스용 애플리케이션 매니저의 구축시스템은,Building system of the application manager for a set-top box according to the present invention for achieving the above object,
셋톱박스의 제어스토리정보로 이루어지는 XML스토리DB가 구비되는 프로그래머 단말기; 상기 단말기와 통신 접속되어 있으며, 셋톱박스의 각 기능별로 구동되는 응용프로그램들과, 상기 단말기로부터 제어명령이 수신되면 상기 XML스토리DB로부터 해당 XML스크립트를 검출/분석/로딩하여 해당 응용프로그램의 실행환경이 최적화되도록 기능하는 애플리케이션 매니저가 구비되는 상기 셋톱박스; 를 포함하는 것으로, 상기 XML스토리DB가 상기 셋톱박스의 애플리케이션 매니저로부터 분리되어 상기 프로그래머 단말기에 저장되어 상기 애플리케이션 매니저의 설계와 구축작업 및 오류수정에 있어 상기 XML스토리DB만을 변경 설정하는 것만으로도 간단히 구현되도록 이루어진 것에 그 특징이 있다. 따라서 애플리케이션 매니저의 설계와 구축작업에 있어 프로그래머의 단말기에 XML스토리DB가 저장되고, 셋톱박스에는 다수의 응용프로그램과 상기 응용프로그램이 제어명령에 따라 적절히 구동되도록 제어하는 애플리케이션 매니저가 각각 구비되는 바, 데이터와 셋톱박스의 구동프로그램인 애플리케이션 매니저를 각각 분리시킴으로서, 응용프로그램의 추가, 데이터의 오류(버그) 수정 및, 새로운 셋톱박스의 애플리케이션 매니저의 환경설정을 보다 용이하게 할 수 있다는 등의 장점이 있는 바, 프로그램의 단순화, 개발시간의 단 축, 공동개발이 가능하다는 등의 이점이 있다.A programmer terminal having an XML story DB comprising control story information of the set-top box; Application programs which are connected to the terminal and are operated for each function of the set-top box, and when the control command is received from the terminal, detects / analyzes / loads the corresponding XML script from the XML story DB to execute the application environment. The set-top box having an application manager functioning to be optimized; Including, the XML story DB is separated from the application manager of the set-top box is stored in the programmer terminal simply by changing and setting only the XML story DB in the design and construction work and error correction of the application manager It is characterized by what is intended to be implemented. Therefore, in the design and construction of the application manager, the XML story DB is stored in the programmer's terminal, and the set-top box is provided with a plurality of applications and an application manager for controlling the applications to be properly executed according to control commands. By separating data and application manager, which is the driving program of the set-top box, it is possible to add an application program, correct data errors (bugs), and make configuration of the new set-top box's application manager easier. Bar simplifies the program, shortens development time, and enables joint development.
여기에서, 상기 단말기 또는 상기 셋톱박스에는, 상기 애플리케이션 매니저의 구축단계의 히스토리정보가 모두 저장되는 히스토리DB; 상기 단말기의 운영체계(Operation System, 예컨대 Window System 등)의 리소스정보가 저장되는 OS소스DB(153); 가 더 포함되기도 하는 바, 애플리케이션 매니저를 구동시키는 기초 데이터인 XML스토리정보를 구축하는 모든 단계 및 제어단계의 히스토리정보를 열람할 수 있도록 이루어져 개발단계와 그 문제점 등을 분석 및 파악할 수 있도록 구현될 수도 있다.Here, the terminal or the set-top box, history DB for storing all the history information of the step of building the application manager; An OS source DB 153 for storing resource information of an operating system (eg, a window system) of the terminal; In addition, it is possible to view the history information of all the steps to build and control the XML history information, which is the basic data driving the application manager can be implemented to analyze and understand the development stage and its problems, etc. have.
그리고 상기 애플리케이션 매니저는, 상기 단말기로부터 상기 셋톱박스에 시작명령이 수신되면, 상기 XML스토리DB로부터 XML시작스크립트를 검출하여 로딩하는 시작모듈; 상기 단말기로부터 상기 셋톱박스에 종료명령이 수신되면, 상기 XML스토리DB로부터 XML종료스크립트를 검출하여 실행중인 응용프로그램들을 상기 XML종료스크립트에 정해진 스토리에 의해 종료시킨 후, 상기 셋톱박스를 종료시키는 종료모듈; 을 포함하여 이루어지는 특징이 있는 바, 상기 애플리케이션 매니저는 상기 XML스토리DB를 토대로 하여 구동됨을 그 특징으로 한다.The application manager may further include: a start module configured to detect and load an XML start script from the XML story DB when a start command is received from the terminal by the set top box; When the termination command is received from the terminal to the set-top box, the XML termination DB detects an XML termination script and terminates the running application program by the story defined in the XML termination script, and then terminates the set-top box. ; The application manager is characterized in that it is driven based on the XML story DB.
또한, 상기 애플리케이션 매니저는, XML스크립트를 파싱(분석)하여 기계어로 변환하는 XML파서모듈; 상기 OS소스DB로부터 XML엔진을 검출하여 상기 XML파서모듈에 로딩하는 XML엔진 로딩모듈; 상기 XML파서모듈에 의해 변환된 기계어를 실행 제어하는 실행모듈; 을 더 포함하도록 설계됨이 바람직하다. 따라서 프로그래머 단말기의 운영시스템(Operation System; 예컨대, Window계열)으로부터 XML엔진을 불러들여 이를 셋톱박스에서 XML스크립트를 분석할 수 있도록 이루어지는 바, 프로그램의 운영체제가 보다 단순하게 이루어질 수 있으며, 그로 인하여 불필요한 파일을 형성시킬 필요가 요구되지 않는다는 등의 장점이 있다. 물론, 운영시스템을 차용하게 되므로, XML엔진의 업그레이드가 요구될 경우 프로그래머 단말기의 운영시스템만을 업그레이드하면 족하다는 등의 부가적인 이점이 있다. In addition, the application manager, an XML parser module for parsing (analyzing) the XML script and converts it into machine language; An XML engine loading module for detecting an XML engine from the OS source DB and loading the XML engine into the XML parser module; An execution module for executing execution control of the machine language converted by the XML parser module; It is preferably designed to further include. Therefore, the XML engine can be loaded from the operating system of the programmer's terminal (for example, Window) to analyze the XML script in the set-top box. Therefore, the operating system of the program can be made simpler, and thus unnecessary files are generated. There is an advantage such that no need to form a film is required. Of course, since the operating system is borrowed, there is an additional advantage such that it is sufficient to upgrade only the operating system of the programmer terminal when the upgrade of the XML engine is required.
더 나아가, 상기 애플리케이션 매니저는, 실행 중이거나 실행 대기 중인 제어명령이 있는가를 검출하여 실행 중이거나 대기 중인 제어명령이 순차적으로 실행 제어되도록 관리하는 체크모듈; 모든 제어단계 및 애플리케이션 매니저의 구축단계 및 수정단계 등을 상기 히스토리DB에 저장하는 저장모듈; 상기 히스토리DB의 내용을 상기 단말기의 디스플레이어을 통해 출력하도록 기능하는 출력모듈; 중에서 상기 저장모듈을 포함한 하나 또는 그 이상의 모듈로 이루어질 수도 있는 바, 애플리케이션 매니저가 합리적이고도 체계적이고 적절히 제어되도록 기능하도록 구현되는 한편, 상기 히스토리DB에 모든 과정이 저장될 수 있도록 하여 앞서 언급되었던 바(오류의 진단 등)와 같은 작용효과가 달성될 수 있도록 구현되는 장점이 있다.Furthermore, the application manager may include a check module that detects whether there is a control command that is being executed or is waiting to be executed and manages execution or control of the control command being executed or waiting in sequence; A storage module for storing all the control steps, the construction steps of the application manager, and the modification steps in the history DB; An output module for outputting the contents of the history DB through the displayer of the terminal; It may be composed of one or more modules including the storage module among the above, the application manager is implemented to function reasonably, systematically and properly controlled, while the above-mentioned to ensure that all the process can be stored in the history DB There is an advantage that can be implemented such that an effect such as (diagnosis of error) can be achieved.
한편, 상기 셋톱박스에는, 제어명령이 순차적으로 임시저장 되었다가 입력된 순서 또는 기능별 우선순위에 따라 순차적으로 처리되도록 기능하는 선입선출방식(First Input First Output)의 메모리(RAM)가 더 포함됨이 바람직하다.On the other hand, the set-top box, it is preferable that the control command is temporarily stored in the first order (First Input First Output) memory (RAM) to function to be sequentially processed according to the input order or the function priority. Do.
이와 같은 시스템적 특징을 갖는 본 발명에 따른 셋톱박스용 애플리케이션 매니저의 구축방법으로서는, As a construction method of the application manager for a set-top box according to the present invention having such a system feature,
ⅰ) 셋톱박스의 응용프로그램들의 제어스토리를 XML스크립트형식으로 작성하여 프로그래머 단말기(100)측 XML스토리DB에 저장하는 단계;Iii) creating a control story of the application programs of the set-top box in an XML script format and storing it in an XML story DB on the
ⅱ) 프로그래머 단말기를 통해 셋톱박스에 제어명령이 수신되면, 수신된 제어명령과 부합하는 해당 XML스크립트를 상기와 같이 작성된 XML스토리DB로부터 검출/로딩/분석/실행 제어하고 상기한 모든 과정이 히스토리DB에 저장됨과 동시에, 상기 단말기를 통해 화면 출력되는 단계; 로 이루어짐이 바람직하다. Ii) When a control command is received through the programmer terminal on the set-top box, the corresponding XML script corresponding to the received control command is detected / loaded / analyzed / executed from the XML story DB created as described above, and all the above processes are performed through the history DB. At the same time as being stored in the screen output through the terminal; It is preferably made of.
여기에서, 상기 ⅱ)단계에서는, 해당 XML스크립트의 실행결과 오류(버그)가 존재할 경우 상기 단말기를 통해 출력된 히스토리정보를 파악한 다음, 상기 해당 XML스크립트를 오류수정(디버깅) 및 상기 XML스토리DB에 갱신 저장됨과 동시에, 상기한 오류수정과정이 상기 히스토리DB에 저장되는 바, 오류의 발견이 비교적 용이하며, 이에 따라 디버깅작업이 대단히 용이하게 되는 이점이 있게 되는 것이다.Here, in step ii), if there is an error (bug) of execution result of the XML script, the history information output through the terminal is grasped, and then the XML script is corrected to an error (debugging) and the XML story DB. At the same time as the update is stored, the error correction process is stored in the history DB, it is relatively easy to find the error, and thus there is an advantage that the debugging operation is very easy.
바람직하기로는, 상기 ⅱ)단계에서는, 해당 XML스크립트의 실행결과 오류(버그)가 존재할 경우 상기 셋톱박스의 구동이 정지됨과 동시에, 상기 오류정보가 있는 해당 XML스크립트를 상기 단말기에 표시 출력되도록 구현되는 바, 프로그래머에 의하지 않고도 실행 오류 및 그 부분의 XML스크립트를 표시출력하게 되므로, 버그의 발견과 이에 대한 디버깅작업이 더욱 더 용이할 수 있도록 이루어짐이 더욱 바람직하다.Preferably, in the step ii), if there is an error (bug) as a result of the execution of the XML script, the driving of the set-top box is stopped and the corresponding XML script with the error information is displayed and displayed on the terminal. It is more preferable that the error detection and the part of the XML script are displayed and outputted without the programmer so that the bug can be easily found and debugged.
마지막으로, 상기 ⅱ)단계의 다음으로는, 상기 XML스토리DB에 오류정보가 더 이상 발견되지 않을 경우, 상기 단말기에 저장되어 있는 상기 XML스토리DB를 상 기 셋톱박스에 로딩하는 단계; 가 추가로 진행됨으로서, 셋톱박스용 애플리케이션 매니저의 구축작업이 완료된다. 물론, 위와 같은 로딩작업이 완료된 이후에 최종테스트를 거쳐 셋톱박스의 구동이 원활하게 이루어지는가를 재평가 및 검증하는 절차를 거치게 됨으로서 모든 과정이 완료된다. Finally, after step ii), if the error information is no longer found in the XML story DB, loading the XML story DB stored in the terminal into the set top box; By further proceeding, the construction of the application manager for the set-top box is completed. Of course, after the above loading operation is completed, all the processes are completed by re-evaluating and verifying whether the set-top box is operated smoothly after the final test.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 살펴보도록 한다. 단. 제시된 실시예들은 예시적인 목적일 뿐 본 발명의 기술적 사상이 이들 실시예들로부터 한정되는 것은 아니다. 또한, 기재의 편의상 동일한 작용효과를 갖는 구성물에 대하여는 동일한 도면부호를 부여하여 설명하기로 한다.Hereinafter, a preferred embodiment of the present invention will be described with reference to the accompanying drawings. only. The presented embodiments are for illustrative purposes only and the technical spirit of the present invention is not limited to these embodiments. In addition, for the convenience of the description of the components having the same working effect will be described with the same reference numerals.
도 4는 본 발명에 따른 셋톱박스용 애플리케이션 매니저의 구축시스템의 구성도이다.4 is a configuration diagram of a construction system of an application manager for a set-top box according to the present invention.
도 4를 살펴보면, 본 발명에 따른 셋톱박스용 애플리케이션 매니저의 구축시스템(1)은, 주지된 통신수단에 의해 프로그래머 단말기(100)와 셋톱박스(200)가 상호 통신 접속된 상태가 설정된다. 이때, 상기 프로그래머 단말기(100)의 저장매체에는 데이터베이스(150)가 구축된 상태인데, 상기 데이터베이스(150)는 XML스토리DB(151)와 히스토리DB(152) 및 PC로 구현되는 프로그래머의 단말기(100)를 구동시키는 OS(예컨대, Window계열)의 소스DB(153)가 상기 데이터베이스(150)를 구성하도록 설정되어 있다. 이 밖에도, 중앙제어처리부(CPU, 110)를 중심으로 하여 메모리(RAM, 120)와 모니터로 구현되는 디스플레이어(130) 및 상기 셋톱박스(200)와의 데 이터의 송수신환경 등이 가능하게 하는 인터페이스부(140)가 구비되는 특징이 있다.Referring to FIG. 4, in the construction system 1 of the set-top box application manager according to the present invention, a state in which the
한편, 상기 셋톱박스(200)에는, 각 기능별로 구동되는 응용프로그램들(230)과, 임시저장매체인 선입선출방식(First Input First Output)의 메모리(RAM, 220) 및, 상기 인터페이스부(140)와 상호 데이터의 교류는 물론, 상기 데이터베이스(150)로부터 해당 DB를 검출 및 로딩하여 사용할 수 있도록 하는 모듈기반의 애플리케이션 매니저(210)가 구비되는 특징이 있다.On the other hand, the set-
상기 XML스토리DB(151)는, 본 발명만의 특징적인 부분에 해당하는 것으로서, 셋톱박스(200)의 메뉴별 또는 제어환경별로 응용프로그램이 적절히 제어 및 관리되도록 하는 제어스토리정보가 응용프로그램의 실행순서와 실행조건 및 실행환경 등이 XML스크립트로서 정의되게 된다. 상기 XML스크립트정보는, 앞서 예시한 바와 같이, TV를 시청하고 있는 중에 온라인게임을 실행시키는 경우, 온라인게임(이하, "AP3")이 실행되기 위하여 반드시 인터넷접속용 응용프로그램(이하, "AP1")이 구동되어야만 하고, TV응용프로그램(이하, "AP2")이 종료되어야만 하며, 화면해상도를 640×480으로 변환하는 등의 일련의 과정이 각 상황별 및 선택된 메뉴별 제어환경과 조건에 따라 응용프로그램의 제어스토리가 정의된다.The XML story DB 151 corresponds to a characteristic part of the present invention, and the control story information for appropriately controlling and managing the application program for each menu or control environment of the set-
이와 같이 작성된 XML스토리DB(151)는, 그 자체만으로는 셋톱박스(200)를 제어 관리할 수 없다. 따라서 상기 XML스토리DB(151) 중에서 제어명령과 실행환경에 따른 XML스크립트를 상기 XML스토리DB(151)로부터 검출하고, 검출된 해당 XML스크립트를 기계어로 파싱(분석 및 변환)하여 셋톱박스에서 실행되는 것을 주된 기능으 로 하는 애플리케이션 매니저(200)가 필요시 되는 것이다.The XML story DB 151 thus created cannot control and manage the set
본 발명에 따른 애플리케이션 매니저(200)는 종래와는 달리, 내부에 코드화된 데이터가 구비되지 아니한 실행모듈구조를 갖는 데에 그 특징이 있으며, 도 5에서와 같은 구성을 갖는다.The
도 5를 살펴보면, 본 발명에 따른 애플리케이션 매니저(200)는, 시작모듈(211), 종료모듈(212), XML엔진 로딩모듈(213), XML파서모듈(214), 실행모듈(215), 체크모듈(216), 저장모듈(217), 출력모듈(218)로 이루어짐을 알 수 있다.Referring to Figure 5, the
상기 시작모듈(211)은 상기 프로그래머 단말기(100)로부터 상기 셋톱박스(200)에 시작명령이 수신될 경우 상기 XML스토리DB(151)로부터 XML시작스크립트를 검출하여 셋톱박스(200)에 로딩하도록 기능한다. 따라서 상기 시작모듈(211)은 셋톱박스(200)가 턴온되어 있는 상태에서 상기 프로그래머 단말기(100)로부터 구동 개시명령을 수신하게 되면 상기 셋톱박스(200)를 구동개시하기 위한 제어스토리로 이루어진 XML시작스크립트를 검출 및 셋톱박스(200)로 로딩하게 되는 것이다.The
이와 같이, 셋톱박스(200)에 XML시작스크립트가 로딩 되기에 앞서 상기 XML엔진 로딩모듈(213)이 상기 프로그래머 단말기(100)의 데이터베이스(150)에 저장되어 있는 OS소스DB(153)로부터 XML엔진을 검출하여 상기 XML파서모듈(214)에 로딩하게 되는 데, 상기 XML파서모듈(214)이 전술한 바와 같이 로딩된 XML시작스크립트를 파싱(분석)하여 기계어로 변환을 실시하게 된다. 이와 같이 기계어로 변환된 XML시작스크립트의 스토리에 따라, 상기 실행모듈(215)이 해당 응용프로그램(230)이 실행 제어되도록 기능하게 되는 것이다.As such, before the XML start script is loaded into the set-
그리고 상기 체크모듈(216)은 실행 중이거나 실행 대기 중인 제어명령이 있는가를 검출하여 실행 중이거나 대기 중인 제어명령이 순차적으로 실행 제어되도록 관리하는 바, 이는 상기 셋톱박스(200) 내에 구비된 메모리(RAM, 220)에 임시 저장되어 있는 제어정보를 토대로 하여 그 기능을 수행하게 된다.In addition, the
또한, 상기 저장모듈(217)은 이와 같은 모든 제어단계 및 애플리케이션 매니저(210)의 구축단계 및 수정단계 등을 상기 히스토리DB(152)에 저장하도록 기능하게 되며, 상기 출력모듈(218)은 상기 히스토리DB(152)의 내용을 상기 단말기(100)의 디스플레이어(130)을 통해 화면 출력이 실시될 수 있도록 기능하게 된다. 따라서 XML스토리DB(151)의 구축단계는 물론, 애플리케이션 매니저(210)의 구동 제어상황 등을 실시간으로 확인할 수 있어 버그(오류)발생을 용이하게 확인하여 이에 대한 디버깅(오류수정)작업이 그 즉시 이루어질 수 있도록 하는 개발환경을 제공하게 되는 것이다.In addition, the
한편, 상기 종료모듈(212)은, 상기 단말기(100)로부터 상기 셋톱박스(200)에 종료명령이 수신되면, 상기 XML스토리DB(151)로부터 XML종료스크립트를 검출하여 실행중인 응용프로그램들을 상기 XML종료스크립트에 정해진 스토리에 의해 종료시킨 후, 상기 셋톱박스(200)를 종료시키게 되는 역할을 실시하게 된다.On the other hand, when the
이와 같은 역할과 기능 및 구성을 갖는 애플리케이션 매니저(210)는 본 발명인에 의해 별도로 개발된 것으로 독자적인 제어명령어가 부여된 상태에서 사용자화가 가능할 수 있도록 구현된 것이며, 그 제어명령어의 일부로서의 예시는 하기의 표 1에서와 같다.The
예시된 표 1에서와 같이, 본 발명에 따른 애플리케이션 매니저(210)는 고유의 제어명령어가 부여된 상태에서 전술한 바와 같이 제어모듈의 형태로 정의된 것으로, 프로그래머는 상기 XML스토리DB(151)를 작성할 시에 표 1에 예시된 바와 같이 상기 애플리케이션 매니저(210)가 해독할 수 있는 언어를 사용하여 작성하게 되고, 이는 애플리케이션 매니저(210)가 앞서 설명한 바와 같은 각 단계에 따라 해당 모듈이 관여함으로서 셋톱박스(200)의 제어가 가능하도록 구현되는 것이다.As shown in Table 1, the
이와 같은 구성적 특징과 체계를 갖는 셋톱박스용 애플리케이션 매니저의 구축방법으로서는, 도 6에서와 같이 이루어진다. 도 6은 본 발명에 따른 셋톱박스용 애플리케이션 매니저의 구축작업흐름도(S100)로서, 도 6을 살펴보면, 본 발명에 따른 셋톱박스용 애플리케이션 매니저(210)의 구축작업의 단계로서는, 프로그래머의 개발단계(S110)와 XML스토리DB(151)의 이식단계(S140)로 이루어진다.A method of constructing an application manager for a set-top box having such configuration features and system is as shown in FIG. FIG. 6 is a flowchart illustrating the construction of the set-top box application manager according to the present invention (S100). Referring to FIG. 6, as a stage of the construction of the set-top
여기에서, 상기 개발단계(S110)에서는, 전술한 애플리케이션 매니저(210)에 정의되어 있는 언어와 규칙을 이용하여 개발하고자 하는 셋톱박스(200)의 메뉴맵과 상응하는 해당 응용프로그램의 제어스토리인 XML스크립트를 작성하고, 이를 XML스토리DB(151)에 저장하는 단계(S111)를 진행한다. 이러한 단계(S111)는 상기한 저장모듈(217)에 의해 단말기(100)의 히스토리DB(152)에 저장되는 단계(S112)가 진행된 다음, 이러한 단계(S112)를 완료한 내용들을 프로그래머 단말기(100)와 연결된 디스플레이어(130)를 통해 화면 출력하는 단계(S120)가 진행된다.Here, in the development step (S110), XML, which is a control story of the corresponding application program corresponding to the menu map of the set-
이후, 상기 프로그래머 단말기(100)를 통해 상기 셋톱박스(200)에 제어명령을 송출함으로써 셋톱박스(200)의 구동테스트를 하는 단계(S113)가 진행되고 전술한 바와 같이, 히스토리DB(152)로의 저장(S114) 및 디스플레이어(130)로의 화면 출력이 실시된다. 상기한 구동테스트의 결과, 상기 XML스크립트에 버그가 발생되면 프로그래머는 디스플레이어(130)를 통해 출력되는 제어정보를 관찰하여 버그가 발생된 해당 XML스크립트를 디버깅하는 단계(S115)를 진행시킨 다음, 이를 XML스토리DB(151)에 저장한다. 이 때, 상기 애플리케이션 매니저(210)는 이러한 모든 과정들을 프로그래머 단말기(100)의 히스토리DB(152)에 자동 저장(S116)을 실시함과 동시에, 이를 디스플레이어(130)를 통해 실시간으로 화면출력을 실시한다. 프로그래머는 상기한 디버깅단계(S115)가 완료되면 전술한 전단계(S113)로부터 다시금 애플리케이션 매니저(210)가 정상적으로 작동되는지를 구동 테스트하여 오류가 완전히 수정될 때까지 이와 같은 단계를 반복 수정한다. 따라서 종래와는 달리, 셋톱박스(200)에 로딩작업이 별도로 요구되지 않고도 애플리케이션 매니저(210)의 자동 제어행위에 의해 그 즉시 셋톱박스(200)의 구동테스트 및 디버깅을 실시할 수 있게 되는 효과가 있다.Subsequently, a step S113 of driving test of the set-
오류가 모두 수정된 XML스토리DB(151)는 프로그래머가 의도하는 바에 따라 셋톱박스(200)로 로딩 및 이식되고, 셋톱박스(200)와 프로그래머 단말기(100)의 통신을 해제시킨 상태에서 셋톱박스(200)가 독자적으로 구동되는지의 여부를 최종테스트하는 단계(S141)를 완료함으로서 셋톱박스용 애플리케이션 매니저(210)의 구축작업이 완료된다.The XML story DB 151 in which all errors are corrected is loaded and transplanted into the set-
이하에서는 위와 같은 애플리케이션 매니저의 구축단계에 있어 셋톱박스(200)의 구동테스트를 첨부된 도 7 및 도 8을 통해 보다 구체적으로 설명하기로 한다.Hereinafter, the driving test of the set-
도 7은 본 발명에 따른 셋톱박스용 애플리케이션 매니저의 작동제어흐름도이고, 도 8은 본 발명에 따른 셋톱박스용 애플리케이션 매니저의 오류수정제어흐름도이다.7 is an operation control flow chart of the set-top box application manager according to the present invention, Figure 8 is an error correction control flow chart of the set-top box application manager according to the present invention.
프로그래머 단말기(100)로부터 셋톱박스(200)에 구동 개시 제어명령이 수신되면, 애플리케이션 매니저(210)를 구동시키기 위한 초기화단계(S210)가 진행되고, 여기에서 상기 단말기(100)로부터 메뉴맵에 의한 각 메뉴별 구동명령이 수신되면, 구동단계(S230)가 진행되며, 상기 단말기(100)로부터 셋톱박스(200)의 구동 종료 제어명령이 수신되면 셋톱박스종료단계(S240)가 각각 제어되는 상태를 도시하고 있음을 알 수 있다(도 7 참조).When the start-up control command is received from the
도 7을 살펴보면, 상기 초기화 단계(S210)에서는, 애플리케이션 매니저(210)를 구성하는 시작모듈(211)과 XML엔진 로딩모듈(213)의 작동에 의해 XML시작스크립트와 XML엔진을 상기 단말기(100)의 XML스토리DB(151)와 OS소스DB(153)로부터 검출하는 단계(S211)가 진행된다. 이후, 검출된 XML엔진이 파서모듈(214)에 로딩되고 검출된 XML시작스크립트가 상기 파서모듈(214)에 의해 파싱(분석)되어 기계어로 전환된 상태에서 셋톱박스(200)의 메모리(RAM, 220)에 순차적으로 임시 저장된다. 이때, 상기 애플리케이션 매니저(210)의 체크모듈(216)이 그 실행 대기순서와 파싱된 제어스토리와 관련된 응용프로그램의 작동여부 등을 관리감독함으로서 최적의 제어환경이 구현될 수 있도록 기능하게 된다. Referring to FIG. 7, in the initialization step (S210), the terminal 100 transmits the XML start script and the XML engine by the operation of the
다음으로, 상기 메모리(220)에 임시 저장되었던 실행스토리들은 선입선출(FIFO)방식에 의해 순차적으로 실행되는 바, 이는 실행모듈(215)이 그 기능을 담당한다. 이와 같은 실행단계(S212)가 모두 완료되어 셋톱박스(200)가 구동이 가능한 상태가 설정됨과 동시에 이러한 일련의 과정들을 상기 단말기(100)의 히스토리DB(152)에 기록 저장하는 단계(S213)가 진행된다. Next, execution stories that were temporarily stored in the
상기한 바와 같이, 셋톱박스(200)가 구동 가능한 상태가 설정되면, 도 8에서와 같은 단말기(100)를 통해 셋톱박스(200)에 제어명령을 입력 및 송출하는 단계(S221)가 진행되고, 애플리케이션 매니저(210)는 입력된 제어명령과 상응하는 XML스크립트를 단말기(100)에 저장되어 있는 XML스토리DB(151)로부터 검출/파싱/실행한 결과, 버그발생여부를 자체 판단한다(S222). 상기한 판단(S222)결과로 버그가 발생되면 애플리케이션 매니저의 제어동작이 그 즉시 정지됨과 동시에 디스플레이어에 버그발생 스크립트를 표시 출력하여 프로그래머가 해당 버그를 별다른 노력을 기울이지 않고도 용이하게 발견 및 파악할 수 있도록 하는 제어단계(S223)가 진행되는 바, 프로그래머는 이에 대하여 디버깅을 완료한 다음, XML스토리DB(151)에 저장한다(S224). 상기한 모든 단계는 단말기(100)의 히스토리DB(152)에 자동 저장됨은 물론이다(S225). 그러나 상기한 판단(S222) 결과, 버그가 발생되지 아니하면 그대로 다음단계인 구동단계(S230)로의 이행이 이루어진다.As described above, when the set-
상기 구동단계(S230)를 보다 살펴보면, 단말기(100)로부터 메뉴맵 중의 어느 하나의 제어명령이 수신되면(S213), 전술한 바와 같이 제어명령과 부합하는 XML스크립트의 검출/파싱한 다음 셋톱박스(200)에 저장되어 있는 애플리케이션 매니저(210) 내에 정의된 명령어인지의 여부와, 상기 제어명령에 대응되는 응용프로그램이 작동여부와 구동환경 등을 체크모듈(216)을 통해 관리 감독하며, 사용 차단된 제어명령인지의 여부 등을 종합하여 제어 가능한 명령인지의 여부를 판단하는 단계(S232)가 진행된다. 상기한 판단(S232)결과로 제어 가능한 제어명령이면 셋톱박스(200)의 메모리(220)에 그 실행명령을 저장하는 단계(S234)가 진행된 후, 상기 메모리(220)에 임시저장 되어 있는 실행명령을 입력된 순서에 입각하여 순차적으로 처리 실행하는 단계(S235)가 진행된다. 그러나 상기한 판단(S232) 결과로 제어가능한 명령이 아닐 경우에는 XML스토리DB 및 상기 애플리케이션 매니저(210)에 새로운 제어명령어로서 저장하는 단계(S233)가 진행되어 애플리케이션 매니저에 새로운 언어와 기능을 부가시킬 수 있도록 구현된다. 물론, 전술한 모든 제어단계는 히스토리DB(152)에 자동 저장된다.Looking at the driving step (S230), if the control command of any one of the menu map is received from the terminal (100) (S213), as described above, after detecting / parsing the XML script corresponding to the control command set-top box ( Whether the command is defined in the
이와 같은 구동단계(S230)가 모두 완료되면, 셋톱박스종료단계(S240)를 진행하게 되는 데, 단말기(100)로부터 종료 제어명령이 수신되면(S241) 상기 XML스토리DB(151)로부터 XML종료스크립트를 검출/파싱하여 실행 중인 응용프로그램들을 정의된 스토리에 따라 순차적으로 종료 실행시키는 단계(S242)를 완료함으로서 종료된다. 물론, 상기와 같은 셋톱박스종료단계(S240) 또한, 히스토리DB(152)에 모두 저장되는 단계(S236)를 거치게 된다. When all of the driving step (S230) is completed, the set-top box termination step (S240) proceeds, when the termination control command is received from the terminal 100 (S241) XML termination script from the XML story DB 151 The process ends by completing step S242 of sequentially detecting and parsing and executing the executed application programs according to the defined story. Of course, the set-top box end step (S240) as described above, also goes through the step (S236) that is all stored in the history DB (152).
본 발명은 다양하게 변형실시 가능하다. 예컨대, 히스토리DB(152)를 셋톱박스(200)의 내부에 구성할 수도 있으며, 이와는 별도의 저장매체로서 상기 프로그래머 단말기(100)와 주변연결장치로서 외부 연결되어 사용될 수도 있다. 그리고 상기 히스토리DB(152)를 웹사이트에서 통상의 로그인방법을 통해 열람할 수 있도록 하여 셋톱박스용 응용프로그램 개발자와 그 정보를 공유토록 하여 버그발생의 요인을 경감시킬 수 있도록 설계함 또한 가능하다.The present invention can be modified in various ways. For example, the
이상과 같이, 본 발명에 의할 것 같으면, 셋톱박스용 애플리케이션 매니저의 구축작업에 있어 하드코드의 형태인 기계언어로서 설계할 필요성이 요구되지 아니하므로, 셋톱박스에 탑재되는 응용프로그램의 변경이 발생된다하더라도 이에 대하여 유연하게 대처할 수 있다는 등의 이점이 있다.As described above, according to the present invention, since the necessity of designing as a machine language in the form of hard code is not required in the construction of the application manager for the set-top box, a change of the application program mounted on the set-top box occurs. Even if it is, there is an advantage that can be flexibly coped with this.
또한, XML기반의 데이터베이스와 모듈기반의 애플리케이션 매니저로 분리 저 장될 수 있도록 설계되는 바, 데이터베이스의 가공과 수정만으로도 애플리케이션 매니저의 구축작업이 가능하게 되어 프로그램작업이 보다 용이하게 수행할 수 있다는 장점이 있다.In addition, it is designed to be separately stored as an XML-based database and a module-based application manager. The application manager can be built only by processing and modifying the database, thereby making it easier to program. .
그리고 실행스크립트를 실시간으로 화면출력하여 주는 바, 버그의 발견이 용이하고 XML스토리DB의 작성에 있어 그 작업과정들을 모두 열람할 수 있을 뿐만 아니라, 이와 같이 작성된 XML스토리DB의 제어상태 등을 가시적으로 파악할 수 있어 프로그램의 제작과 설계과정이 보다 용이하게 구현될 수 있다는 등의 이점이 있다.In addition, it displays the execution script in real time, so it is easy to find bugs and not only view all the processes in the creation of XML story DB, but also visually control the state of the XML story database. It can be understood that the production and design process of the program can be implemented more easily.
이와 더불어, 작성된 XML스토리DB를 다른 기능의 셋톱박스에 부분적으로 발췌 및 이식 적용시킬 수 있어 새로운 애플리케이션 매니저의 제작에 있어 보다 유연하게 대처할 수 있다는 등의 효과가 있는 매우 유익한 발명인 것이다.In addition, the XML Story DB can be partially extracted and applied to set-top boxes of other functions, and thus it is a very advantageous invention that can be more flexibly coped with in the creation of a new application manager.
Claims (10)
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020050116772A KR100720164B1 (en) | 2005-12-02 | 2005-12-02 | Implementation System and Application Method of Application Manager for Set Top Box |
| PCT/KR2005/004322 WO2007064056A1 (en) | 2005-12-02 | 2005-12-15 | System and method for the construction of application manager for set top box |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020050116772A KR100720164B1 (en) | 2005-12-02 | 2005-12-02 | Implementation System and Application Method of Application Manager for Set Top Box |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| KR100720164B1 true KR100720164B1 (en) | 2007-05-18 |
Family
ID=38092381
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020050116772A Expired - Fee Related KR100720164B1 (en) | 2005-12-02 | 2005-12-02 | Implementation System and Application Method of Application Manager for Set Top Box |
Country Status (2)
| Country | Link |
|---|---|
| KR (1) | KR100720164B1 (en) |
| WO (1) | WO2007064056A1 (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR101169042B1 (en) | 2010-10-22 | 2012-07-26 | 주식회사 네오엠텔 | Conversion apparatus for script code |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20040075066A (en) * | 2002-01-08 | 2004-08-26 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | Controlling application devices simultaneously |
| KR20040094731A (en) * | 2002-02-28 | 2004-11-10 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | Programming a remote control device for controlling an apparatus |
| KR20050012837A (en) * | 2002-06-24 | 2005-02-02 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | Reception device to receive data and skin in a markup language |
| KR20050016595A (en) * | 2002-06-20 | 2005-02-21 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | A method and apparatus for processing electronic forms for use with resource constrained devices |
-
2005
- 2005-12-02 KR KR1020050116772A patent/KR100720164B1/en not_active Expired - Fee Related
- 2005-12-15 WO PCT/KR2005/004322 patent/WO2007064056A1/en active Application Filing
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20040075066A (en) * | 2002-01-08 | 2004-08-26 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | Controlling application devices simultaneously |
| KR20040094731A (en) * | 2002-02-28 | 2004-11-10 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | Programming a remote control device for controlling an apparatus |
| KR20050016595A (en) * | 2002-06-20 | 2005-02-21 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | A method and apparatus for processing electronic forms for use with resource constrained devices |
| KR20050012837A (en) * | 2002-06-24 | 2005-02-02 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | Reception device to receive data and skin in a markup language |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR101169042B1 (en) | 2010-10-22 | 2012-07-26 | 주식회사 네오엠텔 | Conversion apparatus for script code |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2007064056A1 (en) | 2007-06-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8910166B2 (en) | Automatic transcoding and semantic adaptation between scripting and workflow systems | |
| CN107577607B (en) | User interface automatic testing method and device, electronic equipment and storage medium | |
| JP2021103571A (en) | Method, device, and apparatus for edge computing test, and readable storage medium | |
| US8789015B2 (en) | Integrated application localization | |
| CN111740948B (en) | Data packet issuing method, dynamic updating method, device, equipment and medium | |
| US20080120282A1 (en) | Interactive electronic technical manual system with database insertion and retrieval | |
| US20050240555A1 (en) | Interactive electronic technical manual system integrated with the system under test | |
| CN112689083B (en) | Vehicle-mounted camera configuration method and device, electronic equipment and storage medium | |
| US11958511B2 (en) | Train signal system and linkage method therefor | |
| US20070266379A1 (en) | Compile method, debug method, compile program and debug program | |
| US12405779B2 (en) | Ontology-based multi-programming language component specifications and workflow system and use method | |
| JP2005202963A (en) | System and method for improving processing speed of Java program | |
| CN112632425B (en) | Method, device, equipment and storage medium for generating offline resource file | |
| US20230111113A1 (en) | Page loading method and display apparatus | |
| CN116340680B (en) | A control method for display device and plug-in object life cycle management | |
| CN114791826A (en) | Jenkins project operation method and device based on parameter configuration | |
| KR100720164B1 (en) | Implementation System and Application Method of Application Manager for Set Top Box | |
| CN118259922B (en) | Compiling method, compiling device, compiling product, compiling device, compiling equipment and compiling medium for application program | |
| CN110321143A (en) | Method for upgrading software, display panel and the readable storage medium storing program for executing of display panel | |
| US11526363B2 (en) | Electronic apparatus and control method thereof | |
| US20070073902A1 (en) | Information processor, information processing method and program | |
| KR102337961B1 (en) | System for providing development framework which support both monolithic architecture and microservice architecture, method for developing application using the same and computer program for the same | |
| CN116225394A (en) | Method, device, electronic equipment and storage medium for creating cloud development environment | |
| CN113760317A (en) | A page display method, device, device and storage medium | |
| CN112486504A (en) | Interaction method, upper computer and computer readable storage medium |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A201 | Request for examination | ||
| PA0109 | Patent application |
St.27 status event code: A-0-1-A10-A12-nap-PA0109 |
|
| PA0201 | Request for examination |
St.27 status event code: A-1-2-D10-D11-exm-PA0201 |
|
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection |
St.27 status event code: A-1-2-D10-D21-exm-PE0902 |
|
| P11-X000 | Amendment of application requested |
St.27 status event code: A-2-2-P10-P11-nap-X000 |
|
| P13-X000 | Application amended |
St.27 status event code: A-2-2-P10-P13-nap-X000 |
|
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
St.27 status event code: A-1-2-D10-D22-exm-PE0701 |
|
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment |
St.27 status event code: A-2-4-F10-F11-exm-PR0701 |
|
| PR1002 | Payment of registration fee |
St.27 status event code: A-2-2-U10-U11-oth-PR1002 Fee payment year number: 1 |
|
| PG1601 | Publication of registration |
St.27 status event code: A-4-4-Q10-Q13-nap-PG1601 |
|
| FPAY | Annual fee payment |
Payment date: 20100513 Year of fee payment: 4 |
|
| PR1001 | Payment of annual fee |
St.27 status event code: A-4-4-U10-U11-oth-PR1001 Fee payment year number: 4 |
|
| R18-X000 | Changes to party contact information recorded |
St.27 status event code: A-5-5-R10-R18-oth-X000 |
|
| LAPS | Lapse due to unpaid annual fee | ||
| PC1903 | Unpaid annual fee |
St.27 status event code: A-4-4-U10-U13-oth-PC1903 Not in force date: 20110515 Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE |
|
| PC1903 | Unpaid annual fee |
St.27 status event code: N-4-6-H10-H13-oth-PC1903 Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE Not in force date: 20110515 |