KR100429903B1 - 홈 게이트웨이 시스템의 이미지 업데이트 방법 - Google Patents

홈 게이트웨이 시스템의 이미지 업데이트 방법 Download PDF

Info

Publication number
KR100429903B1
KR100429903B1 KR10-2001-0085845A KR20010085845A KR100429903B1 KR 100429903 B1 KR100429903 B1 KR 100429903B1 KR 20010085845 A KR20010085845 A KR 20010085845A KR 100429903 B1 KR100429903 B1 KR 100429903B1
Authority
KR
South Korea
Prior art keywords
kernel
image
boot
kernel image
version
Prior art date
Application number
KR10-2001-0085845A
Other languages
English (en)
Other versions
KR20030055767A (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 KR10-2001-0085845A priority Critical patent/KR100429903B1/ko
Publication of KR20030055767A publication Critical patent/KR20030055767A/ko
Application granted granted Critical
Publication of KR100429903B1 publication Critical patent/KR100429903B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/66Updates of program code stored in read-only memory [ROM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2807Exchanging configuration information on appliance services in a home automation network
    • H04L12/2814Exchanging control software or macros for controlling appliance services in a home automation network

Abstract

본 발명은 홈게이트웨이 시스템을 부팅하는 과정에서 부트로더(Boot Loader)와 리눅스 커널 이미지를 로딩(Loading)하고 자동으로 업데이트하는 홈 게이트웨이 시스템의 이미지 업데이트 방법에 관한 것으로, 커널 이미지 정보를 상기 홈 게이트웨이 시스템에 적용된 제1커널이미지와 갱신된 제2커널이미지로 분할하여 구비하는 단계; 상기 시스템에 전원이 인가되면 상기 부팅 정보에 기초하여 부팅을 한 후 상기 제1 및 제2커널이미지의 버전을 비교하는 단계; 상기 버전 비교 결과를 근거로 보다 상위의 버전을 가지는 커널 이미지로 커널 부팅을 수행하는 단계;를 포함하는 것을 특징으로 하며, 홈게이트웨이 시스템의 펌웨어 및 커널의 불편한 버전 관리를 해소하고 최신의 기능을 홈게이트웨이 시스템에 적용할 수 있다.

Description

홈 게이트웨이 시스템의 이미지 업데이트 방법 {Method for updating images in home gateway system}
본 발명은 홈게이트웨이 시스템을 부팅하는 과정에서 부트로더(Boot Loader)와 리눅스 커널 이미지를 로딩(Loading)하고 자동으로 업데이트하기 위한 부트 플래시 메모리와 응용 플래시 메로리의 데이터구조 및 방법에 관한 것으로, 특히 홈게이트웨이 시스템의 펌웨어 및 커널의 불편한 버전 관리를 해소하고 최신의 기능을 홈게이트웨이 시스템에 적용하기 위한 이미지 업데이트 방법에 관한 것이다.
기존의 홈게이트웨이 시스템 부팅을 위한 로딩 방법은 크게 네트워크에 접속되어 있는 서버로부터 커널 이미지를 다운로딩 받아 부팅하는 방법과 플래시 메모리에 퓨징되어 있는 커널 이미지를 메인 메모리에 로딩하여 부팅하는 방법이 있고, 커널 이미지를 업데이트하는 방법은 커널 이미지를 퓨징하는 기능이 구현된 경우에는 이메일을 통해 통보된 업데이트 정보에 따라 사용자가 복잡한 퓨징 절차를 수행해야 하는 번거로움이 있고, 커널 이미지를 퓨징하는 기능이 구현되어 있지 않은 경우에는 시스템 공급자에 의해서만 업데이트 되고, 특히 부트로더의 경우에는 시스템 공급자에 의해서만 업데이트 되는 방법이 있다.
네트워크에 접속되어 있는 서버로부터 커널 이미지를 다운로딩 받아 부팅하는 방법은 홈게이트웨이 시스템에 플래시 메모리를 내장하고 있지 않은 경우로 시스템을 재부팅 할 때마다 서버로부터 커널 이미지를 다운로딩 받아야 하는 번거로움이 존재하며, 네트워크에 트래픽이 많은 경우에는 홈게이트웨이 서버로부터 커널 이미지를 다운로딩 한 후에야 비로소 부팅을 할 수 있기 때문에 부팅하는데 어려움을 격을 수 있다. 하지만 커널 이미지의 업데이트는 서버에 업로딩 되는 동일한 버전을 사용하기 때문에 버전 관리가 쉬운 이점이 있다.
일반적인 방법은 플래시 메모리에 퓨징된 이미지를 메인 메모리에 로딩하여 부팅하는 방법으로 전원이 인가 되면, 부트로더에 의해 부팅이 시작되고 플래시 메모리에 퓨징된 커널 이미지를 메인 메모리에 로딩하여 커널 부팅을 완료한다. 이러한 방법을 이용하는 시스템에서 커널 이미지를 업데이트 하는 방법은 시스템 공급자에 의한 업데이트 방법과 플래시 메모리에 퓨징하는 유틸리티가 구현되어 있는 경우에는 이메일을 통해 사용자에게 업데이트를 통보하고 사용자가 서버에 접속하여 커널 이미지를 다운로딩 받고 퓨징 절차에 따라 플래시 메모리에 새로운 이미지를 퓨징해야 하는 번거로움이 있다.
홈게이트웨이 시스템은 어느 누구나 편리하고 쉽게 사용할 수 있는 시스템인데 비해 기존의 부팅을 위한 로딩 방법은 부트로더와 커널 이미지의 버전 관리가 어렵고 업데이트가 번거롭고 일반 사용자가 수행하기에는 어려움이 있다.
본 발명이 이루고자 하는 제1기술적 과제는 시스템 부팅 메모리와 커널 이미지 메모리를 이용하여 최신 버전으로 홈 게이트웨이 시스템을 자동 업데이트 할 수 있는 부트 플래시 장치를 제공하는데 있다.
본 발명이 이루고자 하는 제2기술적 과제는 부트 로더 이미지의 버전을 기록함으로써 최신 버전으로 홈게이트웨이 시스템을 업데이트할 수 있는 부트 플래시 메모리의 데이터 구조를 제공하는데 있다.
본 발명이 이루고자 하는 제3기술적 과제는 신구 버전의 각 커널 이미지를 비교할 수 있도록 각각 저장하고 최신 버전으로 시스템을 업데이트하면서 구버전의 커널 이미지를 신버전의 커널 이미지로 대치하여 저장할 수 있는 응용플래시 메모리의 데이터 구조를 제공하는데 있다.
본 발명이 이루고자 하는 제4기술적 과제는 상기의 부트 플래시 메모리와 응용 플래시 메모리를 이용하여 홈 게이트웨이 시스템을 서버와 연동하여 최신의 버전으로 이미지를 업데이트를 하는 방법을 제공하는데 있다.
도 1은 홈게이트웨이 시스템의 부트 플래시 장치의 구성을 보여주는 블럭도이다.
도 2는 홈게이트웨이 시스템의 부트 플래시 메모리의 데이터 구조를 나타내는 도면이다.
도 3은 홈게이트웨이 시스템의 어플리케이션 플래시 메모리의 데이터 구조를 나타내는 도면이다.
도 4는 홈게이트웨이 시스템에 전원이 인가 되었을 때, 부트로더에 의해 부팅이 시작되며 최신의 커널 버전을 선택하여 주 메모리에 로딩하고 부팅하는 알고리즘을 나타내는 흐름도이다.
도 5는 홈게이트웨이 시스템이 이미 부팅되어 동작하고 있고, 서버에 존재하는 커널 이미지가 업데이트 되었을 때, 홈게이트웨이 시스템의 커널 이미지를 업데이트 하는 과정을 나타내는 흐름도이다.
도 6은 홈게이트웨이 시스템에 전원이 인가되고, 부트로더에 의해 부팅이 시작될 때, 부트로더의 버전을 확인하고, 커널 부팅이 완료된 후에 부트로더를 업데이트하는 과정을 나타내는 흐름도이다.
도 7은 홈게이트웨이 시스템에 전원이 인가되었을 때, 부트로더에 의해 부팅되는 과정을 보여주는 예시 도면이다.
<도면의 주요 부분에 대한 부호의 설명>
101 : 중앙처리부 103 : 부트 플래시 메모리
104 : 응용 플래시 메모리 105 : 메인 메모리
210 : 하드 리셋 구성 정보 230 : 부트 로더 이미지
250 : 이미지 버전 정보
310 : 커널 이미지의 헤더 330 : 제1커널이미지 영역
350 : 제2커널이미지 영역 370 : 응용프로그램 저장 영역
401,601 : 전원인가 402,602 : 하드 리셋 구성 워드
403,603 : CPU 초기화 404,604 : 부트로더에 의한 부팅
405 : 제2커널이미지 영역 확인
406,408,413,416,506,509,607,613 : 분기 조건문
407,605 : 버전 확인 409,606 : 버전 확인 요구
411,417,507,612 : 이미지 퓨징 412,415 : 커널 이미지 로딩
414,504,608 : 이미지 다운로딩 416,505,609 : 체크섬
418,611 : 커널 부팅 419 : 부팅 종료
501 : 동작 중 502 : 새로운 커널 이미지 업로드
503,508 : 업데이트 통보 511,614 : 재부팅
512,615 : 현재 상태 유지 701 : 하드 리셋 구성 워드 수행 루틴
702 : CPU 레지스터 초기화 루틴
703 : 버전 확인 및 다운로딩 수행 루틴
상기의 제1기술적 과제를 이루기 위하여 본 발명에 의한 홈게이트웨이 시스템의 부트 플래시 장치는 시스템의 리셋 구성 정보를 포함하는 데이터를 저장하는 부트 메모리; 커널 이미지와 소정의 응용 프로그램을 저장하는 응용 플레시 메모리; 상기 시스템의 구동 및 업데이트시에 부트 메모리와 응용 플레시 메모리에 저장된 내용들을 임시로 저장하는 메인 메모리; 및 상기 부트 메모리와 응용 플레시 메모리에 저장된 내용을 읽어 상기 메인 메로리에 로딩한 후 상기 시스템의 구동 및 업데이트를 수행하며 상기 시스템이 접속하는 서버와의 통신을 수행하는 중앙처리부를 포함하는 것을 특징으로 한다.
상기의 제2기술적 과제를 이루기 위하여 본 발명에 의한 부트 플레시 메모리의 데이터 구조는 홈 게이트웨이 시스템의 리셋 정보를 담고 있는 리셋정보; 상기 시스템의 부팅에 필요한 부트 로더 이미지; 및 상기 이미지의 버젼을 포함하는 것을 특징으로 한다.
상기의 제3기술적 과제를 이루기 위하여 본 발명에 의한 응용 플레시 메모리의 데이터 구조는 홈 게이트웨이 시스템에서 현재 운용중인 커널 이미지의 버전; 상기 커널 이미지; 및 상기 시스템에 적용되는 소정의 응용프로그램을 포함하는 것을 특징으로 한다.
상기의 제4기술적 과제를 이루기 위하여 본 발명에 의한 홈 게이트웨이 시스템의 이미지 업데이트 방법은 커널 이미지 정보를 상기 홈 게이트웨이 시스템에 적용된 제1커널이미지와 갱신된 제2커널이미지로 분할하여 구비하는 단계; 상기 시스템에 전원이 인가되면 상기 부팅 정보에 기초하여 부팅을 한 후 상기 제1 및 제2커널이미지의 버전을 비교하는 단계; 상기 버전 비교 결과를 근거로 보다 상위의 버전을 가지는 커널 이미지로 커널 부팅을 수행하는 단계;를 포함하는 것을 특징으로 한다.
이하 첨부된 도면을 참조하여 본 발명의 바람직한 일 실시예에 대하여 상세히 설명하도록 한다. 설명의 중복을 피하기 위하여 상기 제1내지 제4기술적 과제를 이루기 위한 본 발명의 바람직한 일 실시예에 있어서 공통된 부분은 설명을 생략하기로 한다.
도 1은 홈게이트웨이 시스템의 부트 플래시 장치(100)의 구성을 보여주는 블럭도이다. 중앙처리부(101)는 홈게이트웨이 시스템에 전원이 인가되었을 때, 일련의 모든 부팅, 로딩, 업데이트에 관한 일을 수행하며, 부트 플래시 메모리(103)는 부트로더 이미지가 퓨징되어 있는 메모리로써 전원이 인가되었을 때, 중앙처리부(101)에 의해 최초의 부팅이 수행된다. 응용(application) 플래시 메모리(105)는 헤더영역(310), 제1커널 이미지 영역(330), 제2커널 이미지 영역(350), 응용 프로그램 저장영역(370)으로 나누어지며 중앙처리부(101)CPU에 의한 커널 부팅, 최신의 커널 이미지 저장 그리고 어플리케이션을 저장한다. 메인 메모리(107)는 플래시 메모리에 퓨징된 이미지를 로딩하여 수행하며, 메인버스는 60x 버스로서 중앙처리부(101)와 메모리들(103,105,107) 간에 데이터 통신을 가능하게 한다. 또한 중앙처리부(101)는 홈 게이트웨이 시스템과 연결되 서버(미도시)와의 통신을 수행한다.
부트 플래시 장치(100)의 기능을 좀 더 살펴보면, 홈 게이트웨이 시스템에 전원이 인가되면, 중앙처리부(101)는 부트 플래시 메모리(103)로부터 하드 리셋 구성 워드를 읽어서 중앙처리부(101)에 관련된 레지스터들을 초기화하고 부터 이미지(booter image)가 위치한 부트 플래시 영역으로 점프한다. 부트 이미지는 부팅을 시작하며 부트로더 이미지의 일부를 메인 메모리(107)에 로딩하게 되는데, 이때 도 2의 부트 이미지 버전 정보(250)와 응용 플래시 메모리(105)에 있는 커널 이미지 버전 정보(310)를 서버(미도시)에게 전송하고 최신 버전에 대한 확인을 한 후 최신 버전으로 홈 게이트웨이 시스템을 업데이트하게 된다.
도 2는 홈게이트웨이 시스템의 부트 플래시 메모리의 데이터 구조를 보여주고, 도 3은 홈게이트웨이 시스템의 어플리케이션 플래시 메모리의 데이터 구조를나타내는 도면이다.
홈게이트웨이 시스템은 1MBytes의 부트 플래시 메모리(103)를 내장하고 있으며 부트 플래시의 시작 어드레스에는 하드 리셋 구성 정보(210)가 기록되어 있고 전원이 인가될 때 중앙처리부(101)에 의해 읽혀진다. 기존의 부트 플래시 메모리의 구성은 하드 리셋 구성 워드(210)와 부트로더 이미지(230)로 구성되지만 홈게이트웨이 시스템에서는 부트 플래시의 마지막 영역에 부트로더 이미지에 대한 버전 정보(250)를 기록해 줌으로써 부트로더 이미지의 업데이트시에 이용한다. 이러한 부트로더 이미지의 업데이트시에 사용하는 방법은 아래의 홈 게이트웨이 시스템의 부팅 및 업데이트 방법을 설명하면서 하도록 한다.
한편, 홈게이트웨이 시스템은 16MBytes의 응용 플래시 메모리(105)를 내장하고 있으며, 응용 플래시 메모리(105)는 크게 헤더(310), 제1 커널 이미지 영역 (330), 제2커널 이미지 영역(350) 그리고 응용 프로그램 저장 영역(370)으로 구분할 수 있다. 헤더(310)는 응용 플래시 메모리(105)의 시작 어드레스에서 플래시 메모리의 첫번째 이미지 저장 영역 사이에 위치하여 커널 이미지의 버전을 확인할 수 있도록 그 버전을 기록하여 차후에 업데이트를 위하여 사용된다. 제1커널이미지 영역(330)은 현재 수행되는 커널 이미지를 저장하고, 제2커널 이미지 영역(350)은 홈게이트웨이 시스템의 동작 중에 서버(미도시)로부터 다운로딩 되어 퓨징된 최신 이미지를 저장하며, 응용 프로그램 영역(370)은 홈게이트웨이 시스템에 탑재되는 응용 서비스를 위한 어플리케이션 프로그램이 저장된다. 전원이 인가되어 홈게이트웨이 시스템이 부팅될 때, 커널 이미지에 대한 버전 확인은 먼저 제1커널이미지 영역(330)과 제2커널이미지영역(350)에 퓨징된 커널 이미지의 버전을 비교하게 된다. 만일 최신의 버전이 제2커널이미지영역(350)내의 이미지이면 제2커널이미지영역(350)내의 이미지를 통해 부팅하게 되고 또한 제2커널이미지영역내(350)의 이미지가 제1커널이미지영역(330)에 퓨징되게 된다.
이제, 도 1내지 도 3의 구성하에서 홈 게이트웨이 시스템을 부팅하고 업데이트하는 방법에 대하여 살펴보도록 한다.
도 4는 홈게이트웨이 시스템에 전원이 인가 되었을 때, 부트로더에 의해 부팅이 시작되며 최신의 커널 버전을 선택하여 주 메모리에 로딩하고 부팅하는 알고리즘을 나타내는 흐름도이고, 도 5는 홈게이트웨이 시스템이 이미 부팅되어 동작하고 있고, 서버에 존재하는 커널 이미지가 업데이트 되었을 때, 홈게이트웨이 시스템의 커널 이미지를 업데이트 하는 과정을 나타내는 흐름도이다.
또한 도 6은 홈게이트웨이 시스템에 전원이 인가되고, 부트로더에 의해 부팅이 시작될 때, 부트로더의 버전을 확인하고, 커널 부팅이 완료된 후에 부트로더를 업데이트하는 과정을 나타내는 흐름도이다.
홈게이트웨이 시스템에 전원이 인가(401단계)되면, 중앙처리부(101;이하 CPU라고 함)는 하드 리셋 구성 정보(보다 구체적으로는 하드 리셋 구성 워드)(210)(402단계)를 읽고 CPU관련 레지스터를 초기화(403) 하며 부팅을 시작(404단계)하고, 응용 플래시 메모리(105)의 제2커널 이미지 영역(350)에 이미지가 존재하는 여부를 확인한다(405 내지 406단계). 만일 제2커널 이미지 영역(350)에 커널 이미지가 존재하지 않는다면, 서버(미도시)에 최신의 커널 이미지의 존재 여부를 확인하기 위해 서버에게 현재의 커널 버전 정보를 실은 패킷을 전송하여 확인을 요청한다(409단계). 만일 제2커널 이미지 영역(350)에 커널 이미지가 존재한다면, 응용 플래시 메모리(105)의 헤더영역에 있는 제1커널 이미지와 제2 커널 이미지의 버전을 확인한다(407 내지 408단계). 만일 제2커널 이미지의 버전이 더 최신의 것이라면, 제2 커널이미지를 제1커널 이미지 영역(330)에 퓨징하고(411단계), 메인 메모리(107)에 로딩(412단계)하여 커널 부팅을 수행한다.
그러나 만일 제1커널 이미지가 제2커널 이미지보다 같거나 최신의 버전이라면, 서버에 최신의 커널 이미지의 존재 여부를 확인하기 위해 서버에게 현재의 커널 버전 정보를 실은 패킷을 전송하여 확인을 요청한다(409단계). 만일 서버로부터 확인된 서버 커널 이미지가 현재의 커널 이미지 보다 최신의 것이라면, 부트로더는 TFTP 프로토콜을 통해 서버에 있는 최신 커널 이미지를 다운로딩(414단계)하고, 다운로딩한 이미지 데이터의 유효성을 확인한다. 즉 체크섬(416단계)이 정상적이면 로딩된 커널 이미지를 제1커널 이미지 영역에 퓨징(417단계)하고 커널 부팅을 수행한다(418 내지 419단계). 만일 현재의 커널 이미지가 서버로부터 확인된 서버 커널 이미지보다 같거나 최신이라면 현재 커널 이미지를 메인 메모리(107)에 로딩(415단계)하여 커널 부팅을 수행한다(418 내지419단계).
다음으로 홈게이트웨이 시스템이 이미 부팅되어 동작하고 있고 서버에 존재하는 커널 이미지가 업데이트 되었을 때 홈게이트웨이 시스템의 커널 이미지를 업데이트 하는 과정을 도 5를 참조하면서 살펴본다.
홈게이트웨이 시스템의 동작 중(501단계)에 서버에 새로운 커널 이미지가 업로드 되게 되면(502단계), 커널 이미지가 업데이트 되었음을 알리는 통보 메시지를 등록된 모든 홈게이트웨이 시스템에 전송한다(503단계). 서버로부터 업데이트 통보 메시지를 수신한 홈게이트웨이 시스템은 TFTP 프로토콜을 이용하여 메인 메모리(107)상에 최신의 커널 이미지를 다운로딩한다(504단계). 다운로딩 과정이 정상적이었는지를 체크섬을 통해 확인하고(505단계), 홈게이트웨이 사용자에게 업데이트 여부를 확인한다(506단계). 만일 사용자가 업데이트를 선택했다면, 메인 메모리(107)에 다운로딩 된 최신의 커널 이미지를 제2 커널 이미지 영역(350)에 퓨징하고(507단계) 최신 커널 이미지 적용을 위해 사용자에게 시스템의 재부팅을 요구한다(508단계). 만일 사용자가 재부팅을 선택하면(509단계), 홈게이트웨이 시스템은 재부팅이 수행되며(511단계), 도 4에 도시된 흐름을 따라 자동으로 커널 이미지가 업데이트 되고 최신의 커널 이미지가 홈게이트웨이 시스템에 적용되게 된다. 만일 사용자가 업데이트를 선택하지 않거나 재부팅을 선택하지 않는다면, 현재의 부팅 커널 이미지를 유지하게 된다(512단계). 만일 사용자가 홈게이트웨이 시스템을 통해 중요한 정보를 다운로딩 받고 있다면, 사용자는 최신의 커널 이미지를 업데이트만 선택하고 재부팅은 하지 않고 현재 진행중인 일을 계속할 수 있으며 사용자가 원하는 때에 시스템을 재부팅 하여 커널 버전을 업데이트 할 수 있는 편리성을 제공한다.
한편 홈게이트웨이 시스템에 전원이 인가될 때, 부팅을 시작하고 커널 이미지를 메인 메모리에 로딩하고 커널 이미지의 시작 번지로 점프하는 역할을 담당하는 부트로더를 업데이트하는 과정을 도 6를 참조하면서 살펴본다. 부트로더를 업데이트 하는 유틸리티는 커널과 함께 동작하는 어플리케이션으로써 커널 부팅이 완료된 이후에 업데이트가 수행될 수 있다. 따라서 홈게이트웨이 시스템에 전원이 인가되고(601단계) 부트로더에 의해 부팅(604)이 시작될 때 부트로더는 부트로더의 버전을 확인하고(605) 서버에 최신의 부트로더 이미지의 존재 여부를 확인하기 위해 서버에게 현재의 부트로더 버전 정보를 실은 패킷을 전송하여 확인을 요청한다(606단계). 만일 서버에 존재하는 부트로더 이미지의 버전이 현재의 부트로더 이미지 보다 최신의 것이라면(607단계), 현재의 부트로더는 TFTP 프로토콜을 이용하여 최신의 부트로더를 메인 메모리(107)에 다운로딩한다(608단계). 다운로딩 된 부트로더 이미지가 정상적이라면(609단계) 도 4에 도시된 흐름에 따라 커널 버전 업데이트 과정이 수행되고 커널 부팅이 수행되게 된다(611단계). 커널 부팅이 완료된 후에는 메인 메모리(101)에 다운로딩 된 부트로더 이미지를 도 2의 부트로더 이미지 저장 영역(230)에 퓨징하고(612단계) 최근의 부트로더 이미지를 적용하기 위하여 사용자에게 부트로더의 업데이트와 시스템 재부팅을 요구하게 되며(613단계) 사용자가 재부팅을 원할 때에는 시스템이 재부팅되어(614단계) 최신의 업데이트 된 부트로더 이미지에 의해 시스템이 부팅되게 된다. 만일 현재의 부트로더 이미지의 버전이 서버에 존재하는 부트로더 이미지보다 같거나 최신의 것이라면, 현재의 부팅 상태를 유지하게 된다(615단계).
도 7은 홈게이트웨이 시스템에 전원이 인가되었을 때, 부트로더에 의해 부팅되는 과정을 보여주는 예시 도면이다. 홈 게이트트웨이 시스템에 전원이 인가되었을 때, 부트로더에 의해 부팅되는 흐름을 나타내는 예로써 전원이 인가되면 CPU는하드 리셋 구성 워드를 읽어(701단계) CPU관련 레지스터를 초기화하고 부팅을 시작하며(702단계) 10초 동안 어떠한 키보드의 입력이 없다면, 현재 도3의 제1커널 이미지 영역(330)에 퓨징된 커널 이미지를 메인 메모리에 로딩하여 커널 부팅을 수행한다. 만일 10초 내에 어떠한 키보드의 입력이 있다면, 부트로더에서 제공하는 명령어들을 이용하여 수동으로 커널 업데이트 및 부팅을 수행할 수 있고 키보드의 입력을 기다리는 10초 동안에 부트로더와 커널 이미지에 대한 버전 확인 및 업데이트가 완료되어 최신의 이미지를 통해 홈게이트웨이 시스템을 운용할 수 있다(703단계).
본 발명에 의한 홈 게이트웨이 시스템의 이미지 업데이트 방법은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현되는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 하드 디스크, 플로피 디스크, 플래쉬 메모리, 광 데이타 저장장치등이 있으며, 또한 캐리어 웨이브(예를들면 인터넷을 통한 전송)의 형태로 구현되는 것도 포함된다. 또한 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 통신망으로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 읽을 수 있는 코드로서 저장되고 실행될 수 있다. 또한 본 발명에 의한 폰트 롬 데이터구조도 컴퓨터로 읽을 수 있는 ROM, RAM, CD-ROM, 자기 테이프, 하드 디스크, 플로피 디스크, 플래쉬 메모리, 광 데이타 저장장치등과 같은 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현되는 것이 가능하다.
이상에서 설명한 바와 같이, 본 발명에 의한 홈 게이트웨이 시스템의 이미지 업데이트 방법에 의하면, 홈게이트웨이 시스템에 전원이 인가될 때 이미지의 버전을 자동으로 확인하여 업데이트를 수행할 수 있고 최신의 버전을 메인 메모리에 로딩하여 부팅함으로써, 홈게이트웨이 시스템의 부팅에 필요한 이미지의 버전 관리를 쉽고 편리하게 수행할 수 있으며, 홈게이트웨이 시스템이 수행 중이더라도 최신의 이미지 버전으로 업데이트가 자동으로 요청되기 때문에 사용자는 최신의 부트로더 및 커널 이미지를 통해 최상의 지원 기능을 가지고 홈게이트웨이 시스템을 운용할 수 있게 된다.

Claims (15)

  1. 홈 게이트웨이 시스템의 부팅정보 및 커널 이미지를 업데이트하는 장치에 있어서,
    상기 시스템의 리셋 구성 정보를 포함하는 데이터를 저장하는 부트 메모리;
    현재 시스템에 적용되는 제1커널이미지를 저장하는 제1커널이미지 영역와, 서버로부터 다운로딩받은 제2커널이미지를 저장하는 제2커널이미지 영역와, 소정의 응용 프로그램을 저장하는 응용 메모리;
    상기 시스템의 구동 및 업데이트시에 부트 메모리와 응용 플레시 메모리에 저장된 내용들을 임시로 저장하는 메인 메모리; 및
    상기 부트 메모리와 응용 플레시 메모리에 저장된 내용을 읽어 상기 메인 메로리에 로딩한 후 상기 부트 메모리에 저장된 내용으로 부팅을 수행하고, 제1커널이미지 영역과 제2커널이미지 영역에 퓨징된 커널 이미지의 버전을 비교하여 만일 제2커널이미지의 버전이 더 최신의 것이면 이를 제1커널이미지 영역으로 퓨징한 다음 상기 메인 메모리로 로딩하여 커널부팅을 수행하며, 서버와 접속하여 최신의 커널이미지를 상기 제2커널이미지 영역으로 다운로드 받아 커널 업데이트를 수행하는 중앙처리부;를 포함하는 것을 특징으로 하는 부트 플래시 장치.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 제1항에 있어서, 상기 부트 메모리는
    상기 시스템에 전원이 인가될 때 부트 로더 이미지를 상기 중앙처리부로 제공하고, 상기 서버와 상기 시스템이 각각 가지고 있는 상기 이미지의 버전을 비교하여 업데이트 여부를 결정할 수 있도록 상기 시스템에서 운용중인 이미지의 버전을 저장하는 것을 특징으로 하는 부트 플래시 장치.
  6. 삭제
  7. 현재 시스템에 적용되는 제1커널 이미지를 저장하는 제1커널이미지 영역;
    서버로부터 다운로딩받은 제2커널 이미지를 저장하는 제2커널 이미지 영역; 및
    응용 서비스를 위한 어플리케이션 프로그램을 저장하는 응용프로그램 영역;을 포함하며,
    홈게이트웨이 시스템이 부팅될 때, 상기 제1커널이미지 영역과 상기 제2커널이미지 영역에 퓨징된 커널 이미지의 버전을 비교하여 만일 제2커널이미지의 버전이 더 최신의 것이면 이를 제1커널이미지 영역으로 퓨징한 다음 커널부팅을 수행하며, 서버와 접속하여 최신의 커널이미지를 상기 제2커널이미지 영역으로 다운로드 받아 커널 업데이트가 수행되는 것을 특징으로 하는 응용 플래시 메모리의 데이터 구조.
  8. 삭제
  9. 업데이트가 가능한 부팅 정보를 저장하는 메모리와 업데이트가 가능한 커널 이미지 정보를 저장하는 메모리를 구비하는 홈 게이트웨이 시스템의 부팅 및 업데이트 방법에 있어서,
    (a) 상기 부팅 정보, 현재 시스템에 적용되는 제1커널 이미지 및 서버로부터 다운로딩받은 제2커널 이미지를 구비하는 단계;
    (b) 상기 시스템을 부팅하면 상기 부팅 정보에 기초하여 부팅을 한 후 상기 제1 및 제2커널이미지의 버전을 비교하는 단계;
    (c) 상기 제2커널이미지의 버전이 더 최신의 것이면 상기 제2커널이미지에 따라 커널 부팅을 수행하는 단계; 및
    (d) 상기 제1커널이미지의 버전이 제2커널이미지와 같거나 더 최신의 것이면 현재의 커널 버전 정보를 서버로 전송하고, 서버에서의 커널이미지의 버전이 보다 최신의 것이면 서버로부터 상기 최신 커널이미지를 다운로드받아 업데이트하는 단계;를 포함하는 것을 특징으로 하는 홈 게이트웨이 시스템의 이미지 업데이트 방법.
  10. 제9항에 있어서, 상기 (a)단계는
    상기 부팅정보에 부트 로더의 버전 및 부트 로더 이미지를 더 포함하도록 구비하는 것을 특징으로 하는 홈 게이트웨이 시스템의 이미지 업데이트 방법.
  11. 제10항에 있어서,
    상기 부트 로더의 버전이 서버에서 제공하는 부트 로더 버전보다 하위인 경우에는 상기 서버에서 제공하는 부트 로더로 업데이트하는 것을 특징으로 하는 홈게이트웨이 시스템의 이미지 업데이트 방법.
  12. 제9항에 있어서, 상기 (d)단계는
    상기 서버로부터 상위 버전의 커널 이미지를 다운로드 받아 이를 상기 제2커널이미지로 대치하고, 상기 제2커널이미지로 상기 시스템을 재부팅한 후 상기 커널 부팅을 수행하는 것을 특징으로 하는 홈 게이트웨이 시스템의 이미지 업데이트 방법.
  13. 삭제
  14. 제13항에 있어서, 상기 (d)단계
    상기 제2커널이미지를 상기 제1커널이미지로 대치하여 저장하는 단계를 더 포함하는 것을 특징으로 하는 홈게이트웨이 시스템의 이미지 업데이트 방법.
  15. 제9 내지 15항 중 어느 하나의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
KR10-2001-0085845A 2001-12-27 2001-12-27 홈 게이트웨이 시스템의 이미지 업데이트 방법 KR100429903B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2001-0085845A KR100429903B1 (ko) 2001-12-27 2001-12-27 홈 게이트웨이 시스템의 이미지 업데이트 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2001-0085845A KR100429903B1 (ko) 2001-12-27 2001-12-27 홈 게이트웨이 시스템의 이미지 업데이트 방법

Publications (2)

Publication Number Publication Date
KR20030055767A KR20030055767A (ko) 2003-07-04
KR100429903B1 true KR100429903B1 (ko) 2004-05-03

Family

ID=32214018

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0085845A KR100429903B1 (ko) 2001-12-27 2001-12-27 홈 게이트웨이 시스템의 이미지 업데이트 방법

Country Status (1)

Country Link
KR (1) KR100429903B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101113342B1 (ko) * 2004-09-17 2012-02-28 엘지전자 주식회사 이동통신 단말기의 부트로더 버전 관리 방법
KR101467515B1 (ko) * 2010-11-23 2014-12-01 삼성전자 주식회사 스냅샷 이미지를 이용한 부팅 장치 및 방법

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100471497B1 (ko) * 2001-12-27 2005-03-08 한국전자통신연구원 네트워크 시스템에서의 이미지 파일 업그레이드 방법
CN102222009A (zh) * 2011-06-02 2011-10-19 深圳市共进电子有限公司 一种家庭网关系统分类版本的生产方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11154108A (ja) * 1997-09-05 1999-06-08 Internatl Business Mach Corp <Ibm> ファイル・セットのバージョンをマージする方法およびシステム
JP2001007839A (ja) * 1999-04-29 2001-01-12 Mitsubishi Electric Inf Technol Center America Inc ノードを遠隔監視および制御する方法、およびノードを遠隔監視および制御させる1つまたは複数の命令シーケンスを格納するコンピュータ読み取り可能な記録媒体
JP2001034560A (ja) * 1999-04-29 2001-02-09 Mitsubishi Electric Inf Technol Center America Inc ゲートウェイ装置、ネットワーク環境における統計学的な地理的位置情報を収集する方法、中央サーバによりネットワーク環境から統計学的な地理的位置情報を収集する方法、および1つまたは複数のプロセッサに実行させる複数の命令を格納したコンピュータ読み取り可能な記録媒体
KR20030052506A (ko) * 2001-12-21 2003-06-27 삼성전자주식회사 원격 가전기기 업데이트 방법 및 시스템

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11154108A (ja) * 1997-09-05 1999-06-08 Internatl Business Mach Corp <Ibm> ファイル・セットのバージョンをマージする方法およびシステム
JP2001007839A (ja) * 1999-04-29 2001-01-12 Mitsubishi Electric Inf Technol Center America Inc ノードを遠隔監視および制御する方法、およびノードを遠隔監視および制御させる1つまたは複数の命令シーケンスを格納するコンピュータ読み取り可能な記録媒体
JP2001034560A (ja) * 1999-04-29 2001-02-09 Mitsubishi Electric Inf Technol Center America Inc ゲートウェイ装置、ネットワーク環境における統計学的な地理的位置情報を収集する方法、中央サーバによりネットワーク環境から統計学的な地理的位置情報を収集する方法、および1つまたは複数のプロセッサに実行させる複数の命令を格納したコンピュータ読み取り可能な記録媒体
KR20030052506A (ko) * 2001-12-21 2003-06-27 삼성전자주식회사 원격 가전기기 업데이트 방법 및 시스템

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101113342B1 (ko) * 2004-09-17 2012-02-28 엘지전자 주식회사 이동통신 단말기의 부트로더 버전 관리 방법
KR101467515B1 (ko) * 2010-11-23 2014-12-01 삼성전자 주식회사 스냅샷 이미지를 이용한 부팅 장치 및 방법

Also Published As

Publication number Publication date
KR20030055767A (ko) 2003-07-04

Similar Documents

Publication Publication Date Title
US9075680B2 (en) Firmware upgrade for thin clients using one or more servers
KR101119320B1 (ko) 이동저장 장치의 펌웨어 업데이트 장치 및 방법
US7376944B2 (en) Hardware ROM upgrade through an internet or intranet service
US20100132042A1 (en) Method for upgrading antivirus software and terminal and system thereof
WO2011088701A1 (zh) 一种跨平台版本在线升级的方法及装置
US6832374B2 (en) System and method for updating an executing executable file
KR100429903B1 (ko) 홈 게이트웨이 시스템의 이미지 업데이트 방법
JPH1021060A (ja) プログラム自動更新処理機能を有する通信システムおよびプログラム更新処理を実行するプログラムを備えた記録媒体
JP2003288211A (ja) ネットワーク管理プログラム
Cisco Miscellaneous System Tasks
Cisco PXM1E Backup Boot Procedures
Cisco PXM Backup Boot Procedures
Cisco Miscellaneous System Tasks
Cisco Miscellaneous System Tasks
Cisco Miscellaneous System Tasks
Cisco Backup Boot Procedures
Cisco Backup Boot Procedures
Cisco PXM1E Backup Boot Procedures
Cisco Miscellaneous System Tasks
Cisco Miscellaneous System Tasks
Cisco Miscellaneous System Tasks
Cisco Miscellaneous System Tasks
Cisco Miscellaneous System Tasks
CN111324384B (zh) 于预执行环境依装置消息选择开机图像文件的装置及方法
Cisco Backup Boot Procedures

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: 20120330

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20130325

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee