KR20010076910A - method for multi booting of program - Google Patents
method for multi booting of program Download PDFInfo
- Publication number
- KR20010076910A KR20010076910A KR1020000004338A KR20000004338A KR20010076910A KR 20010076910 A KR20010076910 A KR 20010076910A KR 1020000004338 A KR1020000004338 A KR 1020000004338A KR 20000004338 A KR20000004338 A KR 20000004338A KR 20010076910 A KR20010076910 A KR 20010076910A
- Authority
- KR
- South Korea
- Prior art keywords
- program
- ram
- stored
- information
- flash memory
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
Description
본 발명은 디지털 TV와 같은 장치에서 공중파 등을 통해 다운로드 받을 수 있는 갱신 프로그램을 소프트웨어적으로 처리하기 위해 기억장치에 저장하고 실행하기 위한 프로그램 멀티 부팅 방법에 관한 것이다.The present invention relates to a program multi-booting method for storing and executing an update program that can be downloaded via airwaves or the like in a device such as a digital TV in a storage device for processing by software.
최근 디지털 TV와 같은 디지털 장비의 수요와 공급이 급속도로 증가하고 있다.Recently, the demand and supply of digital equipment such as digital TV is increasing rapidly.
디지털 장비의 특성상, 다양한 서비스를 제공하는 것이 가능하고, 이들 서비스를 상품화 초기에 모두 구현하여 지원하는 데에 상당한 제약이 따르게 마련이다.Due to the nature of digital equipment, it is possible to provide a variety of services, and there are significant limitations in implementing and supporting all of these services in the early stage of commercialization.
따라서 이들 제품을 사용하는 초기 사용자는 서비스 초기에 지원되는 기본적인 기능만 사용할 수 있는 제품을 쓰게 되며, 방송국이나 전화국에서 점차적으로 추가하는 서비스를 제공받는 것이 불가능하다.Therefore, early users of these products will be able to use products that can only use the basic functions that are supported at the beginning of the service, and it will be impossible to receive services gradually added by broadcasting stations or telephone stations.
따라서 새로 추가된 서비스를 사용하기 위해서 구입한 제품에 설치되어 있던 소프트웨어 프로그램을 새로 추가된 서비스에 대한 기능이 구현되어 있는 것으로 갱신해야 한다.Therefore, in order to use the newly added service, the software program installed in the purchased product must be updated with the function for the newly added service.
사용자들은 이들 제품의 소프트웨어 갱신을 위해 서비스센터에 방문해서 갱신 서비스를 받을 수 있으며, TV와 같이 크기가 큰 제품의 경우 출장 서비스를 통해 소프트웨어를 갱신 해야한다.Users can visit a service center to get software updates for these products, and for larger products such as TVs, they need to update their software through on-site service.
이러한 절차에 의한 소프트웨어 갱신은 시간이 많이 걸릴 뿐만 아니라 서비스 요원의 인건비 등 많은 비용을 유발하게 된다.Software update by this procedure is not only time-consuming but also incurs high costs such as labor cost of service personnel.
이에 따라 제조 회사측에서는 소프트웨어 갱신에 소요되는 서비스 비용 때문에 지속적인 갱신 지원이 힘들게 된다.This makes it difficult for manufacturers to support ongoing renewals because of the cost of servicing the software.
이러한 문제의 해결을 위해 공중파, 위성, 케이블 등과 같은 방송의 경우 방송국에서는 제조업체에서 제공하는 갱신용 프로그램을 디지털 방송을 통해 보내 줄 수 있고, 수신기에서는 방송국에서 보내주는 프로그램을 다운로드 받아서 기존에 수행하고 있던 프로그램을 갱신하는 방식을 사용할 수 있다.In order to solve this problem, broadcasting stations such as airwaves, satellites, and cables can transmit the update program provided by the manufacturer through digital broadcasting, and the receiver can download the program transmitted by the broadcasting station and perform the existing program. You can use a method of updating the program.
이동 전화의 경우, 방송에서와 마찬가지로 단말기 사용자가 기지국에 미리 약속된 방식으로 전화를 걸면 단말기에 필요한 프로그램을 다운로드 해주는 식으로 프로그램 갱신 기능을 구현할 수 있다.In the case of a mobile phone, as in broadcasting, when a terminal user makes a phone call to a base station in a predetermined manner, a program update function can be implemented by downloading a program necessary for the terminal.
종래의 프로그램 멀티 부팅 방법으로는 도 1에 도시되어 있는 시스템을 이용하여 먼저, N개의 플래쉬 메모리(11)와 같은 비휘발성 메모리에 1개씩의 프로그램(12)을 저장하고, 구성정보를 저장하는 공간(13)에 기억하여 있는 정보, 점퍼 또는 딥스위치와 같은 부가 정보를 이용하여 어느 플래쉬 메모리(11)에 있는 프로그램(12)을 실행할 것인지를 결정한다.In the conventional program multi-booting method, a program 12 is first stored in a nonvolatile memory such as N flash memories 11 by using the system shown in FIG. 1 and a space for storing configuration information. Information stored in (13), additional information such as jumpers or dip switches is used to determine which flash memory 11 to execute the program 12 in.
이어, 마이콤(14)은 중앙제어 장치(10)가 프로그램(12)을 읽으려는 칩을 선택하기 위한 신호에 대해 선택적으로 각 플래쉬 메모리(11)에 연결되는 스위치(15)를 단락함으로써 중앙처리장치(10)가 실행할 프로그램(12)을 선택할 수 있다.Subsequently, the microcomputer 14 short-circuits the switch 15 connected to each flash memory 11 selectively with respect to a signal for the central control unit 10 to select a chip to read the program 12. It is possible to select a program 12 to be executed by (10).
이렇게 선택된 프로그램에는 텍스트(TEXT), 데이터 및 BSS로 구성되는 3요소 중 텍스트와 데이터에 해당되는 부분이 저장되어 있으며, 부팅 과정의 초기에 데이터 영역을 RAM 영역에 복사하는 등의 초기화 과정을 거친 후 실제의 프로그램을 실행한다.The selected program stores text and data among the three elements consisting of text, data, and BSS, and after initialization, such as copying the data area to the RAM area at the beginning of the booting process. Run the actual program.
그러나 TV나 단말기는 새로 다운로드 한 프로그램의 안정성이나 정확성 등을 검증하기 위한 절차가 필요하게 되며, 이에 따라 복수개의 프로그램을 한번에 유지해야 하며, 일련의 검사가 완료된 후 기존의 프로그램을 새로 다운로드 받은 프로그램으로 대치하는 작업을 해야 한다.However, a TV or a terminal needs a procedure for verifying stability or accuracy of a newly downloaded program. Therefore, a plurality of programs must be maintained at one time. After a series of inspections, existing programs are newly downloaded. You have to work to replace it.
이를 위해 각각의 기기는 실제 동작하는 프로그램의 크기의 최소한 두 배에 해당하는 비휘발성 메모리 공간을 확보하여야 하며, 이들 간의 전환을 위한 하드웨어 구성 요소가 추가되어야 하고 이로 인해 제조원가가 상승되어 기기제조 업체의 경쟁력 약화로 되는 문제점이 있었다.To this end, each device must have at least twice the size of non-volatile memory space of the size of the program in operation, and hardware components for switching between them must be added, which increases the manufacturing cost and There was a problem of weakening the competitiveness.
따라서 본 발명은 이와 같은 종래 기술의 문제점을 감안하여 발명한 것으로, 본 발명의 목적은 프로그램 다운로드와 같이 여러개의 프로그램을 동시에 관리해야 할 필요가 있는 경우, 이를 위한 하드웨어 추가와 같은 생산상의 추가비용을 들이지 않고 프로그램을 저장하고 실행할 프로그램을 선택하는 프로그램 멀티 부팅 방법을 제공하는 데 있다.Therefore, the present invention has been invented in view of the above-described problems of the prior art, and an object of the present invention is to increase production costs such as adding hardware for the case where it is necessary to simultaneously manage several programs such as program download. It provides a program multi-booting method for saving a program and selecting a program to be executed without being loaded.
도 1은 종래의 프로그램 멀티 부팅 시스템의 구조를 도시한 도면,1 is a view showing the structure of a conventional program multi-boot system,
도 2는 본 발명의 방법을 구현하기 위한 프로그램 멀티 부팅 시스템의 구조를 개략적으로 도시한 도면이다.2 is a diagram schematically showing the structure of a program multi-boot system for implementing the method of the present invention.
주요 도면 부호의 부호 설명Explanation of Signs of Main References
10,20 : 중앙 제어 장치(CUP) 11 : 플래쉬 메모리10,20: central control unit (CUP) 11: flash memory
12,24 : 프로그램 13,22 : 구성 테이블12,24: program 13,22: configuration table
14 : 마이콤 15 : 스위치14: Micom 15: Switch
21 : 프로그램(부트) 세렉터 23 : 콤프레스 에이전트21: Program (boot) selector 23: Compress agent
25 : RAM25: RAM
이와 같은 본 발명의 목적을 달성하기 위한 프로그램 멀티 부팅 방법은, 중앙처리 장치, 프로그램 세렉터, 정보를 압축 해제하는 콤프레스 에이전트(Compress Agent), 구성정보가 저장된 구성 테이블, 복수의 프로그램이 저장된 플레쉬 메모리 및 RAM을 구비한 멀티 부팅 시스템을 이용하여 프로그램을 선택하는 프로그램 멀티 부팅 방법에 있어서, 상기 프로그램 세렉터로 상기 구성 테이블에 저장되어 있는 구성정보를 읽어 상기 복수의 프로그램 중에서 현재 활성화된 프로그램이 저장되어 있는 플래쉬 메모리 위치를 상기 콤프레스 에이전트로 전달하는 단계와, 상기 전달받은 플레쉬 메모리에 저장된 프로그램 정보를 상기 콤프레스 에이전트로 압축 해제하여 상기 RAM에 저장하는 단계와, 상기 RAM에 저장된 프로그램만을 사용하여 프로그램을 수행하는 단계를 구비함을 특징으로 한다.Program multi-booting method for achieving the object of the present invention, a central processing unit, a program selector, a compression agent (Compress Agent) for decompressing information, a configuration table in which configuration information is stored, a flash in which a plurality of programs are stored A program for selecting a program using a multi-boot system having a memory and a RAM, wherein the program selector reads configuration information stored in the configuration table and stores the currently active program among the plurality of programs. Delivering a flash memory location to the compressor agent, decompressing the program information stored in the received flash memory to the compressor, and storing the program information in the RAM; using only a program stored in the RAM; Only run the program And the it characterized in that the bar.
이와 같은 프로그램 멀티 부팅 방법에 의하면, 소프트웨어적으로 프로그램 중 현재 활성화된 프로그램만을 선택하여 프로그램을 실행하도록 하기 때문에 여러개의 프로그램을 동시에 관리하여야할 경우에 이를 위한 추가적인 하드웨어의 설치가 필요 없게 된다.According to the program multi-booting method, since only the currently active program is selected by software to execute the program, additional hardware is not required for managing multiple programs at the same time.
이하 본 발명의 실시예에 대하여 첨부 도면에 근거하여 상세히 설명한다.Best Mode for Carrying Out the Invention Embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 2는 본 발명을 구현하기 위한 프로그램 부팅 장치의 구성을 개략적으로 도시한 것으로, 중앙처리장치(10), 프로그램 세렉터(또는 부트 세렉터)(21), 구성정보가 저장되는 구성 테이블(22), 정보를 압축 해제하는 콤프레서 에이전트(23), 복수의 프로그램(24) 정보를 일시적으로 저장하는 RAM(25)으로 구성된다.FIG. 2 schematically shows a configuration of a program booting apparatus for implementing the present invention. The CPU 10, the program selector (or boot selector) 21, and a configuration table 22 in which configuration information is stored. ), A compressor agent 23 for decompressing information, and a RAM 25 for temporarily storing information of a plurality of programs 24.
본 발명의 부팅 방법은 프로그램 세렉터(21)로 상기 구성 테이블(22)에 저장되어 있는 구성 정보를 읽어 상기 복수의 프로그램 중에서 현재 활성화된 프로그램이 저장되어 있는 프래쉬 메모리 위치를 상기 콤프레스 에이전트(23)로 전달한다.The booting method of the present invention reads configuration information stored in the configuration table 22 with a program selector 21 and stores a flash memory location where a currently active program is stored among the plurality of programs. To pass).
이어 상기 전달받은 플래쉬 메모리에 저장된 프로그램 정보를 상기 콤프레서 에이전트(23)로 압축 해제하여 RAM(25)에 저장한다.Then, the program information stored in the received flash memory is decompressed by the compressor agent 23 and stored in the RAM 25.
그 다음 RAM(25)에 저장되어 있는 현재 활성화된 프로그램만을 사용하여 프로그램을 수행한다.The program is then executed using only the currently active program stored in RAM 25.
상기 본 발명에 따른 프로그램 수행 방법에 있어서, 이 체계를 프로그램 다운로드에 사용할 경우 다운로드한 프로그램을 처음 실행할 때 프로그램이 정상적으로 실행될 수 있는 것인지 아닌지에 대한 검사 기능을 추가하여 프로그램 다운로드 기능의 안정성을 보강하는 용도로 사용할 수 있으며, 구성 테이블의 정보를 저장하기 위한 공간으로 도 1에 도시된 바와 같은 외부 기억 장치를 사용할 수도 있다.In the program execution method according to the present invention, when the system is used for program download, the purpose of reinforcing the stability of the program download function by adding a check function to check whether the program can be executed normally when the downloaded program is first executed. An external memory device as shown in FIG. 1 may be used as a space for storing information of a configuration table.
구성 테이블은 표 1과 같은 정보가 기록되며, 이들 정보는 압축된 프로그램과 압축되지 않은 원본 프로그램의 크기 및 CRC(Cyclic Redundancy Check)값, 구성 테이블 항목의 매직번호와 CRC값 등을 저장하여 구성표의 무결성 확인을 위해 사용하며 프로그램 버전, 작성된 날짜 등을 이용하여 무결성 검사의 정확성을 높일 수 있다.The configuration table records the information as shown in Table 1, which stores the size of the compressed and uncompressed original programs, the cyclic redundancy check (CRC) values, and the magic number and CRC value of the configuration table entries. It is used to check the integrity, and the accuracy of the integrity check can be improved by using the program version and the date created.
프로그램 세렉터(또는 부스터 세렉터)는 구성 테이블을 읽어들여 기록된 후 한번도 실행되지 않은 프로그램, 최근에 기록된 프로그램의 순으로 압축 해제할 프로그램을 선택한다.The program selector (or booster selector) reads the configuration table and selects a program to be decompressed in order of a program that has not been executed since it was written, and then the most recently recorded program.
이때 프로그램이 처음 실행되는 경우라면 실행하기 전에 실행된 횟수를 증가시키며, 프로그램 실행 초기에 자체 진단을 실행한 후 검증 상태 변수(Biz-Checked)를 변경하여 지속적으로 사용할 것인지 아니면 삭제할 것인지를 알 수 있도록 한다.In this case, if the program is run for the first time, the number of executions is increased before execution, and after executing the self-diagnosis at the beginning of the program, it changes the verification status variable (Biz-Checked) so that it can be used continuously or deleted. do.
이때 도 2에 도시된 프로그램 세렉터는 도 1에 도시된 바와 같은 하드웨어 스위치와 동일한 기능을 할 수 있게 구현할 수 있으며, 하드웨어적으로 칩 선택 신호를 제어하는 데 따른 접근속도 저하 문제를 해결할 수 있다.In this case, the program selector illustrated in FIG. 2 may be implemented to have the same function as the hardware switch illustrated in FIG. 1, and may solve a problem of deterioration in access speed caused by controlling the chip select signal in hardware.
프로그램 다운로드는 DTV 방송의 경우, 방송국에서 사용하는 방식에 따라 다운로드하여야 하기 때문에 방송을 통한 전송시에 압축된 형태의 파일을 전송하면 된다.In the case of DTV broadcasting, the program download must be downloaded according to a method used by a broadcasting station. Therefore, a program of a compressed type may be transmitted during transmission through broadcasting.
이때 프로그램의 보안을 위해 암호화된 형태로 전송을 할 수 있으며, 이를 위해 기기의 프로그램 또는 프로그램 세렉터 또는 부트 세렉터에 암호 해제를 위한 기능이 추가되어야 한다.In this case, the program can be transmitted in encrypted form for security of the program. For this purpose, a function for decrypting the password must be added to the program, the program selector, or the boot selector of the device.
본 발명에 따른 프로그램 멀티 부팅 방법은 다음과 같은 효과가 있다.The program multi-booting method according to the present invention has the following effects.
첫째, 프로그램 중 현재 활성화된 프로그램만을 선택하여 프로그램을 수행하기 때문에 하드웨어 논리 추가에 따른 비용 부담없이 프로그램 다운로드와 같은 서비스에서 필요로 하는 프로그램 선택 기능을 제공할 수 있다.First, since the program is executed by selecting only the currently active program among the programs, it is possible to provide a program selection function required by a service such as a program download without the cost of adding hardware logic.
둘째, 이동 전화기에서 새로운 서비스를 제공할 때 이동 전화기에 새로운 프로그램이 필요시 본 발명의 방법을 사용하면 소비자가 서비스 센터를 방문해서 프로그램을 갱신할 필요없고, 소비자가 새로운 프로그램이 갱신되는 것을 감지하지않아도 자동으로 망관리자가 모든 이동전화기에 시스템 프로그램을 갱신 할 수 있다.Second, when the mobile phone needs a new program when providing a new service in the mobile phone, the method of the present invention does not require the consumer to visit the service center and update the program, and the consumer does not detect that the new program is updated. The network manager can automatically update the system program on all mobile phones.
Claims (2)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020000004338A KR20010076910A (en) | 2000-01-28 | 2000-01-28 | method for multi booting of program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020000004338A KR20010076910A (en) | 2000-01-28 | 2000-01-28 | method for multi booting of program |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20010076910A true KR20010076910A (en) | 2001-08-17 |
Family
ID=19642565
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020000004338A KR20010076910A (en) | 2000-01-28 | 2000-01-28 | method for multi booting of program |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20010076910A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101036573B1 (en) * | 2008-10-13 | 2011-05-24 | 차민서 | A restoration device for dent of vehicle |
US9367445B2 (en) | 2012-08-31 | 2016-06-14 | Samsung Electronics Co., Ltd. | Data processing apparatus, method for processing data, and computer readable recording medium recorded with program to perform the method |
-
2000
- 2000-01-28 KR KR1020000004338A patent/KR20010076910A/en not_active Application Discontinuation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101036573B1 (en) * | 2008-10-13 | 2011-05-24 | 차민서 | A restoration device for dent of vehicle |
US9367445B2 (en) | 2012-08-31 | 2016-06-14 | Samsung Electronics Co., Ltd. | Data processing apparatus, method for processing data, and computer readable recording medium recorded with program to perform the method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4953465B2 (en) | Method and device for management of wireless communication device system software downloads | |
CA2304144C (en) | Downloading data | |
US9298444B2 (en) | Software updating method and portable terminal device | |
US6684324B2 (en) | Method for installing two or more operating systems/user interfaces into an electronic device and an electronic device | |
US11797297B2 (en) | Method and device for updating firmware using a modified delta file | |
KR101426710B1 (en) | Device and method for upgrading version information of terminal | |
US7886093B1 (en) | Electronic device network supporting compression and decompression in electronic devices | |
US20020077094A1 (en) | Upgrading software in a mobile telephone | |
US8726259B2 (en) | System and method for preserving device parameters during a FOTA upgrade | |
US20060036573A1 (en) | System for downloading contents, and client terminal for downloading contents from contents server | |
US20040243993A1 (en) | Electronic device supporting multiple update agents | |
KR20020006522A (en) | System and method for independently downloading features into a set of storage locations in a wireless communication device | |
JP2005505813A (en) | System and method for managing wireless communication device system software downloads in the field | |
CN101026848A (en) | Mobile terminal and software update method | |
CN101639785A (en) | Method and device for software updating | |
CN102541595A (en) | Method and device for upgrading intelligent device and intelligent device | |
KR100747901B1 (en) | Method for compression of executable file in mobile telecommunication terminal | |
US20030037323A1 (en) | Method for upgrading data | |
US20030120750A1 (en) | Device based detection of user preferences in a home networking environment | |
US7603667B2 (en) | Multi-download structure and method of mobile communication terminal | |
KR20010076910A (en) | method for multi booting of program | |
KR100636518B1 (en) | Method for upgrade of firmware in mobile telecommunication terminal | |
PL203722B1 (en) | Loading routine programmed data signal receiver and method for updating software in data signal receiver using loading routine | |
US7761679B2 (en) | Method for recovering from download failure of program and portable terminal employing the method | |
KR101273914B1 (en) | terminal having a platform library dynamic linking function and controlling method for the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
N231 | Notification of change of applicant | ||
WITN | Withdrawal due to no request for examination |