KR100951851B1 - 펌웨어를 자동으로 업데이트하는 임베디드 장치 및시스템과 그에 따른 방법 - Google Patents

펌웨어를 자동으로 업데이트하는 임베디드 장치 및시스템과 그에 따른 방법 Download PDF

Info

Publication number
KR100951851B1
KR100951851B1 KR1020070081950A KR20070081950A KR100951851B1 KR 100951851 B1 KR100951851 B1 KR 100951851B1 KR 1020070081950 A KR1020070081950 A KR 1020070081950A KR 20070081950 A KR20070081950 A KR 20070081950A KR 100951851 B1 KR100951851 B1 KR 100951851B1
Authority
KR
South Korea
Prior art keywords
firmware
embedded device
manager program
file
update
Prior art date
Application number
KR1020070081950A
Other languages
English (en)
Other versions
KR20090017307A (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 KR1020070081950A priority Critical patent/KR100951851B1/ko
Publication of KR20090017307A publication Critical patent/KR20090017307A/ko
Application granted granted Critical
Publication of KR100951851B1 publication Critical patent/KR100951851B1/ko

Links

Images

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

Landscapes

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

Abstract

펌웨어를 자동으로 업데이트하는 임베디드 장치 및 시스템과 그에 따른 방법을 개시한다.
본 발명의 시스템에서 펌웨어를 자동으로 업데이트하는 방법은, (a) 임베디드 장치와 연결된 컴퓨터에서 매니저 프로그램이 자동 실행되면, 실행된 매니저 프로그램이 상기 임베디드 장치에서 펌웨어 버전 정보를 추출하는 단계; (b) 상기 펌웨어 버전 정보를 추출한 후, 임베디드 장치별 펌웨어 업데이트 파일을 제공하는 업데이트 서버로, 해당 임베디드 장치의 최신 펌웨어 버전 정보를 요청하는 단계; (c) 상기 업데이트 서버로부터 요청한 펌웨어 버전 정보를 수신하면, 상기 업데이트 서버로부터 수신한 최신 펌웨어 버전 정보와 상기 임베디드 장치에서 추출한 펌웨어 버전 정보가 동일한지 판단하는 단계; (d) 판단 결과 동일하지 않다면, 상기 업데이트 서버로부터 해당 펌웨어 업데이트 파일을 다운로드하는 단계; (e) 상기 다운로드된 펌웨어 업데이트 파일을 상기 임베디드 장치에 저장한 후 설치하는 단계;로 구성됨에 기술적 특징이 있다.
펌웨어, 임베디드 장치, 자동 업데이트

Description

펌웨어를 자동으로 업데이트하는 임베디드 장치 및 시스템과 그에 따른 방법{System and Apparatus for automatically updating firmware and method for the same}
본 발명은, 펌웨어를 자동으로 업데이트하는 임베디드 장치 및 시스템과 그에 따른 방법에 관한 것으로, 보다 상세하게는 사용자의 컴퓨터(PC)에 PMP와 같은 임베디드 장치가 연결되면, 펌웨어를 자동 업데이트하는 매니저 프로그램을 통해 임베디드 장치의 펌웨어를 업데이트하고, 개인용 컴퓨터에 상기 매니저 프로그램이 설치되어 있지 않을 경우, 해당 프로그램이 자동으로 설치될 수 있도록 하는 임베디드 장치 및 시스템과 그에 따른 방법에 관한 것이다.
일반적으로, 임베디드 장치(Embedded Device)란 미리 정해진 특정 기능을 수행하기 위해 컴퓨터의 하드웨어와 소프트웨어가 조합된 전자 제어 장치를 말하며, 필요에 따라서는 일부 기계가 포함될 수 있다. 즉, 우리 생활에서 쓰이는 각종 전자 기기, 가전제품, 제어장치 등은 단순히 회로로만 구성된 것이 아니라 마이크로 컨트롤러(또는 마이크로 프로세서)가 내장되어 있고, 이 마이크로 컨트롤러를 구동하여 특정한 기능을 수행하도록 프로그램이 내장되어 있는 장치를 가리킨다. 쉽게 주위에서 볼 수 있는 임베디드 장치로는 예를 들면, DVD 플레이어, 셋탑박스, 이동 단말 장치, PMP, MP3 플레이어, 캠코더, 디지털 카메라, 냉장고, 세탁기와 같은 가전기기가 있다. 뿐만 아니라, 승강기, 항공기, 의료기기, 자동차, 공장제어, 통신 장비(교환기, 라우터 등)도 임베디드 장치이다.
이러한 임베디드 장치의 경우 전체 시스템 가격이나 소비 전력을 낮추기 위해 시스템에 많은 제약을 가하는데, 이로써 전체적인 운영체제를 사용하기 보다는 특정 기능만을 수행하는 단일 프로그램(펌웨어)을 탑재하는 경향이 있다.
그리고, 임베디드 장치에서 운용되는 펌웨어는, 시스템의 효율을 향상시키기 위해 수시로 업그레이드된다. 대개, 임베디드 장치는 USB 연결부를 통해 PC(Personal computer)와 연결되고, PC는 응용 프로그램을 이용하여 해당 임베디드 장치의 제조사 홈페이지에 접속하여 펌웨어 업데이트 파일을 다운로드하여, 상기 임베디드 장치에 저장된 펌웨어를 업데이트한다.
그러나, 상기와 같은 펌웨어 업데이트 방법은, 사용자가 직접 제조사 홈페이지에 접속하여, 상기 임베디드 장치에 적합한 최신 버전의 펌웨어 업데이트 파일을 확인해야만 하는 불편함이 있었다.
또한, 임베디드 장치로 펌웨어를 업데이트하기 위해 PC 내에 저장된 응용 프로그램은, 임베디드 장치 제조사에서 제공하는 설치 디스크 또는 CD를 통해 사용자가 직접 설치해야 하며, 상기 설치 디스크 또는 CD를 분실하였을 경우, 제조사 홈 페이지에 접속하여, 사용자가 직접 상기 임베디드 장치에 적합한 응용 프로그램을 다운로드 해야만 하는 문제점이 있었다.
따라서, 본 발명은 상기와 같은 종래 기술의 문제점을 해결하기 위한 것으로, 임베디드 장치가 사용자의 컴퓨터에 연결되면, 상기 컴퓨터 내에 설치된 매니저 프로그램을 통해 임베디드 장치에 내장된 펌웨어가 자동으로 업데이트 되도록 하는 임베디드 장치 및 시스템과 그에 따른 방법을 제공하는데 그 목적이 있다.
또한, 임베디드 장치와 연결되는 사용자의 컴퓨터에 펌웨어를 업데이트하기 위한 매니저 프로그램이 설치되어 있지 않을 경우, 업데이트 서버에 자동으로 접속하여 상기 컴퓨터에 매니저 프로그램이 설치되도록 하는데 그 목적이 있다.
그리고, 임베디드 장치에 펌웨어가 업데이트되면, 업데이트한 펌웨어가 정상 동작하는지 확인하여 확인 결과를 출력하고, 업데이트된 펌웨어가 정상적으로 동작하지 않는 경우, 자동으로 복원 가능하도록 하는데 그 목적이 있다.
상기 목적을 달성하기 위한 본 발명은, 펌웨어를 업데이트하는 매니저 프로그램을 확인하는 매니저 프로그램 확인파일이 저장되어 있으며, 상기 매니저 프로그램 확인파일을 개인용 컴퓨터로 전달하는 임베디드 장치; 상기 임베디드 장치별 매니저 프로그램 설치파일 및 펌웨어 업데이트 파일을 구축하고 있는 업데이트 서버; 및 상기 임베디드 장치로부터 전달받은 매니저 프로그램 확인파일을 실행시켜, 상기 임베디드 장치에 적합한 매니저 프로그램이 설치되어 있는지 판단하고, 판단 결과 설치되어 있지 않다면, 상기 업데이트 서버로 상기 임베디드 장치에 따른 매니저 프로그램 설치파일을 요청하여 수신하며, 상기 수신한 매니저 프로그램 설치파일을 실행시켜 해당 매니저 프로그램을 설치하는 개인용 컴퓨터로 구성되는 매니저 프로그램을 자동으로 설치하는 시스템을 제공한다.
상기 목적을 달성하기 위한 본 발명은, 임베디드 장치의 제품 정보와 펌웨어의 버전 정보가 포함된 펌웨어 정보 및 펌웨어가 저장되어 있으며, 개인용 컴퓨터와 데이터 송수신을 하는 인터페이스부를 포함하는 임베디드 장치; 임베디드 장치에 따른 펌웨어 버전 정보 및 펌웨어 업데이트 파일이 저장된 데이터베이스를 구축하고 있는 업데이트 서버; 및 인터페이스부를 통해 상기 임베디드 장치와 연결되면, 상기 임베디드 장치로 펌웨어 정보를 요청하여 수신하며, 상기 업데이트 서버로부터 수신한 최신 펌웨어 버전 정보와 상기 임베디드 장치의 펌웨어 버전 정보가 동일한지 판단하고, 동일하지 않은 경우 상기 업데이트 서버로부터 펌웨어 업데이트 파일을 전달받아 상기 임베디드 장치의 펌웨어를 업데이트하는 매니저 프로그램이 설치되어 있는 개인용 컴퓨터로 구성되는 펌웨어를 자동으로 업데이트하는 시스템을 제공한다.
상기 목적을 달성하기 위한 본 발명은, 임베디드 장치 내의 펌웨어 버전 정보와 최신 펌웨어 버전 정보를 제공하는 업데이트 서버로부터 수신한 최신 펌웨어 버전 정보를 비교하고, 비교 결과 상기 버전 정보가 동일하지 않다면, 상기 업데이 트 서버로 펌웨어를 업데이트하는 펌웨어 업데이트 파일을 요청하여 수신하고, 수신된 펌웨어 업데이트 파일을 상기 임베디드 장치로 업로드하는 매니저 프로그램을 기록한 기록매체를 제공한다.
상기 목적을 달성하기 위한 본 발명은, 임베디드 장치에 따른 펌웨어 업데이트 파일을 저장하고 있으며, 임베디드 장치와 연결된 개인용 컴퓨터로부터 최신 펌웨어 버전 정보 요청 신호가 수신되면, 요청한 최신 펌웨어 버전 정보를 전달하고, 상기 임베디드 장치의 펌웨어를 업데이트하는 개인용 컴퓨터로부터 최신 펌웨어 업데이트 파일이 요청되면, 해당 파일을 전달하는 업데이트 서버의 기능을 기록한 기록매체를 제공한다.
상기 목적을 달성하기 위한 본 발명은, 개인용 컴퓨터에서 실행되는 매니저 프로그램 확인파일 및 임베디드 장치에서 실행되는 펌웨어 업데이트 파일이 저장되는 실행파일 저장부; 상기 임베디드 장치 내 응용 프로그램인 펌웨어가 저장되는 펌웨어 저장부; 상기 임베디드 장치의 제품 정보 및 펌웨어 버전 정보를 포함하는 펌웨어 정보가 저장되는 펌웨어 정보 저장부; 인터페이스부를 통해 상기 개인용 컴퓨터와 연결되면, 상기 매니저 프로그램 확인파일을 상기 개인용 컴퓨터로 전달하는 확인파일 전달부; 상기 개인용 컴퓨터 내의 매니저 프로그램이 펌웨어 정보를 요청하면, 상기 개인용 컴퓨터로 상기 펌웨어 정보를 전달하는 펌웨어 정보 전달부; 상기 전달된 펌웨어 정보에 근거하여 최신 버전의 펌웨어 업데이트 파일이 상 기 개인용 컴퓨터로부터 전달되면, 상기 펌웨어 업데이트 파일을 상기 실행파일 저장부에 다운로드하고 실행시켜, 최신 버전의 펌웨어를 업데이트하는 펌웨어 업데이트부로 구성되는 펌웨어를 자동으로 업데이트하는 임베디드 장치를 제공한다.
상기 목적을 달성하기 위한 본 발명은, 임베디드 장치와 컴퓨터가 연결되면, 임베디드 장치 내에 저장되어 있는 매니저 프로그램 확인파일이 상기 컴퓨터에서 실행되어, 컴퓨터에 임베디드 장치의 펌웨어를 업데이트하는 매니저 프로그램이 설치되어 있는지 판단하는 1단계; 판단 결과 설치되어 있지 않다면, 임베디드 장치별 매니저 프로그램 설치파일을 구축하고 있는 업데이트 서버로 해당 매니저 프로그램 설치파일을 요청하는 2단계; 상기 업데이트 서버로부터 요청한 매니저 프로그램 설치파일을 수신하여, 해당 매니저 프로그램을 컴퓨터 내 프로그램 저장부에 설치하는 3단계로 구성되는 시스템에서의 매니저 프로그램 설치방법을 제공한다.
상기 목적을 달성하기 위한 본 발명은, (a) 임베디드 장치와 연결된 컴퓨터에서 매니저 프로그램이 자동 실행되면, 실행된 매니저 프로그램이 상기 임베디드 장치에서 펌웨어 버전 정보를 추출하는 단계; (b) 상기 펌웨어 버전 정보를 추출한 후, 임베디드 장치별 펌웨어 업데이트 파일을 제공하는 업데이트 서버로, 해당 임베디드 장치의 최신 펌웨어 버전 정보를 요청하는 단계; (c) 상기 업데이트 서버로부터 요청한 펌웨어 버전 정보를 수신하면, 상기 업데이트 서버로부터 수신한 최신 펌웨어 버전 정보와 상기 임베디드 장치에서 추출한 펌웨어 버전 정보가 동일한지 판단하는 단계; (d) 판단 결과 동일하지 않다면, 상기 업데이트 서버로부터 해당 펌웨어 업데이트 파일을 다운로드하는 단계; (e) 상기 다운로드된 펌웨어 업데이트 파일을 상기 임베디드 장치에 저장한 후 설치하는 단계로 구성되는 시스템에서 펌웨어를 자동으로 업데이트하는 방법을 제공한다.
따라서, 본 발명에 따른 펌웨어를 자동으로 업데이트하는 임베디드 장치 및 시스템과 그에 따른 방법은, 임베디드 장치가 사용자의 컴퓨터에 연결되면, 상기 컴퓨터 내에 설치된 매니저 프로그램을 통해 임베디드 장치에 내장된 펌웨어가 자동으로 업데이트하며, 매니저 프로그램이 설치되어 있지 않을 경우, 업데이트 서버에 자동으로 접속하여 상기 컴퓨터에 매니저 프로그램을 설치함으로써, 사용자가 직접 펌웨어를 업데이트하거나, 상기 매니저 프로그램을 직접 다운로드해야 하는 번거로움을 덜어주는 효과가 있다.
또한, 임베디드 장치에 펌웨어가 업데이트되면, 업데이트한 펌웨어가 정상 동작하는지 확인하여 확인 결과를 출력하고, 업데이트된 펌웨어가 정상적으로 동작하지 않는 경우, 자동으로 복원되도록 함으로써, 펌웨어 업데이트 오류를 감소시키며, 이로 인해 신뢰성을 높여주는 효과가 있다.
본 발명의 상기 목적과 기술적 구성 및 그에 따른 작용 효과에 관한 자세한 사항은 본 발명의 명세서에 첨부된 도면에 의거한 이하 상세한 설명에 의해 보다 명확하게 이해될 것이다.
우선, 도 1은 본 발명에 따른 시스템의 구성도를 도시한 것으로, 시스템은, DVD 플레이어, 셋탑박스, 이동 단말 장치, PMP, MP3 플레이어, 캠코더, 디지털 카메라 등의 임베디드 장치(100), 임베디드 장치(100)와 연결되어 펌웨어 업데이트 파일을 전달하는 개인용 컴퓨터(200), 개인용 컴퓨터(200)에서 요청한 업데이트 데이터를 제공하는 업데이트 서버(300)로 구성된다.
상기 임베디드 장치(100)에는, 개인용 컴퓨터(200)로 전달되어 펌웨어를 업데이트하는 매니저 프로그램을 확인하는 매니저 프로그램 확인파일, 임베디드 장치의 제품 정보와 펌웨어의 버전 정보가 포함된 펌웨어 정보, 그리고 펌웨어가 저장되어 있다. 여기서, 매니저 프로그램 확인파일은, 확장자명이 exe 등과 같은 실행 파일로서, 임베디드 장치(100)에 저장되어 있지만, 상기 개인용 컴퓨터(200)로 전달되어 컴퓨터상에서 실행된다.
상기 임베디드 장치(100)는, 개인용 컴퓨터와 무선 연결 또는 USB 연결을 통해 펌웨어를 업데이트할 수 있는데, 이에 대한 구성도는 도 2를 참조하여 설명한다.
도 2에 도시된 바와 같이, 임베디드 장치(100)는, 실행파일 저장부(111), 펌웨어 저장부(112), 펌웨어 정보 저장부(113), 인터페이스부(140), 확인파일 전달부(150), 펌웨어 정보 전달부(160), 펌웨어 업데이트부(170) 등을 포함하여 구성된 다.
상기 실행파일 저장부(111), 펌웨어 저장부(112) 및 펌웨어 정보 저장부(113)는, 비휘발성 메모리의 하나인 플래시 메모리(flash memory)로서, 실행파일 저장부(111)에는, 개인용 컴퓨터(200)에서 실행되는 매니저 프로그램 확인파일 및 임베디드 장치에서 실행되는 펌웨어 업데이트 파일이 저장된다.
그리고, 펌웨어 저장부(112)에는, 임베디드 장치(100) 내 응용 프로그램인 펌웨어가 저장되며, 펌웨어 정보 저장부(113)에는, 임베디드 장치의 제품 정보 및 펌웨어 버전 정보를 포함하는 펌웨어 정보가 저장된다.
상기 인터페이스부(140)는, 개인용 컴퓨터(200)와 연결되어 데이터를 송수신할 수 있는 연결 인터페이스부와 사용자의 요청 신호를 입력받는 유저 인터페이스부로 나눌 수 있는데, 하기에서 설명하는 인터페이스부는 개인용 컴퓨터(200)와 연결되는 연결 인터페이스부이다.
상기 확인파일 전달부(150)는, 인터페이스부(140)를 통해 개인용 컴퓨터(200)와 연결되면, 상기 매니저 프로그램 확인파일을 개인용 컴퓨터(200)로 전달하여, 임베디드 장치의 펌웨어를 업데이트하는 매니저 프로그램이 설치되어 있는지 판단할 수 있게 한다.
여기서, 매니저 프로그램이란, 개인용 컴퓨터(200)에 설치되는 프로그램으로, 상기 임베디드 장치(100)의 펌웨어를 자동으로 업데이트하기 위한 응용 프로그램이다.
상기 펌웨어 정보 전달부(160)는, 확인파일 전달부(150)에서 전달된 매니저 프로그램 확인파일에 의해 실행되는 매니저 프로그램이 저장된 개인용 컴퓨터(200)로 임베디드 장치의 제품 정보 및 펌웨어 버전 정보를 포함하는 펌웨어 정보를 전달하여, 개인용 컴퓨터(200) 내의 매니저 프로그램에서 해당 펌웨어의 업데이트가 가능하도록 한다.
상기 펌웨어 업데이트부(170)는, 상기 전달된 펌웨어 정보에 근거하여 최신 버전의 펌웨어 업데이트 파일이 상기 개인용 컴퓨터로부터 전달되면, 상기 펌웨어 업데이트 파일을 상기 실행파일 저장부에 다운로드하고 실행시켜, 최신 버전의 펌웨어를 업데이트한다.
또한 펌웨어 업데이트부(170)는, 최신 버전의 펌웨어가 업데이트되면, 해당 업데이트된 펌웨어의 버전 정보를 포함하는 시스템 정보를 상기 펌웨어 정보 저장부(113)로 업데이트하여, 업데이트된 펌웨어의 버전 정보를 수정한다.
한편, 도 1에 도시한 개인용 컴퓨터(200)는, 임베디드 장치(100)로부터 전달받은 매니저 프로그램 확인파일을 실행시켜, 상기 임베디드 장치에 적합한 매니저 프로그램이 설치되어 있는지 판단하고, 판단 결과 설치되어 있지 않다면, 업데이트 서버(300)로 상기 임베디드 장치에 따른 매니저 프로그램 설치파일을 요청하여 수신하며, 상기 수신한 매니저 프로그램 설치파일을 실행시켜 해당 매니저 프로그램을 설치한다.
그리고 개인용 컴퓨터(200)는, 임베디드 장치(100)에 적합한 매니저 프로그램이 설치되어 있는지 판단한 결과 설치되어 있다면, 업데이트 서버(300)에 구축된 최신 버전의 매니저 프로그램 설치파일을 요청하여 해당 매니저 프로그램을 업데이 트한다.
또한, 개인용 컴퓨터(200)는, 인터페이스부(140)를 통해 연결된 임베디드 장치(200)로부터 상기 펌웨어 정보를 수신하며, 업데이트 서버(300)로부터 수신한 최신 펌웨어 버전 정보와 상기 임베디드 장치의 펌웨어 버전 정보가 동일한지 판단하고, 동일하지 않은 경우 업데이트 서버로(300)부터 펌웨어 업데이트 파일을 전달받아 임베디드 장치(200)의 펌웨어를 자동으로 업데이트하는 하는데, 상기 과정은 매니저 프로그램을 통해 이루어진다.
여기서, 개인용 컴퓨터(200) 내 설치된 매니저 프로그램은, 기 설정 및 저장되어 있는 업데이트 서버의 URL 정보를 이용하여 업데이트 서버(300)에 접속하고, 접속한 업데이트 서버(300)로 상기 펌웨어 정보를 전달하여, 펌웨어 업데이트 파일을 수신한다. 상기 서버의 URL 정보는, 개인용 컴퓨터(200)와 연결된 임베디드 장치(100)로부터 전달받을 수도 있다.
도 3은 본 발명의 일 실시예에 따른 개인용 컴퓨터(200)에서의 펌웨어 업데이트를 설명하기 위한 구성도이다.
도시된 바와 같이, 펌웨어 업데이트를 위한 매니저 프로그램이 저장된 개인용 컴퓨터(200)는, 매니저 프로그램이 저장되는 프로그램 저장부(201), 펌웨어 확인부(202), 펌웨어 다운로드부(203), 펌웨어 업로드부(204), 진단부(205), 복원부(206) 등으로 구성된다.
상기 펌웨어 확인부(202)는, 상기 개인용 컴퓨터(200)에 임베디드 장치(100)가 연결되면, 해당 임베디드 장치(100) 내의 펌웨어 버전 정보를 확인하고, 업데이 트 서버(300)로부터 수신한 최신 펌웨어 버전 정보와 상기 펌웨어의 버전 정보가 동일한지 판단한다.
상기 펌웨어 다운로드부(203)는, 펌웨어 확인부(202)에서 판단한 결과 동일하지 않다면, 상기 업데이트 서버(300)로부터 해당 펌웨어 업데이트 파일을 다운로드한다.
상기 펌웨어 업로드부(204)는, 상기 다운로드된 펌웨어 업데이트 파일을 임베디드 장치(200)로 업로드하여, 임베디드 장치에서 최신 펌웨어가 업데이트될 수 있게 한다.
상기 진단부(205)는, 임베디드 장치(200)에 설치된 펌웨어가 정상적으로 동작하는지 확인하고, 확인 결과를 컴퓨터 모니터와 같은 디스플레이부(미도시)를 통해 출력한다.
상기 복원부(206)는, 상기 설치된 펌웨어가 정상적으로 동작하지 않는다면, 업데이트 서버(300)로부터 설치된 펌웨어의 이전 버전에 해당하는 파일을 다운로드하여, 임베디드 장치(200)로 해당 펌웨어 업데이트 파일을 업로드하여, 임베디드 장치(200)가 정상적으로 동작할 수 있도록 한다.
한편, 도 1에 도시된 업데이트 서버(300)는, 상기 임베디드 장치별 매니저 프로그램 설치파일, 임베디드 장치에 따른 펌웨어 버전 정보 및 펌웨어 업데이트 파일이 저장된 데이터베이스를 구축하고 있으며, 인터넷망을 통해 개인용 컴퓨터(200)로 요청된 데이터를 제공한다.
다음, 상기에서 설명한 시스템 및 임베디드 장치에 근거하여, 펌웨어 업데이트 방법을 설명하겠다.
도 4는 본 발명에 따른 시스템에서의 매니저 프로그램 설치방법의 동작 흐름도에 관한 것으로, 임베디드 장치(100)와 개인용 컴퓨터(200)가 연결되면(S10), 임베디드 장치 내에 저장되어 있는 매니저 프로그램 확인파일(예: i-viliv start.exe)이 개인용 컴퓨터(200)에서 실행된다(S11).
상기 개인용 컴퓨터(200)에서 실행되는 매니저 프로그램 확인파일(i-viliv start.exe)은, 임베디드 장치(200)의 펌웨어를 업데이트하는 매니저 프로그램이 상기 개인용 컴퓨터(200)에 설치되어 있는지 판단한다(S12).
판단 결과 개인용 컴퓨터(200)에 연결된 임베디드 장치(100)에 해당하는 매니저 프로그램이 설치되어 있지 않다면, 임베디드 장치별 매니저 프로그램 설치파일(예: i-viliv.exe)을 구축하고 있는 업데이트 서버(300)로 해당 매니저 프로그램 설치파일(i-viliv.exe)을 요청한다(S13). 이 때, 업데이트 서버(300)로 상기 임베디드 장치(100)의 제품 정보를 전송하는 것이 바람직하다.
그리고, 업데이트 서버(300)로부터 요청한 매니저 프로그램 설치파일(i-viliv.exe)을 수신하고(S14), 해당 매니저 프로그램을 개인용 컴퓨터(200) 내 프로그램 저장부에 설치한 후(S15), 매니저 프로그램 확인파일(i-viliv start.exe)은 종료된다(S16).
한편, 상기 과정 S12에서, 판단 결과 개인용 컴퓨터(200)에 연결된 임베디드 장치(100)에 해당하는 매니저 프로그램이 설치되어 있다면, 상기 업데이트 서 버(300)의 데이터베이스에 저장된 최신 버전의 매니저 프로그램 정보를 확인한다(S17).
확인 결과 상기 컴퓨터에 저장된 매니저 프로그램 버전 정보와 상기 최신 버전의 매니저 프로그램 정보가 다른 경우(S18), 상기 업데이트 서버(300)로 최신 버전의 매니저 프로그램 설치파일을 요청하여(S13), 해당 매니저 프로그램이 업데이트될 수 있도록 한다.
도 5a 및 도 5b는 본 발명에 따른 시스템에서 펌웨어를 자동으로 업데이트하는 방법의 동작 흐름도이다.
우선, 도 4의 과정 S16에서 매니저 프로그램 확인파일(i-viliv start.exe)이 종료된 후, 임베디드 장치(100)와 개인용 컴퓨터(200)는 재 연결되어, 개인용 컴퓨터(200)에서 매니저 프로그램이 실행된다(S20).
그리고, 실행된 매니저 프로그램은 임베디드 장치(200)에서 임베디드 장치의 제품 정보와 펌웨어 버전 정보를 추출한다(S21).
상기 개인용 컴퓨터(200)에서 펌웨어 버전 정보를 추출한 후, 임베디드 장치별 펌웨어 업데이트 파일(예: i-viliv sync.exe)을 제공하는 업데이트 서버(300)로, 해당 임베디드 장치(200)의 최신 펌웨어 버전 정보를 요청한다(S22).
상기 업데이트 서버(300)로부터 요청한 펌웨어 버전 정보를 수신하면(S23), 업데이트 서버(300)로부터 수신한 최신 펌웨어 버전 정보와 상기 임베디드 장치(100)에서 추출한 펌웨어 버전 정보가 동일한지 판단한다(S24).
판단 결과 동일하지 않다면, 개인용 컴퓨터의 디스플레이부를 통해 펌웨어 업데이트 버튼을 활성화한다(S25).
활성화된 업데이트 버튼을 통해 업데이트 요청 신호가 입력되면(S26), 업데이트 서버(S26)로부터 해당 펌웨어 업데이트 파일(i-viliv sync.exe)을 다운로드한다(S27).
상기 다운로드된 펌웨어 업데이트 파일은 상기 임베디드 장치에 전달되어 저장된다(S28).
그리고, 임베디드 장치(100)에 펌웨어 업데이트 파일(i-viliv sync.exe)이 저장 완료되면, 임베디드 장치(100)는 인터페이스 연결을 해제하고(S29), 상기 임베디드 장치의 전원을 리셋한다(S30).
상기 리셋되는 임베디드 장치(100)는, 펌웨어 업데이트 파일(i-viliv sync.exe)을 실행시켜 펌웨어를 업데이트한 후(S31), 상기 장치의 시스템 정보를 메모리의 소정 공간에 저장한다(S32).
한편, 펌웨어 업데이트가 완료되면, 설치된 펌웨어가 정상적으로 동작하는지 확인하고(S33), 확인 결과를 출력한다(S34).
만약, 설치된 펌웨어가 정상 동작하지 않는다면, 상기 설치된 펌웨어의 이전 버전에 해당하는 파일을 다운로드하고(S35), 다운로드된 파일을 이용하여 임베디드 장치(100)의 펌웨어를 재설치하여(S36), 상기 임베디드 장치(100)가 정상 동작할 수 있게 한다.
본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수 적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있으므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
도 1은 본 발명의 일 실시예에 따른 시스템의 구성도,
도 2는 본 발명의 일 실시예에 따른 임베디드 장치의 구성도,
도 3은 본 발명의 일 실시예에 따른 개인용 컴퓨터에서의 펌웨어 업데이트를 설명하기 위한 구성도,
도 4는 본 발명에 따른 시스템에서의 매니저 프로그램 설치방법의 동작 흐름도,
도 5a 및 도 5b는 본 발명에 따른 시스템에서 펌웨어를 자동으로 업데이트하는 방법의 동작 흐름도이다.
< 도면의 주요 부분에 대한 부호의 설명 >
100: 임베디드 장치 110: 저장부
111: 실행파일 저장부 112: 펌웨어 저장부
113: 펌웨어 정보 저장부 140: 인터페이스부
150: 확인파일 전달부 160: 펌웨어 정보 전달부
170: 펌웨어 업데이트부 200: 개인용 컴퓨터
201: 프로그램 저장부 202: 펌웨어 확인부
203: 펌웨어 다운로드부 204: 펌웨어 업로드부
205: 진단부 206: 복원부
300: 업데이트 서버

Claims (23)

  1. 펌웨어를 업데이트하는 매니저 프로그램을 확인하는 매니저 프로그램 확인파일이 저장되어 있으며, 상기 매니저 프로그램 확인파일을 개인용 컴퓨터로 전달하는 임베디드 장치;
    상기 임베디드 장치별 매니저 프로그램 설치파일 및 펌웨어 업데이트 파일을 구축하고 있는 업데이트 서버; 및
    상기 임베디드 장치로부터 전달받은 매니저 프로그램 확인파일을 실행시켜, 상기 임베디드 장치의 펌웨어를 업데이트하는 매니저 프로그램이 설치되어 있는지 판단하고, 판단 결과 설치되어 있지 않다면, 상기 업데이트 서버로 상기 임베디드 장치에 따른 매니저 프로그램 설치파일을 요청하여 수신하며, 상기 수신한 매니저 프로그램 설치파일을 실행시켜 해당 매니저 프로그램을 설치하는 개인용 컴퓨터;
    로 구성되는 매니저 프로그램을 자동으로 설치하는 시스템.
  2. 제 1항에 있어서,
    상기 개인용 컴퓨터는, 상기 임베디드 장치의 펌웨어를 업데이트하는 매니저 프로그램이 설치되어 있는지 판단한 결과 설치되어 있다면, 상기 업데이트 서버에 구축된 최신 버전의 매니저 프로그램 설치파일을 요청하여 해당 매니저 프로그램을 업데이트하는 것을 특징으로 하는 매니저 프로그램을 자동으로 설치하는 시스템.
  3. 제 1항 또는 제 2항에 있어서,
    상기 개인용 컴퓨터 내 설치된 매니저 프로그램은, 기 설정 및 저장되어 있는 업데이트 서버의 URL 정보를 이용하여 상기 업데이트 서버에 접속하고, 상기 접속한 업데이트 서버로 상기 펌웨어 정보를 전달하여, 펌웨어 업데이트 파일을 수신하는 것을 특징으로 하는 매니저 프로그램을 자동으로 설치하는 시스템.
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 임베디드 장치 내의 펌웨어 버전 정보와 최신 펌웨어 버전 정보를 제공하는 업데이트 서버로부터 수신한 최신 펌웨어 버전 정보를 비교하고, 비교 결과 상기 버전 정보가 동일하지 않다면, 상기 업데이트 서버로 펌웨어를 업데이트하는 펌웨어 업데이트 파일을 요청하여 수신하고, 수신된 펌웨어 업데이트 파일을 상기 임베디드 장치로 업로드하는 매니저 프로그램을 기록한 기록매체.
  10. 제 9항에 있어서,
    상기 매니저 프로그램 내에 저장된 업데이트 서버의 URL 정보를 이용하여, 상기 업데이트 서버에 접속하고, 상기 접속한 업데이트 서버로 상기 임베디드 장치의 제품 정보를 전달하여, 상기 펌웨어 업데이트 파일을 수신하는 것을 특징으로 하는 매니저 프로그램을 기록한 기록매체.
  11. 업데이트 서버를 임베디드 장치에 따른 펌웨어 업데이트 파일을 저장하고 있으며, 임베디드 장치와 연결된 개인용 컴퓨터로부터 최신 펌웨어 버전 정보 요청 신호가 수신되면, 요청한 최신 펌웨어 버전 정보를 전달하고, 상기 임베디드 장치의 펌웨어를 업데이트하는 개인용 컴퓨터로부터 최신 펌웨어 업데이트 파일이 요청되면, 해당 파일을 전달하는 수단으로서 기능시키기 위한 프로그램을 기록한 기록매체.
  12. 제 11항에 있어서,
    상기 개인용 컴퓨터에서 최신 펌웨어 버전 정보 요청시 함께 전달된 상기 임베디드 장치의 제품 정보에 근거하여, 상기 개인용 컴퓨터로 상기 임베디드 장치에 따른 최신 펌웨어 버전 정보를 제공하는 것을 특징으로 하는 프로그램을 기록한 기록매체.
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 임베디드 장치와 컴퓨터가 연결되어, 임베디드 장치 내에 저장되어 있는 매니저 프로그램 확인파일이 상기 컴퓨터에서 실행되면, 상기 매니저 프로그램 확인파일이 컴퓨터에 임베디드 장치의 펌웨어를 업데이트하는 매니저 프로그램이 설치되어 있는지 판단하는 1단계;
    판단 결과 설치되어 있지 않다면, 상기 컴퓨터에서 임베디드 장치별 매니저 프로그램 설치파일을 구축하고 있는 업데이트 서버로 해당 매니저 프로그램 설치파일을 요청하는 2단계;
    상기 업데이트 서버로부터 요청한 매니저 프로그램 설치파일을 상기 컴퓨터에서 수신하여, 해당 매니저 프로그램을 컴퓨터 내 프로그램 저장부에 설치하는 3단계;
    로 구성되는 시스템에서의 매니저 프로그램 설치방법.
  18. 제 17항에 있어서,
    상기 2단계에서, 임베디드 장치와 연결된 컴퓨터에 매니저 프로그램이 설치되어 있다면, 상기 컴퓨터에서 상기 업데이트 서버의 데이터베이스에 저장된 최신 버전의 매니저 프로그램 정보를 확인하여, 상기 컴퓨터에 저장된 매니저 프로그램 버전 정보와 다른 경우, 상기 컴퓨터에서 상기 업데이트 서버로 최신 버전의 매니저 프로그램 설치파일을 요청하는 것을 특징으로 하는 시스템에서의 매니저 프로그램 설치방법.
  19. 제 17항에 있어서,
    상기 3단계 이후에, 상기 매니저 프로그램이 컴퓨터에 설치되면, 상기 컴퓨터에서 상기 임베디드 장치로 해당 제품 정보 및 펌웨어의 버전 정보를 요청하여 전달받는 단계;
    상기 컴퓨터에서 전달받은 상기 임베디드 장치의 제품 정보와 펌웨어의 버전 정보에 근거하여, 상기 매니저 프로그램이 임베디드 장치의 펌웨어를 업데이트하는 단계;
    를 더 포함하는 것을 특징으로 하는 시스템에서의 매니저 프로그램 설치방법.
  20. (a) 임베디드 장치와 연결된 컴퓨터에서 매니저 프로그램이 자동 실행되면, 실행된 매니저 프로그램이 상기 임베디드 장치에서 펌웨어 버전 정보를 추출하는 단계;
    (b) 상기 컴퓨터에서 상기 펌웨어 버전 정보를 추출한 후, 임베디드 장치별 펌웨어 업데이트 파일을 제공하는 업데이트 서버로, 해당 임베디드 장치의 최신 펌웨어 버전 정보를 요청하는 단계;
    (c) 상기 컴퓨터에서 상기 업데이트 서버로부터 요청한 펌웨어 버전 정보를 수신하면, 상기 업데이트 서버로부터 수신한 최신 펌웨어 버전 정보와 상기 임베디드 장치에서 추출한 펌웨어 버전 정보가 동일한지 판단하는 단계;
    (d) 판단 결과 동일하지 않다면, 상기 컴퓨터에서 상기 업데이트 서버로부터 해당 펌웨어 업데이트 파일을 다운로드하는 단계;
    (e) 상기 컴퓨터에서 상기 다운로드된 펌웨어 업데이트 파일을 상기 임베디드 장치에 저장한 후 설치하는 단계;
    로 구성되는 시스템에서 펌웨어를 자동으로 업데이트하는 방법.
  21. 제 20항에 있어서,
    상기 (e) 단계는, 상기 임베디드 장치에 펌웨어 업데이트 파일이 저장 완료되면, 임베디드 장치는 인터페이스 연결을 해제하고, 상기 임베디드 장치의 전원을 리셋하는 (e-1) 단계;
    상기 리셋되는 임베디드 장치는, 상기 펌웨어 업데이트 파일을 실행시켜 펌웨어를 업데이트한 후, 상기 임베디드 장치의 시스템 정보를 상기 임베디드 장치의 메모리의 소정 공간에 저장하는 (e-2) 단계;
    로 구성되는 것을 특징으로 하는 시스템에서 펌웨어를 자동으로 업데이트하는 방법.
  22. 제 20항에 있어서,
    상기 (e) 단계 이후에, 상기 컴퓨터에서 상기 임베디드 장치에 설치된 펌웨어가 정상적으로 동작하는지 확인하고, 확인 결과를 출력하는 (f) 단계를 더 포함하는 것을 특징으로 하는 시스템에서 펌웨어를 자동으로 업데이트하는 방법.
  23. 제 22항에 있어서,
    상기 (f) 단계 이후에, 상기 임베디드 장치에 설치된 펌웨어가 정상 동작하지 않는다면, 상기 컴퓨터에서 상기 임베비드 장치에 설치된 펌웨어의 이전 버전에 해당하는 파일을 다운로드하여, 임베디드 장치의 펌웨어를 재설치하는 단계를 더 포함하는 것을 특징으로 하는 시스템에서 펌웨어를 자동으로 업데이트하는 방법.
KR1020070081950A 2007-08-14 2007-08-14 펌웨어를 자동으로 업데이트하는 임베디드 장치 및시스템과 그에 따른 방법 KR100951851B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070081950A KR100951851B1 (ko) 2007-08-14 2007-08-14 펌웨어를 자동으로 업데이트하는 임베디드 장치 및시스템과 그에 따른 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070081950A KR100951851B1 (ko) 2007-08-14 2007-08-14 펌웨어를 자동으로 업데이트하는 임베디드 장치 및시스템과 그에 따른 방법

Publications (2)

Publication Number Publication Date
KR20090017307A KR20090017307A (ko) 2009-02-18
KR100951851B1 true KR100951851B1 (ko) 2010-04-12

Family

ID=40686149

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070081950A KR100951851B1 (ko) 2007-08-14 2007-08-14 펌웨어를 자동으로 업데이트하는 임베디드 장치 및시스템과 그에 따른 방법

Country Status (1)

Country Link
KR (1) KR100951851B1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101675444B1 (ko) * 2012-03-29 2016-11-11 한화테크윈 주식회사 펌웨어 업데이트 장치 및 펌웨어 업데이트 방법.
KR20150103957A (ko) * 2014-03-04 2015-09-14 한화테크윈 주식회사 로컬망 내의 네트워크카메라 업데이트자동화 장치
KR102359727B1 (ko) * 2019-11-15 2022-02-11 주식회사 에스제이 테크 동작 분석을 이용한 작업공정 개선 방법
KR102497886B1 (ko) * 2020-12-04 2023-02-09 한국전자기술연구원 무인이동체의 임무소프트웨어 동작 시스템 및 방법
KR102501375B1 (ko) * 2020-12-04 2023-02-21 한국전자기술연구원 무인이동체 활용 임무서비스 지원을 위한 소프트웨어 개발 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030073824A (ko) * 2002-03-13 2003-09-19 주식회사 레인콤 범용 직렬 버스를 이용한 시스템의 펌웨어 업그레이드방법 및 장치
KR20040071063A (ko) * 2003-02-05 2004-08-11 삼성전자주식회사 무선 단말에 있어서 델타 파일에 따른 무선(ota)소프트웨어 업그레이드 시스템 및 방법
KR20060028893A (ko) * 2004-09-30 2006-04-04 엘지전자 주식회사 모니터 펌웨어 업그레이드 장치 및 방법
KR100648817B1 (ko) 2005-10-24 2006-11-23 삼성에스디에스 주식회사 자동 펌웨어 업데이트 시스템 및 그 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030073824A (ko) * 2002-03-13 2003-09-19 주식회사 레인콤 범용 직렬 버스를 이용한 시스템의 펌웨어 업그레이드방법 및 장치
KR20040071063A (ko) * 2003-02-05 2004-08-11 삼성전자주식회사 무선 단말에 있어서 델타 파일에 따른 무선(ota)소프트웨어 업그레이드 시스템 및 방법
KR20060028893A (ko) * 2004-09-30 2006-04-04 엘지전자 주식회사 모니터 펌웨어 업그레이드 장치 및 방법
KR100648817B1 (ko) 2005-10-24 2006-11-23 삼성에스디에스 주식회사 자동 펌웨어 업데이트 시스템 및 그 방법

Also Published As

Publication number Publication date
KR20090017307A (ko) 2009-02-18

Similar Documents

Publication Publication Date Title
US20110173599A1 (en) Home network system, gateway device, and firmware update method
KR100702038B1 (ko) 네트워크 시스템 및 그 동작방법
US9270732B2 (en) System and method for automatically uploading updates
US8161277B2 (en) Method of safe and recoverable firmware update and device using the same
US10002054B2 (en) Method and system for performing automatic system recovery
KR101368714B1 (ko) 이동식 저장장치, 소프트웨어 자동설치시스템 및소프트웨어 자동설치방법
US9727507B2 (en) USB device remote control method and system
KR100951851B1 (ko) 펌웨어를 자동으로 업데이트하는 임베디드 장치 및시스템과 그에 따른 방법
US20140059536A1 (en) Mobile terminal, information processing apparatus, and information processing method
KR20050008845A (ko) 서버 측 구성 관리
CN107066300B (zh) 一种存储设备的固件升级方法和存储设备
US20040040023A1 (en) Remote identification loader
CN101393524A (zh) 固件更新方法及系统
CN100583038C (zh) 用于启动与电子设备的接口的方法、系统和装置
US20150113263A1 (en) Method for updating basic input/output system of server
US9292272B2 (en) Differential flash archive installation
CN109002309A (zh) 一种硬件升级方法及相关装置
KR100677932B1 (ko) 전자기기 업그레이드 시스템과 그 제어방법
WO2009156902A1 (en) Easy software upgrade
KR100429903B1 (ko) 홈 게이트웨이 시스템의 이미지 업데이트 방법
KR20150080356A (ko) 홈오토시스템의 원거리업데이트방법
CN106548311B (zh) 库存管理设定系统
TWI792147B (zh) 預載入使用者介面的管理系統及其裝置操作方法
CN115878145B (zh) 电子设备及其系统升级方法、计算机可读存储介质
KR102414260B1 (ko) 네트워크 환경에서의 운영체제 자동 설치 장치 및 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
B701 Decision to grant
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee