KR20070038681A - 펌웨어 업데이트 방법 및 시스템 - Google Patents

펌웨어 업데이트 방법 및 시스템 Download PDF

Info

Publication number
KR20070038681A
KR20070038681A KR20050093873A KR20050093873A KR20070038681A KR 20070038681 A KR20070038681 A KR 20070038681A KR 20050093873 A KR20050093873 A KR 20050093873A KR 20050093873 A KR20050093873 A KR 20050093873A KR 20070038681 A KR20070038681 A KR 20070038681A
Authority
KR
South Korea
Prior art keywords
firmware
terminal
block
patch
difference
Prior art date
Application number
KR20050093873A
Other languages
English (en)
Other versions
KR100729525B1 (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 KR1020050093873A priority Critical patent/KR100729525B1/ko
Publication of KR20070038681A publication Critical patent/KR20070038681A/ko
Application granted granted Critical
Publication of KR100729525B1 publication Critical patent/KR100729525B1/ko

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

본 발명은 펌웨어 업데이트 방법 및 시스템에 관한 것으로, 펌웨어의 업데이트된 차분을 제공하는 서버와 유무선으로 접속되는 단말기의 펌웨어 업데이트 방법은, (a) 'boot flag'를 '차분i 패치'로 설정하는 단계, (b) 단말기의 임시메모리에서 구버전의 펌웨어 블록i와 차분i에 대해 패치를 수행하는 단계, (c) 'boot flag'를 '패치i 반영'으로 설정하는 단계, (d) 상기 (b) 단계에서 패치된 신버전의 펌웨어 블록i를 구버전의 펌웨어 블록i에 겹쳐쓰기하는 단계, (e) i값을 1 증가시킨 후, i값이 펌웨어 블록개수 n 보다 큰가 판단하는 단계 및, (f) i값이 n 보다 크지 않은 경우 상기 (a) 단계로 이동하고, i값이 n 보다 큰 경우 'boot flag'를 '정상 부팅'으로 설정하는 단계를 포함하고, 펌웨어 업데이트 도중 단말기에 에러가 발생하여 재부팅되면, 'boot flag'의 설정상태에 따라 다음 단계의 업데이트가 계속하여 수행된다.

Description

펌웨어 업데이트 방법 및 시스템{Method and system for updating firmware}
도 1은 본 발명의 바람직한 실시예에 따른 펌웨어 업데이트 방법을 설명하기 위한 개요도이다.
도 2는 도 1에 도시된 서버에서 펌웨어의 분할 차분을 생성하는 것을 설명하기 위한 개념도이다.
도 3은 단말기가 서버로부터 차분을 다운로드받아 차분 패치를 하기 전까지의 흐름을 설명하기 위한 흐름도이다.
도 4는 단말기 메모리의 일반적인 구성을 설명하는 개요도이다.
도 5는 본 발명의 바람직한 실시예에 의한 펌웨어 업데이트 방법을 설명하기 위한 흐름도이다.
본 발명은 단말기의 펌웨어를 업데이트하는 것에 관한 것으로, 특히 단말기에서 펌웨어를 다운로드받아 저장할 때 갑작스런 전원차단의 경우에도 업데이트 상태를 확인하여 임시저장 공간에 저장된 패치를 재기록함으로써 완전한 업데이트를 가능하게 하는 펌웨어 업데이트 방법 및 시스템에 관한 것이다.
최근 휴대폰, MP3 플레이어, 디지털 카메라등과 같은 휴대 단말장비가 급속하게 보급되고 있다. 이러한 단말기들의 성능이 발전하면서, 단말기의 운영 소프트웨어인 펌웨어도 업데이트 필요성이 증가하고 있다. 펌웨어는 단말기 운용에 가장 기본적인 소프트웨어이기 때문에, 단말기에서 펌웨어를 업데이트하는 기능은 업데이트 도중에 발생할 수 있는 장애로부터 안전하도록 설계되어야 한다.
그러나, 현재 업데이트 방식은 새로운 펌웨어의 전체 또는 신/구 펌웨어간의 차분을 단말기로 다운로드하는 방식으로서, 업데이트 도중에 전원공급이 차단되거나 통신이 두절되면 플래시램에 불완전한 펌웨어 이미지가 저장되어 정상적인 동작을 못하는 경우가 발생한다. 이러한 경우는 응급복구 모드로 단말기를 다시 재부팅하여 다시 처음부터 업데이트를 해야 하는 문제가 발생한다.
따라서, 현재의 펌웨어 업데이트 방식은, 새 버전의 펌웨어를 모두 다운로드하는 경우 업데이트 시간이 매우 길고, 따라서 긴 업데이트 시간에 비례하여 장애 발생확률도 높아져서 통신 두절이나 전원공급의 차단등의 장애가 발생할 수 있다.
또한, 펌웨어 업데이트 도중에 장애가 발생하는 경우, 응급복구 상태에서 처음부터 다시 업데이트를 해야 하므로 시간적 손실이 크고, 응급복구가 지원되지 않는 단말기의 경우에는 불완전하게 저장된 펌웨어로 인해 정상적인 동작이 되지 않는다는 문제점이 있었다.
본 발명은 상기한 점을 감안하여 발명된 것으로, 펌웨어의 분할 차분 및 단말기의 임시메모리를 사용하고, 업데이트 상태를 설정하여 업데이트 도중에 통신 두절등의 에러가 발생하였을 경우 재부팅 이후에 중단 시점 이후부터 계속하여 업데이트가 진행될 수 있는 펌웨어 업데이트 방법 및 시스템을 제공함에 그 목적이 있다.
상기 목적을 달성하기 위한 본 발명은, 펌웨어의 업데이트된 차분을 제공하는 서버와 유무선으로 접속되는 단말기의 펌웨어 업데이트 방법에 있어서, (a) 'boot flag'를 '차분i 패치'로 설정하는 단계, (b) 단말기의 임시메모리에서 구버전의 펌웨어 블록i와 차분i에 대해 패치를 수행하는 단계, (c) 'boot flag'를 '패치i 반영'으로 설정하는 단계, (d) 상기 (b) 단계에서 패치된 신버전의 펌웨어 블록i를 구버전의 펌웨어 블록i에 겹쳐쓰기하는 단계, (e) i값을 1 증가시킨 후, i값이 펌웨어 블록개수 n 보다 큰가 판단하는 단계 및, (f) i값이 n 보다 크지 않은 경우 상기 (a) 단계로 이동하고, i값이 n 보다 큰 경우 'boot flag'를 '정상 부팅'으로 설정하는 단계를 포함하고, 펌웨어 업데이트 도중 단말기에 에러가 발생하여 재부팅되면, 'boot flag'의 설정상태에 따라 다음 단계의 업데이트가 계속하여 수행되는 것을 특징으로 한다.
본 발명에 의한 펌웨어 업데이트 방법에 있어서, 상기 (a) 단계 전에, 단말기가 업데이트 서버로부터 펌웨어의 n개의 차분, 차분의 개수 n, n개 차분의 크기에 대한 데이터를 다운로드받는 단계를 더 포함하는 것이 바람직하다.
이때, 펌웨어의 n개의 차분은, 구버전의 펌웨어 및 신버전의 펌웨어가 n개의 블록으로 분할되는 단계와, 구버전의 펌웨어 n개의 블록과 신버전의 펌웨어 n개의 블록을 각각 비교하여 n개의 블록 차분을 생성하는 단계에 의해 만들어진다.
본 발명에 의한 펌웨어 업데이트 방법에 있어서, 상기 (b) 단계는, 구버전의 펌웨어 블록i를 단말기의 임시메모리에 로딩하는 단계, 로딩된 구버전의 펌웨어 블록i와 차분i에 대해 임시메모리에서 패치를 수행하는 단계 및, 패치된 신버전의 펌웨어 블록i를 단말기의 비휘발성 메모리에 저장하는 단계를 포함할 수 있다.
이때, 임시메모리는 SDRAM이고, 비휘발성 메모리는 플래시 램인 것이 바람직하고, 단말기의 비휘발성 메모리는, 펌웨어의 n개의 차분, 차분의 개수 n, n개 차분의 크기 및, 'boot flag'가 저장되는 제1저장영역 및, 구버전의 펌웨어 블록과 차분을 적용한 패치된 블록이 저장되는 제2저장영역을 갖는 것이 바람직하다.
상기 목적을 달성하기 위한 본 발명은, 펌웨어의 업데이트된 차분을 제공하는 서버와 유무선으로 접속되는 단말기의 펌웨어 업데이트 시스템에 있어서, 'boot flag'를 '차분i 패치'로 설정하는 수단, 단말기의 임시메모리에서 구버전의 펌웨어 블록i와 차분i에 대해 패치를 수행하는 수단, 'boot flag'를 '패치i 반영'으로 설정하는 수단, 상기 패치 수행 수단에서 패치된 신버전의 펌웨어 블록i를 구버전의 펌웨어 블록i에 겹쳐쓰기하는 수단 및, i값을 1 증가시키고, i값이 펌웨어 블록개수 n 보다 큰가 판단하는 수단을 구비하고, i값이 n 보다 크지 않으면 상기 (a) 수단에서 'boot flag'를 '차분i 패치'로 설정하고, i값이 n 보다 크면 'boot flag'를 '정상 부팅'으로 설정함으로써, 펌웨어 업데이트 도중 단말기에 에러가 발생하여 재부팅되면, 'boot flag'의 설정상태에 따라 다음 단계의 업데이트가 수행되는 것을 특징으로 한다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세하게 설명하기로 한다. 그러나, 이하의 실시예는 이 기술분야에서 통상적인 지식을 가진 자에게 본 발명이 충분히 이해되도록 제공되는 것으로서 여러 가지 다른 형태로 변형될 수 있으며, 본 발명의 범위가 다음에 기술되는 실시예에 한정되는 것은 아니다.
(실시예)
이하, 예시도면을 참조하여 본 발명에 따른 실시예를 상세히 설명한다.
도 1은 본 발명의 바람직한 실시예에 따른 펌웨어 업데이트 방법을 설명하기 위한 개요도이다.
이동 단말기의 펌웨어 등과 같은 소프트웨어를 업데이트하기 위해서는 업데이트 데이터를 제공하는 제공자(100)가 필요하다. 도 1을 참조하면, 단말기(104)와 업데이트 제공자(100)는 무선 또는 유선등의 방식으로 접속된다. 업데이트 제공자는 서버(102)를 구비하고 있는데, 서버는 단말기에게 필요한 펌웨어의 신/구간 차분을 생성하여 전송해주는 역할을 한다.
도 2는 도 1에 도시된 서버에서 펌웨어의 분할 차분을 생성하는 것을 설명하기 위한 개념도이다.
도 2를 참조하면, 구버전의 펌웨어(200) 및 신버전의 펌웨어(201)는 각각 분할모듈(203,204)에 의해 소정 크기로 분할되어 n개의 블록으로 된다. 즉, 구버전의 펌웨어(200)는 분할모듈(203)을 지나 구버전 펌웨어 블록1(205a), 구버전 펌웨어 블록2(205b), …, 구버전 펌웨어 블록n(205n)으로 되고, 신버전의 펌웨어(201)는 분할모듈(204)을 지나 신버전 펌웨어 블록1(206a), 신버전 펌웨어 블록2(206b), …, 신버전 펌웨어 블록n(206n)이 된다. 여기서 블록의 사이즈는 임의의 값이 될 수 있지만, 단말기 메모리의 입출력 블록 크기인 것이 바람직하다.
이어서, 차분생성모듈(207)은 신버전의 펌웨어 n개의 블록(205a,205b,…,205n)과 구버전의 펌웨어 n개의 블록(206a,206b,…,206n)을 차례로 비교하여 n개의 블록 차분(207a,207b,…,207n)을 생성한다. n개의 블록 차분(207a,207b,…,207n)은 신/구 버전간의 차이점만에 관한 데이터이다.
도 3은 단말기가 서버로부터 차분을 다운로드받아 차분 패치를 하기 전까지의 흐름을 설명하기 위한 흐름도이다.
먼저, 서버(102)와 단말기(104)는 유선 또는 무선으로 접속되고, 단말기는 서버로부터 펌웨어의 차분을 다운로드 받는다. 펌웨어의 차분이란 도 2에서 설명한 바와 같은 각 블록의 n개의 차분을 의미한다. 이때, 단말기는 차분 데이터와 함께 차분의 개수 n과, n개 차분의 크기도 같이 전송받아 단말기의 제1저장영역(후술함)에 저장한다(제301단계).
이어서, 단말기는 첫번째 차분의 패치를 시작하기 위해 최초의 'boot flag'를 '차분 1 패치'로 하여 제1저장영역에 저장한다(제302단계).
다음으로, 단말기는 실제로 패치 작업을 수행하기 위해 재부팅된다(제303단계).
이와 같은 과정에서, 만약 차분 다운로드 중이나, 또는 'boot flag' 저장 중 에 전원 차단이나 통신 두절과 같은 에러가 발생할 경우에는, 아직 단말기의 펌웨어에 대한 겹쳐 쓰기가 실행되지 않았으므로, 다시 차분을 다운로드 받아 저장하는 과정을 되풀이하면 된다.
도 4는 단말기 메모리의 일반적인 구성을 설명하는 개요도이다.
단말기의 메모리는 정보를 저장하는 역할을 하는 곳으로, 일반적으로 비휘발성 메모리인 플래시 램이 사용된다.
단말기의 메모리는 부트로더가 저장되는 영역(401), 커널 영역(402), 루트 파일 시스템이 저장되는 영역(403), 제1저장영역(404) 및, 제2저장영역(405)으로 구성될 수 있다.
이 중 제1저장영역(404)은 서버로부터 전송받은 차분, 차분의 개수, 차분의 크기, 'boot flag'를 저장하는 영역이고, 제2저장영역(405)은 단말기의 구버전 펌웨어 블록과 차분을 적용한 패치된 블록을 저장하는 영역이다. 제2저장영역(405)에 저장되는 패치된 블록은 구버전의 펌웨어 영역에 겹쳐쓰기 도중 단말기의 전원이 차단된다고 해도, 계속해서 구버전의 펌웨어 영역에 겹쳐쓰기를 하기 위해 사용된다.
이하, 도 5를 참조하여 펌웨어 업데이트 방법을 상세하게 설명한다.
도 5는 본 발명의 바람직한 실시예에 의한 펌웨어 업데이트 방법을 설명하기 위한 흐름도이다. 도 5에 도시된 차분 패치를 수행하여 펌웨어를 업데이트하는 단계(제501단계~제514단계)에서는, 사용자가 단말기에 임의로 입력하는 것을 방지하기 위해 단말기의 입력기능은 모두 차단된다. 그리고, 이미 차분이 모두 단말기의 메모리에 저장되었으므로, 서버와의 통신 연결은 필요 없어 통신두절로 인한 에러의 문제는 발생하지 않는다.
도 3에 도시된 흐름을 거쳐 단말기가 재부팅되면, 먼저 메모리의 'boot flag'를 검사한다.
'boot flag'가 '차분1 반영'에서 '차분 n 반영'인지를 판단하여, '차분1 반영'에서 '차분 n 반영'인 경우라면, 패치 i를 반영하는 제509단계로 이동한다. 만약, 'boot flag'가 '차분1 반영'에서 '차분 n 반영'인 경우가 아니라면, 제502단계로 이동한다.
제502단계에서, 'boot flag'가 '차분1 패치'에서 '차분 n 패치'인지를 판단하여, '차분1 패치'에서 '차분 n 패치'가 아닌 경우에는 단말기가 정상적으로 부팅되는 상태이므로 제503단계로 이동하여 단말기를 정상부팅한다.
만약, 'boot flag'가 '차분1 패치'에서 '차분 n 패치'라면, 차분i를 패치한다(제504단계).
차분i에 대한 패치는 단말기의 패치 모듈에서 수행되는데, i번째 블록의 구버전 펌웨어를 임시 메모리에 로딩하고, 저장된 차분i와 구버전 펌웨어 i번째 블록을 임시 메모리에서 패치를 수행한다. 임시 메모리는 단말기의 휘발성 메모리를 사용하는 것이며, SDRAM 등이 이에 해당한다. 펌웨어 블록의 패치는 펌웨어 구버전 블록에 차분 블록을 적용하여 신버전 블록을 만드는 과정을 의미한다.
도 3에서 설명한 바와 같은 펌웨어 다운로드 후에 단말기가 재부팅이 된 경우라면, 'boot flag'가 '차분1 패치'로 설정되어 있으므로, 'i=1'이 된다.
이어서, 메모리의 제2저장영역에 패치된 결과를 저장한다(제506단계).
만약, 차분i를 패치하는 단계와 패치된 결과를 저장하는 단계에서 단말기의 전원차단이 발생하면(제505단계,제507단계), 'boot flag'가 여전히 '차분i 패치'이므로, 다시 제504단계 이전으로 이동하여 차분 패치를 수행하면 된다.
이어서, 'boot flag'를 '패치i 반영'으로 지정한다(제508단계).
생성된 패치를 구버전의 i번째 블록의 펌웨어 영역에 겹쳐 쓰기를 하는 패치i 반영 모듈을 실행한다(제509단계).
만약, 이때 전원차단이 발생하여 재부팅이 된다면, 'boot flag'는 '패치i 반영' 상태이므로, 제501단계에서 바로 제509단계로 진행된다. 즉, 이 경우는 패치i 반영 모듈 수행중에 전원차단이 발생하여 재부팅된 경우이기 때문에, 이미 메모리의 제2저장영역에 패치된 블록이 있으므로, 이것을 로딩하여 패치i 반영 모듈을 실행한다.
제509단계 후에, 패치 반영이 완료되면, i 값을 1 증가한다(제510단계). 이어서, i 값이 블록 개수 n 보다 큰가를 판단하여(제511단계) 크지 않다면, 'boot flag'를 '차분i 패치'로 설정하고(제512단계), 차분 패치를 계속 진행하기 위해 제504단계로 이동한다.
만일, 제511단계에서 i 값이 블록 개수 n 보다 크다면 모든 차분 패치가 완료된 것이므로, 'boot flag'를 '정상 부팅'으로 설정한다(제513단계). 단말기의 'boot flag'가 '정상 부팅'으로 설정된 상태에서 단말기가 재부팅되면(제514단계), 펌웨어 업데이트가 완성된 상태에서 단말기가 정상적으로 부팅된다.
이하, 본 발명을 MP3 플레이어의 펌웨어 업데이트에 적용한 예를 설명한다.
먼저 서버로 사용될 PC에 MP3 플레이어의 구버전의 펌웨어와 신버전의 펌웨어를 저장한다. 그리고, 도 2를 참조하여 상기에서 설명한 것 처럼, 리눅스의 공개 유틸리티인 'split'를 사용하여 MP3 플레이어의 플래시 램 블록 사이즈인 128 kbyte의 크기로 신/구버전의 펌웨어를 분할한 후, 공개 유틸리티인 'diff'를 사용하여 각 블록의 차분을 생성한다.
MP3 플레이어의 플래시 램에 본 발명에 의한 펌웨어 업데이트 방법을 수행하는 프로그램을 미리 설치해 놓고, PC와 MP3 플레이어를 USB 케이블로 연결한다. 이어서 PC에 저장된 차분을 MP3 플레이어로 전송하고 MP3 플레이어의 프로그램은 차분을 플래시 램의 제1저장영역에 저장한다. 전송이 완료되면 MP3 플레이어가 재부팅되고 도 5를 참조하여 설명한 흐름에 따라 차분 패치 작업이 수행되어 구버전의 펌웨어를 신버전으로 패치하게 된다.
MP3 플레이어 패치 도중 전원이 차단되고 재부팅이 되면, 이전에 패치작업 중이던 블록부터 작업이 계속된다. 모든 작업이 완료되고 다시 재부팅이 되면 신버전의 펌웨어가 적용된다.
상기한 바와 같이 본 발명에 의하면, 단말기의 펌웨어 업데이트 도중 에러가 발생하였을 경우 재부팅 이후에 중단 시점 이후부터 계속하여 업데이트가 진행될 수 있으므로, 업데이트 기능의 안정성을 확보할 수 있고, 완전한 펌웨어가 저장되는 것을 보장할 수 있으며, 업데이트 시간을 최소화할 수 있는 효과가 있다.
이상, 본 발명의 바람직한 실시예를 들어 상세하게 설명하였으나, 본 발명은 상기 실시예에 한정되는 것은 아니며, 본 발명의 기술적 사상의 범위내에서 당 분야에서 통상의 지식을 가진 자에 의하여 여러 가지 변형이 가능하다.

Claims (8)

  1. 펌웨어의 업데이트된 차분을 제공하는 서버와 유무선으로 접속되는 단말기의 펌웨어 업데이트 방법에 있어서,
    (a) 'boot flag'를 '차분i 패치'로 설정하는 단계;
    (b) 단말기의 임시메모리에서 구버전의 펌웨어 블록i와 차분i에 대해 패치를 수행하는 단계;
    (c) 'boot flag'를 '패치i 반영'으로 설정하는 단계;
    (d) 상기 (b) 단계에서 패치된 신버전의 펌웨어 블록i를 구버전의 펌웨어 블록i에 겹쳐쓰기하는 단계;
    (e) i값을 1 증가시킨 후, i값이 펌웨어 블록개수 n 보다 큰가 판단하는 단계 및;
    (f) i값이 n 보다 크지 않은 경우 상기 (a) 단계로 이동하고, i값이 n 보다 큰 경우 'boot flag'를 '정상 부팅'으로 설정하는 단계를 포함하고,
    펌웨어 업데이트 도중 단말기에 에러가 발생하여 재부팅되면, 'boot flag'의 설정상태에 따라 다음 단계의 업데이트가 계속하여 수행되는 것을 특징으로 하는 펌웨어 업데이트 방법.
  2. 제1항에 있어서, 상기 (a) 단계 전에,
    단말기가 업데이트 서버로부터 펌웨어의 n개의 차분, 차분의 개수 n, n개 차 분의 크기에 대한 데이터를 다운로드받는 단계를 더 포함하는 것을 특징으로 하는 펌웨어 업데이트 방법.
  3. 제2항에 있어서, 상기 펌웨어의 n개의 차분은,
    구버전의 펌웨어 및 신버전의 펌웨어가 n개의 블록으로 분할되는 단계 및;
    구버전의 펌웨어 n개의 블록과 신버전의 펌웨어 n개의 블록을 각각 비교하여 n개의 블록 차분을 생성하는 단계에 의해 만들어지는 것을 특징으로 하는 펌웨어 업데이트 방법.
  4. 제1항에 있어서, 상기 (b) 단계는,
    구버전의 펌웨어 블록i를 단말기의 임시메모리에 로딩하는 단계;
    로딩된 구버전의 펌웨어 블록i와 차분i에 대해 임시메모리에서 패치를 수행하는 단계 및;
    패치된 신버전의 펌웨어 블록i를 단말기의 비휘발성 메모리에 저장하는 단계를 포함하는 것을 특징으로 하는 펌웨어 업데이트 방법.
  5. 제4항에 있어서,
    상기 임시메모리는 SDRAM이고, 상기 비휘발성 메모리는 플래시 램인 것을 특징으로 하는 펌웨어 업데이트 방법.
  6. 제4항에 있어서, 단말기의 상기 비휘발성 메모리는,
    펌웨어의 n개의 차분, 차분의 개수 n, n개 차분의 크기 및, 'boot flag'가 저장되는 제1저장영역 및;
    구버전의 펌웨어 블록과 차분을 적용한 패치된 블록이 저장되는 제2저장영역을 갖는 것을 특징으로 하는 펌웨어 업데이트 방법.
  7. 제1항에 있어서, 업데이트 도중에는 단말기의 입력기능이 모두 차단되는 것을 특징으로 하는 펌웨어 업데이트 방법.
  8. 펌웨어의 업데이트된 차분을 제공하는 서버와 유무선으로 접속되는 단말기의 펌웨어 업데이트 시스템에 있어서,
    'boot flag'를 '차분i 패치'로 설정하는 수단;
    단말기의 임시메모리에서 구버전의 펌웨어 블록i와 차분i에 대해 패치를 수행하는 수단;
    'boot flag'를 '패치i 반영'으로 설정하는 수단;
    상기 패치 수행 수단에서 패치된 신버전의 펌웨어 블록i를 구버전의 펌웨어 블록i에 겹쳐쓰기하는 수단 및;
    i값을 1 증가시키고, i값이 펌웨어 블록개수 n 보다 큰가 판단하는 수단을 구비하고,
    i값이 n 보다 크지 않으면 상기 (a) 수단에서 'boot flag'를 '차분i 패치'로 설정하고, i값이 n 보다 크면 'boot flag'를 '정상 부팅'으로 설정함으로써, 펌웨어 업데이트 도중 단말기에 에러가 발생하여 재부팅되면, 'boot flag'의 설정상태에 따라 다음 단계의 업데이트가 수행되는 것을 특징으로 하는 펌웨어 업데이트 시스템.
KR1020050093873A 2005-10-06 2005-10-06 펌웨어 업데이트 방법 및 시스템 KR100729525B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050093873A KR100729525B1 (ko) 2005-10-06 2005-10-06 펌웨어 업데이트 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050093873A KR100729525B1 (ko) 2005-10-06 2005-10-06 펌웨어 업데이트 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20070038681A true KR20070038681A (ko) 2007-04-11
KR100729525B1 KR100729525B1 (ko) 2007-06-15

Family

ID=38159888

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050093873A KR100729525B1 (ko) 2005-10-06 2005-10-06 펌웨어 업데이트 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR100729525B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101123685B1 (ko) * 2009-07-02 2012-03-20 (주)세븐코아 동적 소프트웨어 업그레이드 기술을 이용한 단말기 내의 프로그램 업그레이드 방법 및 시스템
KR101462282B1 (ko) * 2008-08-12 2014-11-14 주식회사 엘지유플러스 이동통신단말기의 업데이트 장치 및 그 방법
KR20220086230A (ko) * 2020-12-16 2022-06-23 현대오토에버 주식회사 차량용 제어기의 차분 업데이트 방법, 및 차분 업데이트 롤백 방법

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101780909B1 (ko) * 2013-11-06 2017-09-21 미쓰비시덴키 가부시키가이샤 소프트웨어 갱신 장치 및 소프트웨어 갱신 프로그램을 기억한 기억 매체
US11650811B2 (en) 2019-11-26 2023-05-16 Hyundai Autoever Corp. Method of updating control unit for vehicle
KR102275140B1 (ko) * 2019-11-26 2021-07-08 현대오트론 주식회사 차량용 제어기의 업데이트 방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040008007A (ko) * 2002-07-15 2004-01-28 에임텍 주식회사 무선단말기 펌웨어 업그레이드 방법
KR20040037976A (ko) * 2002-10-31 2004-05-08 엘지전자 주식회사 이동통신 단말기에서의 펌웨어 갱신방법
KR20050080504A (ko) * 2004-02-10 2005-08-17 (주)씨앤에스 테크놀로지 인터넷 영상 전화 단말기의 펌웨어 자동 업그레이드시스템 및 이의 운용방법
KR100762618B1 (ko) * 2004-03-18 2007-10-01 삼성전자주식회사 이동통신 단말기에서 펌웨어 업그레이드 엔진을업그레이드하는 방법 및 시스템

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101462282B1 (ko) * 2008-08-12 2014-11-14 주식회사 엘지유플러스 이동통신단말기의 업데이트 장치 및 그 방법
KR101123685B1 (ko) * 2009-07-02 2012-03-20 (주)세븐코아 동적 소프트웨어 업그레이드 기술을 이용한 단말기 내의 프로그램 업그레이드 방법 및 시스템
KR20220086230A (ko) * 2020-12-16 2022-06-23 현대오토에버 주식회사 차량용 제어기의 차분 업데이트 방법, 및 차분 업데이트 롤백 방법

Also Published As

Publication number Publication date
KR100729525B1 (ko) 2007-06-15

Similar Documents

Publication Publication Date Title
US7275153B2 (en) Booting and boot code update system using boot strapper code to select between a loader and a duplicate backup loader
KR101003888B1 (ko) 전자 장치에서의 3-단계 부팅 프로세스
US8539471B2 (en) Updating firmware of an electronic device
US7516315B2 (en) Electronic device having an alterable configuration and methods of manufacturing and configuring the same
KR100584338B1 (ko) 소프트웨어 업데이트 방법 및 시스템
WO2022007656A1 (zh) Bootloader软件更新方法、装置、嵌入式控制器以及存储介质
US20070226334A1 (en) Mobile terminal and software update method
WO2019062703A1 (zh) 升级方法、嵌入式***
KR100729525B1 (ko) 펌웨어 업데이트 방법 및 시스템
KR20080007132A (ko) 단말 시스템의 버전정보 갱신 장치 및 방법
WO2013117039A1 (zh) 软件升级方法和装置
CN112667265A (zh) 一种引导程序更新方法及装置
JP2010044574A (ja) 携帯端末、携帯端末制御方法、及び携帯端末制御プログラム
CN101384063A (zh) 一种终端设备修复升级的方法与***及其***的制作方法
KR20050088193A (ko) 고장 허용 갱신 에이전트를 구비한 모바일 핸드세트
JP2009009391A (ja) 更新処理ソフトウェア自己更新方法および携帯端末装置
CA2539897C (en) An electronic device having an alterable configuration and methods of manufacturing and configuring the same
US20210326125A1 (en) Installing application program code on a vehicle control system
KR100876748B1 (ko) 부트코드 업데이트 방법
CN118012475A (zh) 一种双cpu双***程序升级方法
KR20050119035A (ko) 이동 통신 단말기의 바이너리 데이터 업그레이드 방법
CN114879995A (zh) 固件更新的方法和装置
CN115756540A (zh) 固件升级方法、电子设备及存储介质
KR20050123360A (ko) 이동통신단말기의 소프트웨어 업그레이드방법

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
G170 Publication of correction
FPAY Annual fee payment

Payment date: 20120404

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130408

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150305

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160330

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee