KR20070046500A - 프로그램 업데이트 방법 및 이를 수행하는 영상처리장치 - Google Patents

프로그램 업데이트 방법 및 이를 수행하는 영상처리장치 Download PDF

Info

Publication number
KR20070046500A
KR20070046500A KR1020050103278A KR20050103278A KR20070046500A KR 20070046500 A KR20070046500 A KR 20070046500A KR 1020050103278 A KR1020050103278 A KR 1020050103278A KR 20050103278 A KR20050103278 A KR 20050103278A KR 20070046500 A KR20070046500 A KR 20070046500A
Authority
KR
South Korea
Prior art keywords
program
update
shell
file
service
Prior art date
Application number
KR1020050103278A
Other languages
English (en)
Other versions
KR100719131B1 (ko
Inventor
박재성
강춘운
곽기원
정민우
이대현
천시영
Original Assignee
삼성전자주식회사
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020050103278A priority Critical patent/KR100719131B1/ko
Publication of KR20070046500A publication Critical patent/KR20070046500A/ko
Application granted granted Critical
Publication of KR100719131B1 publication Critical patent/KR100719131B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

서비스 품질을 향상시킬 수 있는 프로그램 업데이트 방법 및 이를 수행하는 영상처리장치를 개시한다. 영상처리장치는 셸 프로그램의 업데이트와 서비스 프로그램의 업데이트를 분리하여, 부팅시에는 셸 프로그램의 업데이트만을 실행함으로써, 업데이트로 인해 부팅 시간이 연장되는 것을 방지할 수 있다. 또한, 셸 프로그램 업데이트 시, 업데이트 파일을 리부팅이 필요하는 파일 및 리부팅이 필요하지 않는 파일로 분리함으로써, 업데이트로 인한 리부팅을 최소화 할 수 있으므로, 영상처리장치는 서비스 품질을 향상시킬 수 있다.
업데이트, 프로그램

Description

프로그램 업데이트 방법 및 이를 수행하는 영상처리장치{Method of updating program and displaying processing apparatus thereof}
도 1은 본 발명의 일실시예에 따른 셉톱 박스를 개략적으로 도시한 블럭도이다.
도 2는 도 1에 도시된 메모리에 저장된 버전 정보의 일례를 개념적으로 나타낸 도면이다.
도 3은 본 발명의 일실시예에 따른 셋탑 박스에서 프로그램을 업데이트 하는 과정을 나타낸 흐름도이다.
도 4는 도 2에 도시된 서비스 프로그램을 실행하는 과정을 나타낸 흐름도이다.
* 도면의 주요부분에 대한 부호의 설명 *
100 : 셋톱 박스 200 : 안테나
300 : 텔레비전 400 : 통신망
500 : 프로그램 서비스 시스템
본 발명은 프로그램 업데이트 방법 및 이를 수행하는 영상처리장치에 관한 것으로, 보다 상세하게는, 서비스 품질을 향상시키기 위한 프로그램 업데이트 방법 및 이를 수행하는 영상처리장치에 관한 것이다.
셋톱 박스(Set top box) 및 텔레비전은 방송 신호를 수신하여 영상을 표시하는 영상처리장치이다. 최근, 디지털 기술이 발전함에 따라, 컴퓨터와 유사한 기능을 하도록 소정의 연산처리를 할 수 있는 프로세서 및 롬(read only memory : ROM)을 내장하는 임베디드(embedded) 시스템이 셋톱 박스나 디지털 텔레비전에 적용되고 있다.
임베디드 시스템이 적용된 셋톱 박스는 사용자에게 다양한 서비스를 제공하는 프로그램들을 내장한다. 각 프로그램들은 최상의 서비스를 제공하기 위해 정기적 또는 비정기적으로 최신 버전의 프로그램으로 업데이트 된다. 프로그램을 업데이트하는 과정은, 먼저, 통신망을 통해 업데이트 파일을 다운로드하고, 다운로드한 파일을 이용하여 프로그램을 최신 버전으로 업데이트한다. 프로그램이 업데이트되면, 셉톱 박스는 리부팅된다.
이와 같이, 내장된 프로그램이 업데이트 될 때마다 셋톱 박스가 리부팅된다. 특히, 통합 패키지의 형태로 업데이트 파일이 다운로드 되기 때문에, 리부팅이 필요 없는 프로그램의 리소스를 업데이트하는 경우에도 셉톱 박스가 리부팅된다. 이와 같이, 업데이트 될 때마다 셋톱 박스가 리부팅되기 때문에, 사용자의 대기 시간이 길어지고, 이로 인해, 서비스 품질이 저하된다.
또한, 업데이트는 각 프로그램별로 그 시기가 다르며, 셋톱 박스의 구동이 시작될 때마다 내장된 모든 프로그램에 대한 업데이트 필요 여부를 검사하기 때문에, 셉톱 박스의 로딩 시간이 지연되고, 이로 인해, 서비스 품질이 저하된다.
본 발명의 목적은 프로그램 업데이트 시 리부팅을 최소화하여 서비스 품질을 향상시킬 수 있는 프로그램 업데이트 방법을 제공하는 것이다.
또한, 본 발명의 목적은 상기한 프로그램 업데이트 방법을 수행할 수 있는 영상처리장치를 제공하는 것이다.
상기한 본 발명의 목적을 실현하기 위한 하나의 특징에 따른 영상처리장치에서 프로그램을 업데이트하는 방법은, (a) 상기 영상처리장치가 구동되면, 상기 영상처리장치에 내장된 셸 프로그램에 대응하는 현재 버전 보다 업그레이드된 버전을 나타내는 업데이트 버전 정보를 확인하는 단계, (b) 상기 셸 프로그램에 대응하는 업데이트 버전 정보가 존재하면, 상기 셸 프로그램을 업데이트하기 위한 셸 업데이트 파일을 메모리부터 추출하여 상기 셸 프로그램을 갱신하는 단계, (c) 상기 셸 프로그램에 대응하는 업데이트 버전 정보가 존재하지 않고, 상기 셸 프로그램의 현재 버전이 상기 셸 프로그램의 최신 버전과 서로 다르면, 상기 통신망을 통해 상기 셸 업데이트 파일을 다운로드하는 단계, (d) 상기 수신된 셸 업데이트 파일의 종류에 따라 상기 셸 프로그램의 업데이트를 시기를 결정하여 셸 프로그램을 업데이트 하는 단계, (e) 상기 셸 프로그램을 업데이트하기 이전 파일을 백업하는 단계, 및 (f) 상기 영상처리장치에 내장된 서비스 프로그램을 실행하는 단계를 포함한다.
바람직하게는, 상기 단계(d)는, (d-1) 상기 수신된 셸 업데이트 파일이 상기 셸 프로그램의 실행 관련 파일이면, 다음 부팅때 상기 셸 프로그램을 업데이트 하도록 상기 수신된 셸 업데이트 파일을 저장하고, 셸 업데이트 파일에 대응하는 버전 정보를 상기 셸 프로그램에 대응하는 업데이트 버전 정보로 저장하는 단계, 및 (d-2) 상기 수신된 셸 업데이트 파일이 상기 셸 프로그램의 실행과 무관한 파일이면, 상기 수신된 셀 업데이트 파일을 이용하여 상기 셸 프로그램을 업데이트 하는 단계를 포함한다.
보다 바람직하게는, 상기 수신된 셸 업데이트 파일이 상기 셸 프로그램의 실행과 무관한 파일 중 상기 셸 프로그램의 버그를 수정하는 파일이면, 상기 셸 프로그램을 업데이트 한 후 상기 영상처리장치를 리부팅하고, 상기 수신된 셸 업데이트 파일이 상기 셸 프로그램의 리소스 파일 및 이미지 파일 중 어느 하나이면, 상기 셸 프로그램을 업데이트 한 후 현재 상태를 유지하며, 상기 저장된 셸 업데이트 파일이 상기 셸 프로그램의 실행 관련 프로그램이면, 상기 셸 프로그램을 업데이트 한 후 상기 영상처리장치를 리부팅한다.
또한, 단계(f)는, (f-1) 상기 서비스 프로그램이 실행되면, 상기 서비스 프로그램에 대응하는 업데이트 버전 정보를 확인하는 단계, (f-2) 상기 서비스 프로그램에 대응하는 업데이트 버전 정보가 존재하면, 상기 서비스 프로그램에 대응하는 업데이트 파일을 메모리부터 추출하여 상기 서비스 프로그램을 갱신하는 단계, (f-3) 상기 서비스 프로그램에 대응하는 업데이트 버전 정보가 존재하지 않고, 상기 서비스 프로그램의 현재 버전이 상기 서비스 프로그램의 최신 버전과 서로 다르 면, 상기 통신망을 통해 상기 서비스 프로그램에 대응하는 업데이트 파일을 다운로드하는 단계, (f-4) 상기 수신된 업데이트 파일이 상기 서비스 프로그램의 실행 관련 파일이면, 상기 수신된 업데이트 파일을 메모리에 저장하고, 상기 서비스 프로그램에 대응하는 업데이트 버전 정보를 상기 서비스 프로그램의 최신 버전으로 변경하는 단계, (f-5) 상기 수신된 업데이트 파일이 상기 서비스 프로그램의 실행과 무관한 파일이면, 상기 수신된 업데이트 파일을 이용하여 상기 서비스 프로그램을 업데이트 하는 단계, 및 (f-6) 상기 서비스 프로그램을 업데이트하기 이전 파일을 백업하는 단계를 포함한다.
또한, 상기한 본 발명의 목적을 실현하기 위한 하나의 특징에 따른 영상처리장치는, 영상 신호를 디코딩하여 출력하는 영상 처리부; 통신망에 연결되어 데이터를 송수신하는 신호 송수신부; 셀 프로그램 및 서비스 프로그램을 저장하고, 상기 셀 프로그램 및 상기 서비스 프로그램에 대응하는 버전 정보, 상기 셀 프로그램 및 상기 서비스 프로그램을 업데이트 하기 위한 업데이트 파일, 및 상기 셀 프로그램 및 상기 서비스 프로그램의 백업 파일을 저장하는 메모리; 및 상기 신호 송수신부로부터 수신된 상기 업데이트 파일을 상기 메모리에 저장하고, 상기 업데이트 파일을 이용하여 상기 셀 프로그램 및 상기 서비스 프로그램의 업데이트를 수행하는 제어부를 포함한다.
이러한 프로그램 업데이트 방법 및 이를 수행하는 영상처리장치에 의하면, 업데이트 시마다 리부팅을 할 필요가 없으므로, 업데이트에 소요되는 시간을 감소시킬 수 있고, 이에 따라, 서비스 품질을 향상시킬 수 있다.
이하, 첨부한 도면을 참조하여, 본 발명을 보다 상세하게 설명하고자 한다.
도 1은 본 발명의 일실시예에 따른 셋톱 박스를 개략적으로 도시한 블럭도이다.
도 1을 참조하면, 본 발명에 따른 셋톱 박스(Set Top Box)(100)는 튜너(105), 디멀티플렉서(110), 음성 처리부(115), 영상 처리부(120), 입력부(125), 신소 송수신부(130), 메모리(135) 및 제어부(140)를 포함한다.
구체적으로, 튜너(105)는 다수의 채널 중에서 임의의 채널을 입력 채널로 설정하고, 입력 채널에 대응하는 방송 신호를 외부의 안테나(200)로부터 수신하여 디멀티플렉서(110)에 제공한다.
디멀티플렉서(110)는 튜너(105)로부터 수신된 방송 신호를 영상 신호 및 음성 신호로 분리하여 음성 처리부(115) 및 영상 처리부(120)에 제공한다.
음성 처리부(115)는 디멀티플렉서(110)로부터 수신된 음성 신호를 디코딩하여 출력하고, 영상 처리부(125)는 디멀티플렉서(110)로부터 수신된 영상 신호를 디코딩하여 출력한다.
음성 처리부(115) 및 영상 처리부(120)로부터 각각 출력된 음성 신호 및 영상 신호는 셋톱 박스(100)에 연결된 텔레비전(300)에 제공된다. 텔레비전(300)은 셋톱 박스(100)로부터 수신된 영상 신호에 대응하는 영상을 표시하고, 음성 신호에 대응하는 음성을 출력한다. 또한, 텔레비전(300)은 셋톱 박스를 경유하지 않고, 텔레비전(300)과 연결된 안테나로부터 방송 신호를 수신하여 방송 신호에 대응하는 영상 및 음성을 각각 출력할 수도 있다.
한편, 입력부(125)는 사용자의 조작에 따라 입력 신호를 생성하여 제어부(140)에 제공한다. 예컨대, 입력부(125)는 튜너(105)의 입력 채널을 변경하는 채널 변경 요청이나 셋톱 박스(100)에 내장된 서비스 프로그램을 실행하는 프로그램 실행 요청 등의 입력 신호를 생성한다. 입력부(125)는 셋톱 박스(100)의 본체에 일체로 구비되는 키 패드일 수도 있고, 셋톱 박스(100)의 본체로부터 분리되어 구비되는 리모트 컨트롤러일 수도 있다.
신호 송수신부(130)는 인터넷과 같이 통신망(400)에 연결되어 통신망(400)에 연결된 외부의 장치와 데이터를 송수신한다. 여기서, 신호 송수신부(130)가 인터넷에 연결되면, 셋톱 박스(100)는 인터넷 서비스를 제공할 수 있다. 특히, 신호 송수신부(130)는 통신망(400)을 통해 프로그램 서비스 시스템(500)과 연결되어 프로그램 서비스 시스템(500)으로부터 데이터를 수신한다.
여기서, 프로그램 서비스 시스템(500)은 업데이트 서버(510) 및 다운로드 서버(520)를 구비한다. 업데이트 서버(510)는 셋톱 박스(100)에 내장된 각 프로그램을 업데이트하기 위한 업데이트 파일을 각 프로그램을 제공하는 서비스 운용 시스템(미도시)으로부터 수신한다. 업데이트 서버(510)는 서비스 운용 시스템으로부터 수신된 업데이트 파일을 다운로드 서버(520)에 제공하고, 셋톱 박스(100)에 업데이트 파일을 제공하도록 다운로드 서버(520)를 제어한다. 또한, 업데이트 서버(510)는 각 프로그램별 최신 버전 정보를 포함하는 프로그램 최신 버전 정보를 생성하여 다운로드 서버(520)에 저장한다.
다운로드 서버(520)는 업데이트 서버(510)로부터 수신된 업데이트 파일을 저 장하고, 업데이트 서버(510)의 제어에 따라 저장된 업데이트 파일을 셋톱 박스(100)에 저장한다. 도 1에 도시된 프로그램 서비스 시스템(500)은 하나의 셋톱 박스(100)와 연결되나, 프로그램 서비스 시스템(500)은 통신망(400)에 연결된 다수의 셋톱 박스와 연결되어 각 셋톱 박스에 업데이트 파일을 제공한다.
한편, 메모리(135)는 셋톱 박스(100)의 구동에 필요한 데이터 및 셋톱 박스(100)에서 구동되는 프로그램들을 저장한다. 여기서, 셋톱 박스(100)에서 구동되는 프로그램(100)은 셋톱 박스(100) 구동시 메인으로 구동하는 셸 프로그램, 및 셋톱 박스(100)에서 제공하는 서비스 프로그램, 예컨대, 사진관련 서비스를 제공하는 포토 프로그램, 영화관련 서비스를 제공하는 영화 프로그램 등이 있다.
메모리(135)는 신호 송수신부(130)로부터 수신된 업데이트 파일, 각 프로그램에 대응하는 업데이트 리스트를 나타내는 업데이트 리스트 정보, 및 각 프로그램별 버전 관련 정보를 나타내는 버전 정보를 저장한다. 여기서, 업데이트 리스트는 각 프로그램별로 생성되며, 각 프로그램에 대응하는 업데이트 파일의 리스트이다.
도 2는 도 1에 도시된 메모리에 저장된 버전 정보의 일례를 개념적으로 나타낸 도면이다.
도 2를 참조하면, 버전 정보(VF)는 프로그램명 정보(F1), 현재 버전 정보(F2), 업데이트 버전 정보(F3) 및 메타 파일 정보(F4)를 포함한다.
구체적으로, 프로그램명 정보(F1)는 각 프로그램의 프로그램 명칭을 나타낸다.
현재 버전 정보(F2)는 각 프로그램에 대응하는 현재 버전을 나타내고, 업데 이트 버전 정보(F3)는 각 프로그램에 대응하는 업그레이드 버전을 나타낸다. 업데이트 버전 정보(F3)는 셋톱 박스(100)가 이전 부팅시 다운로드 하여 메모리(135)에 저장한 업데이트 파일이 존재하는 경우에 생성된다. 즉, 업데이트 버전 정보(F3)는 다운로드한 업데이트 파일을 이용하여 업데이트가 이루어지지 않은 경우에 생성된다.
메타 파일 정보(F4)는 업데이트 버전 정보(F3)에 대응하여 생성되며, 각 프로그램에 대응하여 생성된 업데이트 리스트 정보를 저장한 파일의 주소를 나타낸다. 즉, 메타 파일 정보(F4)는 각 프로그램의 업데이트 리스트 정보에 대응하는 링크 정보를 저장한다.
저장된 업데이트 파일을 이용하여 업데이트가 이루어지면, 업데이트 버전 정보(F3) 및 메타 파일 정보(F4)는 삭제되고, 현재 버전 정보(F2)는 업데이트 버전 정보(F3)로 갱신된다.
다시, 도 1을 참조하면, 메모리(135)는 각 프로그램에 대응하는 업데이트 히스토리를 인지할 수 있도록 각 프로그램의 업데이트 바로 이전 파일, 즉, 백업 파일을 저장한다.
제어부(140)는 입력부(125)로부터 수시된 입력 신호에 대응하여 튜너(105), 음성 처리부(115), 영상 처리부(120) 및 메모리(135)를 제어하는 제어 신호를 생성하고, 생성된 제어 신호를 해당 구성 요소에 제공한다. 즉, 제어부(140)는 입력부(125)로부터 채널을 변경하는 입력 신호가 수신되면, 현재 입력 채널을 입력 신호에 대응하는 채널로 변경한다.
특히, 제어부(140)는 신호 송수신부(130)에 수신된 업데이트 파일을 메모리(135)에 저장하고, 업데이트 파일을 이용하여 해당 프로그램을 업데이트한다. 제어부(140)는 업데이트 파일에 대응하는 프로그램의 업데이트 리스트 정보를 생성하여 메모리(135)에 저장하고, 백업 파일을 다른 파일들과 분리하여 메모리(135)에 저장한다. 제어부(140)는 각 프로그램의 업그레이드 버전에서 에러가 발생하면 백업 파일을 이용하여 프로그램을 이전 버전으로 되돌린다.
이와 같이, 셋톱 박스(100)는 프로그램의 업그레이드 버전에서 에러가 발생하거나, 또는 사용자의 요청에 따라 프로그램을 이전 버전으로 되돌릴 수 있으므로, 서비스 품질을 향상시킬 수 있다.
도 2는 본 발명의 일실시예에 따른 셋탑 박스에서 프로그램을 업데이트 하는 과정을 나타낸 흐름도이다.
도 1 및 도 2를 참조하면, 먼저, 셋톱 박스(100)의 전원이 켜지면, 제어부(140)는 셸 프로그램을 구동하고, 프로그램 최신 버전 정보를 업데이트 서버(510)에 요청한다. 신호 송수신부(130)는 업데이트 서버(510)로부터 통신망(400)을 통해 프로그램 최신 버전 정보를 수신하고, 제어부(140)는 수신된 프로그램 최신 버전 정보를 메모리(135)에 저장한다(단계 S610).
이어, 제어부(140)는 메모리(135)에 저장된 업데이트 버전 정보(F3)를 참조하여 셸 프로그램의 업데이트 버전 정보가 존재하는지를 판단한다(단계 S620).
단계 S620에서, 셸 프로그램에 대응하는 업데이트 버전 정보가 존재하지 않으면, 제어부(140)는 프로그램 최신 버전 정보로부터 셸 프로그램의 최신 버전 정 보를 추출하고, 버전 정보(VF)(도 2)로부터 셸 프로그램의 현재 버전 정보를 추출한 후, 셸 프로그램의 현재 버전이 셸 프로그램의 최신 버전과 동일한지를 비교한다(단계 S630).
단계 S630에서, 셸 프로그램의 현재 버전이 최신 버전과 서로 다르면, 제어부(140)는 신호 송수신부(130)를 통해 업데이트 서버(510)로 셸 프로그램에 대응하는 업데이트 파일을 요청한다. 신호 송수신부(130)는 통신망(400)을 통해 다운로드 서버(520)로부터 업데이트 파일을 다운로드한다(단계 S650).
이어, 제어부(140)는 다운로드한 업데이트 파일에 따라 셸 프로그램의 업데이트를 바로 실행할지 아니면, 다음 부팅때 실행할지 여부를 결정한다(단계 S650).
단계 S650에서, 다운로드한 업데이트 파일이 셸 프로그램의 버그를 정정하는 패치 파일과 같이 긴급 파일이거나, 셸 프로그램의 실행과 무관한 파일, 예컨대, 이미지 파일 및 리소스 파일이면, 제어부(140)는 다운로드한 업데이트 파일을 이용하여 셸 프로그램의 업데이트를 실행한다(단계 S660).
한편, 단계 S620에서 셸 프로그램의 업데이트 버전 정보가 존재하면, 제어부(140)는 메모리(140)에 기 저장된 셸 프로그램의 업데이트 파일을 이용하여 셸 프로그램의 업데이트를 실행한다(단계 S660). 구체적으로, 제어부(140)는 버전 정보(VF)(도 2 참조)로부터 셸 프로그램에 대응하는 메타 파일 정보를 참조하여 셸 프로그램의 업데이트 리스트 정보를 추출한다. 이어, 제어부(140)는 셸 프로그램의 업데이트 리스트 정보를 참조하여 메모리(135)에 저장된 셸 프로그램의 업데이트 파일을 추출하고, 추출된 업데이트 파일을 이용하여 업데이트를 실행한다. 여기서, 메모리(135)에 저장된 셸 프로그램의 업데이트 파일은 셋톱 박스(100)가 이전 부팅시에 다운로드한 업데이트 파일이다.
단계 S660에 이어, 제어부(140)는 셸 프로그램의 업데이트 파일의 종류에 따라 셋톱 박스(100)의 리부팅 여부를 판단한다(단계 S670).
단계 S660에서, 업데이트 파일이 긴급 파일이거나, 셸 프로그램의 실행 관련 파일, 예컨대, 실행 파일이나 DLL(dynamic linking library) 파일이면, 제어부(140)는 셋톱 박스(100)를 리부팅한다(단계 S680). 여기서, 긴급 파일은 단계 S640에서 다운로드한 파일이며, 실행 관련 파일은 이전 부팅에서 다운로드한 파일이다.
한편, 단계 S650에서, 다운로드한 업데이트 파일이 실행 관련 파일이면, 제어부(140)는 다운로드한 업데이트 파일을 메모리(135)에 저장하고, 셸 프로그램에 대응하는 업데이트 리스트를 갱신한다(단계 S690).
단계 S680 및 단계 S690에 이어, 제어부(140)는 셸 프로그램에 대응하는 현재 버전 정보, 업데이트 버전 정보 및 메타 파일 정보를 갱신하고, 셸 프로그램의 업데이트 이전 파일을 백업한다(단계 S690). 구체적으로, 메모리에 저장된 업데이트 파일을 이용하여 셸 프로그램을 업데이트 한 경우에는, 제어부(140)는 셸 프로그램에 대응하는 현재 버전을 업데이트 버전으로 갱신하고, 업데이트 버전 정보 및 메타 파일 정보를 삭제한다. 이와 달리, 셸 프로그램의 업데이트를 실행하지 않고 다운로드한 업데이트 파일을 메모리에 저장한 경우에는 제어부(140)는 셸 프로그램의 최신 버전 정보를 셸 프로그램에 대응하는 업데이트 버전 정보로 저장하고, 메타 파일을 갱신한다.
단계 S630에서 셸 프로그램의 현재 버전이 최신 버전과 동일한 경우 및 단계 S710에 이어, 제어부(140)는 사용자의 조작에 따라 선택된 서비스 프로그램을 실행한다(단계 S720).
도 4는 도 2에 도시된 서비스 프로그램을 실행하는 과정을 나타낸 흐름도이다.
도 1 및 조 4를 참조하면, 먼저, 제어부(140)는 메모리(135)에 저장된 업데이트 버전 정보(F3)를 참조하여 현재 실행된 서비스 프로그램에 대응하는 업데이트 버전 정보가 존재하는지를 판단한다(단계 S721).
단계 S721에서, 서비스 프로그램에 대응하는 업데이트 버전 정보가 존재하지 않으면, 제어부(140)는 프로그램 최신 버전 정보로부터 서비스 프로그램의 최신 버전 정보를 추출하고, 버전 정보(VF)(도 2)로부터 서비스 프로그램의 현재 버전 정보를 추출한 후, 서비스 프로그램의 현재 버전이 서비스 프로그램의 최신 버전과 동일한지를 비교한다(단계 S722).
단계 S722에서, 서비스 프로그램의 현재 버전이 최신 버전과 서로 다르면, 제어부(140)는 신호 송수신부(130)를 통해 업데이트 서버(510)로 서비스 프로그램에 대응하는 업데이트 파일을 요청한다. 신호 송수신부(130)는 통신망(400)을 통해 다운로드 서버(520)로부터 서비스 프로그램에 대응하는 업데이트 파일을 다운로드한다(단계 S723).
이어, 제어부(140)는 다운로드한 업데이트 파일에 따라 서비스 프로그램의 업데이트를 바로 실행할지 아니면, 다음번에 서비스 프로그램을 실행할 때 업데이 트를 실행할지 여부를 결정한다(단계 S724).
단계 S724에서, 다운로드한 업데이트 파일이 서비스 프로그램의 실행과 무관한 파일, 예컨대, 이미지 파일 및 리소스 파일이면, 제어부(140)는 다운로드한 업데이트 파일을 이용하여 서비스 프로그램의 업데이트를 실행한다(단계 S725).
한편, 단계 S721에서 서비스 프로그램의 업데이트 버전 정보가 존재하면, 제어부(140)는 메모리(135)에 기 저장된 서비스 프로그램의 업데이트 파일을 이용하여 서비스 프로그램의 업데이트를 실행한다(단계 S725). 구체적으로, 제어부(140)는 버전 정보(VF)(도 2 참조)로부터 서비스 프로그램에 대응하는 메타 파일 정보를 참조하여 서비스 프로그램의 업데이트 리스트 정보를 추출한다. 이어, 제어부(140)는 서비스 프로그램의 업데이트 리스트 정보를 참조하여 메모리(135)에 저장된 서비스 프로그램의 업데이트 파일을 추출하고, 추출된 업데이트 파일을 이용하여 업데이트를 실행한다. 여기서, 메모리(135)에 저장된 서비스 프로그램의 업데이트 파일은 서비스 프로그램이 이전에 실행됐을 때 다운로드한 업데이트 파일이다.
단계 S724에서, 다운로드한 업데이트 파일이 실행 관련 파일이면, 제어부(140)는 다운로드한 업데이트 파일을 메모리(135)에 저장하고, 서비스 프로그램에 대응하는 업데이트 리스트를 갱신한다(단계 S726).
단계 S725 및 단계 S726에 이어, 제어부(140)는 서비스 프로그램에 대응하는 현재 버전 정보, 업데이트 버전 정보 및 메타 파일 정보를 갱신하고, 서비스 프로그램의 업데이트 이전 파일을 백업한다(단계 S727). 구체적으로, 메모리에 저장된 업데이트 파일을 이용하여 서비스 프로그램을 업데이트 한 경우에는, 제어부(140) 는 서비스 프로그램에 대응하는 현재 버전을 업데이트 버전으로 갱신하고, 업데이트 버전 정보 및 메타 파일 정보를 삭제한다. 이와 달리, 서비스 프로그램의 업데이트를 실행하지 않고 다운로드한 업데이트 파일을 메모리에 저장한 경우에는, 제어부(140)는 서비스 프로그램의 최신 버전 정보를 서비스 프로그램에 대응하는 업데이트 버전 정보로 저장하고, 메타 파일 정보를 갱신한다.
이어, 제어부(140)는 서비스 프로그램을 실행하여 서비스 프로그램에 대응하는 영상 및 음성을 출력한다(단계 S728).
이와 같이, 셋톱 박스(100)는 서비스 프로그램이 실행되는 과정에서 해당 서비스 프로그램의 업데이트를 실행한다. 또한, 업데이트 파일이 서비스 프로그램의 재시작을 요구하는 파일인 경우. 셋톱 박스는 업데이트 파일을 저장한 후, 해당 서비스 프로그램이 다음번에 실행될 때 해당 서비스 프로그램의 업데이트를 실행한다. 이에 따라, 셋톱 박스(100)는 서비스 프로그램의 업데이트에 소요되는 시간을 단축할 수 있다.
또한, 셋톱 박스(100)는 셸 프로그램의 업데이트와 서비스 프로그램의 업데이트를 분리하여, 부팅시에는 셸 프로그램의 업데이트만을 실행함으로써, 업데이트로 인해 부팅 시간이 연장되는 것을 방지할 수 있다. 이에 따라, 셋톱 박스(100)는 서비스 품질을 향상시킬 수 있다.
상술한 본 발명에 따르면, 셋톱 박스는 셸 프로그램의 업데이트와 서비스 프로그램의 업데이트를 분리하여, 부팅시에는 셸 프로그램의 업데이트만을 실행함으 로써, 업데이트로 인해 부팅 시간이 연장되는 것을 방지할 수 있다. 또한, 셸 프로그램 업데이트 시, 업데이트 파일을 리부팅이 필요하는 파일 및 리부팅이 필요하지 않는 파일로 분리함으로써, 셋톱 박스는 업데이트로 인한 리부팅을 최소화 할 수 있다. 이에 따라, 셋톱 박스는 서비스 품질을 향상시킬 수 있다.
또한, 서비스 프로그램이 실행되는 과정에서 해당 서비스 프로그램의 업데이트를 실행하고, 업데이트 파일이 서비스 프로그램의 재시작을 요구하는 파일인 경우. 셋톱 박스는 업데이트 파일을 저장한 후, 해당 서비스 프로그램이 다음번에 실행될 때 해당 서비스 프로그램의 업데이트를 실행한다. 이에 따라, 셋톱 박스는 서비스 프로그램의 업데이트에 소요되는 시간을 단축할 수 있으므로, 서비스 품질을 향상시킬 수 있다.
이상에서는 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (6)

  1. 통신망과 연결된 영상처리장치에서 내장된 프로그램을 업데이트하는 방법에 있어서,
    (a) 상기 영상처리장치가 구동되면, 상기 영상처리장치에 내장된 셸 프로그램의 현재 버전 보다 업그레이드된 버전을 나타내는 업데이트 버전 정보를 확인하는 단계;
    (b) 상기 셸 프로그램에 대응하는 업데이트 버전 정보가 존재하면, 상기 셸 프로그램을 업데이트하기 위한 셸 업데이트 파일을 메모리부터 추출하여 상기 셸 프로그램을 갱신하는 단계;
    (c) 상기 셸 프로그램에 대응하는 업데이트 버전 정보가 존재하지 않고, 상기 셸 프로그램의 현재 버전이 상기 셸 프로그램의 최신 버전과 서로 다르면, 상기 통신망을 통해 상기 셸 업데이트 파일을 다운로드하는 단계; 및
    (d) 상기 수신된 셸 업데이트 파일의 종류에 따라 상기 셸 프로그램의 업데이트를 시기를 결정하여 셸 프로그램을 업데이트 하는 단계를 포함하는 것을 특징으로하는 프로그램 업데이트 방법.
  2. 제1항에 있어서, 상기 단계(d)는,
    (d-1) 상기 수신된 셸 업데이트 파일이 상기 셸 프로그램의 실행 관련 파일이면, 다음 부팅때 상기 셸 프로그램을 업데이트 하도록 상기 수신된 셸 업데이트 파일을 저장하고, 셸 업데이트 파일에 대응하는 버전 정보를 상기 셸 프로그램에 대응하는 업데이트 버전 정보로 저장하는 단계; 및
    (d-2) 상기 수신된 셸 업데이트 파일이 상기 셸 프로그램의 실행과 무관한 파일이면, 상기 수신된 셀 업데이트 파일을 이용하여 상기 셸 프로그램을 업데이트 하는 단계를 포함하는 것을 특징으로 하는 프로그램 업데이트 방법.
  3. 제2항에 있어서,
    상기 수신된 셸 업데이트 파일이 상기 셸 프로그램의 실행과 무관한 파일 중 상기 셸 프로그램의 버그를 수정하는 파일이면, 상기 셸 프로그램을 업데이트 한 후 상기 영상처리장치를 리부팅하고,
    상기 수신된 셸 업데이트 파일이 상기 셸 프로그램의 리소스 파일 및 이미지 파일 중 어느 하나이면, 상기 셸 프로그램을 업데이트 한 후 현재 상태를 유지하며,
    상기 저장된 셸 업데이트 파일이 상기 셸 프로그램의 실행 관련 프로그램이면, 상기 셸 프로그램을 업데이트 한 후 상기 영상처리장치를 리부팅하는 것을 특징으로 하는 프로그램 업데이트 방법.
  4. 제1항에 있어서,
    (e) 상기 셸 프로그램을 업데이트하기 이전 파일을 백업하는 단계; 및
    (f) 상기 영상처리장치에 내장된 서비스 프로그램을 실행하는 단계를 더 포 함하는 것을 특징으로 하는 프로그램 업데이트 방법.
  5. 제4항에 있어서, 상기 단계(f)는,
    (f-1) 상기 서비스 프로그램이 실행되면, 상기 서비스 프로그램에 대응하는 업데이트 버전 정보를 확인하는 단계;
    (f-2) 상기 서비스 프로그램에 대응하는 업데이트 버전 정보가 존재하면, 상기 서비스 프로그램에 대응하는 업데이트 파일을 메모리부터 추출하여 상기 서비스 프로그램을 갱신하는 단계;
    (f-3) 상기 서비스 프로그램에 대응하는 업데이트 버전 정보가 존재하지 않고, 상기 서비스 프로그램의 현재 버전이 상기 서비스 프로그램의 최신 버전과 서로 다르면, 상기 통신망을 통해 상기 서비스 프로그램에 대응하는 업데이트 파일을 다운로드하는 단계;
    (f-4) 상기 수신된 업데이트 파일이 상기 서비스 프로그램의 실행 관련 파일이면, 상기 서비스 프로그램이 다음에 실행될 때 상기 서비스 프로그램을 업데이트 하도록 상기 수신된 업데이트 파일을 메모리에 저장하고, 상기 서비스 프로그램에 대응하는 업데이트 버전 정보를 상기 서비스 프로그램의 최신 버전으로 변경하는 단계;
    (f-5) 상기 수신된 업데이트 파일이 상기 서비스 프로그램의 실행과 무관한 파일이면, 상기 수신된 업데이트 파일을 이용하여 상기 서비스 프로그램을 업데이트 하는 단계; 및
    (f-6) 상기 서비스 프로그램을 업데이트하기 이전 파일을 백업하는 단계를 포함하는 것을 특징으로 하는 프로그램 업데이트 방법.
  6. 영상 신호를 디코딩하여 출력하는 영상 처리부;
    통신망에 연결되어 데이터를 송수신하는 신호 송수신부;
    셸 프로그램 및 서비스 프로그램을 저장하고, 상기 셸 프로그램 및 상기 서비스 프로그램에 대응하는 버전 정보, 상기 셸 프로그램 및 상기 서비스 프로그램을 업데이트 하기 위한 업데이트 파일, 및 상기 셸 프로그램 및 상기 서비스 프로그램의 백업 파일을 저장하는 메모리; 및
    상기 신호 송수신부로부터 수신된 상기 업데이트 파일을 상기 메모리에 저장하고, 상기 업데이트 파일을 이용하여 상기 셸 프로그램 및 상기 서비스 프로그램의 업데이트를 수행하는 제어부를 포함하는 것을 특징으로 하는 영상처리장치.
KR1020050103278A 2005-10-31 2005-10-31 프로그램 업데이트 방법 및 이를 수행하는 영상처리장치 KR100719131B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050103278A KR100719131B1 (ko) 2005-10-31 2005-10-31 프로그램 업데이트 방법 및 이를 수행하는 영상처리장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050103278A KR100719131B1 (ko) 2005-10-31 2005-10-31 프로그램 업데이트 방법 및 이를 수행하는 영상처리장치

Publications (2)

Publication Number Publication Date
KR20070046500A true KR20070046500A (ko) 2007-05-03
KR100719131B1 KR100719131B1 (ko) 2007-05-17

Family

ID=38271835

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050103278A KR100719131B1 (ko) 2005-10-31 2005-10-31 프로그램 업데이트 방법 및 이를 수행하는 영상처리장치

Country Status (1)

Country Link
KR (1) KR100719131B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8914137B2 (en) 2009-06-19 2014-12-16 Dolby Laboratories Licensing Corporation Upgradeable engine framework for audio and video
WO2020022610A1 (ko) * 2018-07-25 2020-01-30 삼성전자(주) 전자장치 및 그 제어방법
WO2024117412A1 (ko) * 2022-11-30 2024-06-06 주식회사 엘지에너지솔루션 디바이스 관리 시스템 및 이의 프로그램 관리 방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040090566A (ko) * 2003-04-17 2004-10-26 주식회사 팬택 무선통신단말기에서 스마트카드를 이용한 소프트웨어업그레이드 방법

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8914137B2 (en) 2009-06-19 2014-12-16 Dolby Laboratories Licensing Corporation Upgradeable engine framework for audio and video
US8984501B2 (en) 2009-06-19 2015-03-17 Dolby Laboratories Licensing Corporation Hierarchy and processing order control of downloadable and upgradeable media processing applications
WO2020022610A1 (ko) * 2018-07-25 2020-01-30 삼성전자(주) 전자장치 및 그 제어방법
KR20200011829A (ko) * 2018-07-25 2020-02-04 삼성전자주식회사 전자장치 및 그 제어방법
US11954502B2 (en) 2018-07-25 2024-04-09 Samsung Electronics Co., Ltd. Electronic apparatus and the control method thereof
WO2024117412A1 (ko) * 2022-11-30 2024-06-06 주식회사 엘지에너지솔루션 디바이스 관리 시스템 및 이의 프로그램 관리 방법

Also Published As

Publication number Publication date
KR100719131B1 (ko) 2007-05-17

Similar Documents

Publication Publication Date Title
US11216266B2 (en) Information processing apparatus and firmware updating method
US8719810B2 (en) Program upgrade system and method for over the air-capable mobile terminal
KR101287983B1 (ko) 분리형 신호 처리 장치 및 그 소프트웨어 컴포넌트의 버전갱신 방법
US20120102477A1 (en) Firmware update method and apparatus for a mobile device
JP4838338B2 (ja) 情報処理装置
KR20140126328A (ko) 애플리케이션 캐시를 사용하여 설치된 애플리케이션의 리소스를 업데이트하는 기법
US8799433B2 (en) Method and apparatus for upgrading software of digital broadcasting receiver
JP2008117405A (ja) ネットワーク上でソフトウェアを遠隔操作でアップグレードする方法
JP6156512B2 (ja) 通信装置、通信システム、通信方法および通信プログラム
US20080034362A1 (en) Program Acquisition and Execution Apparatus, and Program Acquisition and Execution Method
EP2400739A1 (en) Broadcast receiving apparatus and scheduling method thereof
US6895463B2 (en) Method and apparatus for efficiently running an execution image using volatile and non-volatile memory
KR100719131B1 (ko) 프로그램 업데이트 방법 및 이를 수행하는 영상처리장치
US20080209201A1 (en) Apparatus and method for updating boot logo image in portable terminal
EP2317435A1 (en) Electronic device and method for making upgraded firmware
US8788546B2 (en) Preloading resources from data carousel of broadcast file system
CN115269023A (zh) 程序更新方法、设备终端及存储介质
JP2018156521A (ja) 画像形成装置、情報処理端末、画像形成システム、プログラム及び言語切替方法
CN113721959A (zh) 一种信息处理方法、装置及电子设备
US20080022273A1 (en) Broadcast receiving apparatus and software updating method thereof
KR100679012B1 (ko) 디지털 방송 수신기의 업그레이드 방법 및 시스템
KR20030092684A (ko) 디지털 방송수신기에서의 운영 프로그램 갱신방법
KR100803136B1 (ko) 통합 파일을 다운로드 하는 방송 수신기 및 그 제어방법
JP2019133407A (ja) ファームウェア更新システムおよびファームウェア更新方法
CN110780943B (zh) 一种从设备统一固件的方法及系统

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130429

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140429

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150429

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160428

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170427

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee