KR100879547B1 - 이동통신단말기의 펌웨어 업데이트 방법 및 이를 이용하는이동통신단말기 - Google Patents

이동통신단말기의 펌웨어 업데이트 방법 및 이를 이용하는이동통신단말기 Download PDF

Info

Publication number
KR100879547B1
KR100879547B1 KR1020070086875A KR20070086875A KR100879547B1 KR 100879547 B1 KR100879547 B1 KR 100879547B1 KR 1020070086875 A KR1020070086875 A KR 1020070086875A KR 20070086875 A KR20070086875 A KR 20070086875A KR 100879547 B1 KR100879547 B1 KR 100879547B1
Authority
KR
South Korea
Prior art keywords
firmware
message
firmware update
stored
update message
Prior art date
Application number
KR1020070086875A
Other languages
English (en)
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 KR1020070086875A priority Critical patent/KR100879547B1/ko
Application granted granted Critical
Publication of KR100879547B1 publication Critical patent/KR100879547B1/ko

Links

Images

Landscapes

  • Mobile Radio Communication Systems (AREA)
  • Stored Programmes (AREA)

Abstract

N (N은 2이상의 정수)개의 펌웨어 데이터 세그먼트로 분리 구성된 펌웨어 업데이트 데이터를 수신하여 이동통신단말기의 펌웨어를 업데이트하는 방법에 있어서, 무선통신망으로부터 MMS 메시지를 수신하는 단계, 수신된 MMS 메시지가 펌웨어 업데이트 메시지인지를 확인하는 단계, 수신된 MMS 메시지가 펌웨어 업데이트 메시지인 경우에 수신된 펌웨어 업데이트 메시지에서 펌웨어 데이터 세그먼트를 추출하여 저장하는 단계, N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하는 단계 및 N개의 펌웨어 데이터 세그먼트가 모두 저장된 경우에, 저장된 N개의 펌웨어 데이터 세그먼트를 이용하여 이동통신단말기의 펌웨어를 업데이트하는 단계를 포함하여 이동통신단말기의 펌웨어를 업데이트하는 방법을 구성한다. 따라서, 대용량의 펌웨어 업데이트 데이터를 안정적으로 신속하게 수신하여 펌웨어를 업데이트할 수 있어, 사용자 만족도를 향상시키고 서비스의 비용 및 효율성을 기할 수 있다.
이동통신단말기, 펌웨어, 업데이트, MMS

Description

이동통신단말기의 펌웨어 업데이트 방법 및 이를 이용하는 이동통신단말기{FIRMWARE UPDATE METHOD IN A MOBILE TELEPHONE AND A MOBILE TELEPHONE USING THE SAME}
본 발명은 이동통신단말기의 펌웨어 업데이트 방법 및 이를 이용한 이동통신단말기에 관한 것으로, 더욱 상세하게는 서비스 센터의 방문이나, 인터넷 다운로드 등을 통하여 펌웨어를 업데이트하는 방식이 아닌 무선통신망을 이용하여 이동통신단말기의 펌웨어를 업데이트하는 방법 및 이를 이용한 이동통신단말기에 관한 것이다.
최근의 이동통신단말기는 사용자의 요구를 반영하는 다양한 기능들을 수용하고 있다. 특히, 최근의 이동통신단말기는 제품 출시단계에서 모든 개발이 완료되는 것이 아니라, 제품 출시 이후에도 끊임없이 탑재된 소프트웨어의 진화를 추구하고 있다. 즉, 이동통신단말기에는 콜-프로세싱(call-processing) 등의 이동통신단말기의 본연적인 기능뿐만 아니라, 다양한 부가기능들이 탑재되어 있는데, 이러한 기능들은 점차적으로 복잡화되어 가고 있을 뿐 아니라 탑재된 어플리케이션들의 크기 역시도 증가되어 가고 있는 추세이다. 통상적으로 이동통신단말기 소프트웨어는 펌 웨어(firmware)로서 이동통신단말기 내부의 비휘발성 메모리(non-volatile memory) 소자에 저장된다.
따라서, 이동통신단말기의 개발 및 생산 업체의 경우에는 제품 출시 이후 단계에서도 출시된 제품에 탑재된 펌웨어의 수정, 보완 작업을 지속적으로 진행한다. 이동통신단말기와 같이 라이프사이클(life-cycle)이 극도로 짧은 제품의 경우나, 끊임없이 개선하고 보완하여야 하는 소프트웨어의 관점에서는 핵심적인 기능들의 완전성이 담보된다면 시장에 출시를 하고, 세부적인 문제점들은 지속적인 수정, 보완 작업으로 해결해나가는 것이 필요할 수 있기 때문이다. 이러한 수정, 보완 작업의 대상은 제품 출시 이후에 발견된 이동통신단말기의 기능적 장애 사항을 해결하기 위한 것일 수도 있으며, 보다 완벽한 제품을 위한 기능 추가나 사용자의 요구사항들을 반영한 기능 보완 및 수정일 수 있다.
한편, 이러한 이동통신단말기의 펌웨어 업그레이드에 있어서 중요한 점은 얼마나 소요되는 비용을 최소화시킬 수 있을 것이며, 얼마나 펌웨어 업그레이드에 수반되는 사용자의 불편을 최소화시킬 수 있을 것 인가로 정리된다 할 수 있다.
통상적으로, 펌웨어 업그레이드를 위해서는 사용자가 소유한 이동통신단말기의 대리점이나 서비스 센터를 직접 방문하여 펌웨어 업그레이드 서비스를 받아야 한다. 또는, 해당 이동통신단말기 생산업체가 제공하는 인터넷 웹페이지 등을 통하여 펌웨어 업그레이드 파일을 다운로드 받고 케이블을 연결하여 직접 펌웨어 업그레이드를 수행하여야 한다. 하지만, 이와 같은 서비스 센터의 직접 방문을 통한 펌웨어 업그레이드 서비스는 시간적 공간적 제약으로 인하여 많은 비용의 소모를 요 구하고 사용자 불만족을 유발할 수 있다. 마찬가지로, 인터넷을 통한 펌웨어 업그레이드 서비스의 경우에도 인터넷을 사용할 수 없는 환경이나, 인터넷 사용에 익숙하지 않은 사용자 계층에게는 불편을 줄 수 있는 방식이다.
이를 위한 해결책으로, 종래의 기술로서는 이동통신단말기의 펌웨어를 망 관리 통신채널(DDC:Data Communication Channel)을 이용하여 업데이트할 수 있는 대한민국 등록특허 제516,551호(‘원격 소프트웨어 업그레이드 시스템 및 방법’) 및 두 대의 이동통신단말기간에 펌웨어 버전을 체크하여 상호간에 펌웨어 업그레이드를 실행할 수 있도록 하는 대한민국 등록특허 제606,806호(‘이동통신단말기의 소프트웨어 업그레이드 방법’) 등이 존재하였다.
하지만, 이러한 종래기술들은 이동통신단말기 펌웨어가 점차적으로 대용량화 되어가는 경향에 부합되지 못할 뿐 아니라, 3세대 이후 이동통신이 가지는 고속의 데이터 전송 서비스를 적절하게 활용하고 있지 못하며, 복수개의 단말기에 대한 동시다발적인 펌웨어 업데이트를 가능하게 하지 못한다는 문제점이 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은 무선통신망을 이용하여 이동통신단말기의 펌웨어를 업데이트하는 방법에 있어서, 대용량의 펌웨어 업데이트 데이터를 사용자의 단말기에서 안정적이고 신속하게 수신하여 펌웨어를 업데이트할 수 있도록 하여, 사용자의 편리성과 서비스의 용이성 및 만족도를 보장할 수 있는 이동통신단말기의 펌웨어 업데이트 방법을 제공하는데 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은 무선통신망을 이용하여 펌웨어를 업데이트할 수 있는 이동통신단말기로서, 대용량의 펌웨어 업데이트 데이터를 안정적으로 신속하게 수신하여 펌웨어를 업데이트할 수 있도록 하여, 사용자의 편리성과 서비스의 용이성 및 만족도를 보장할 수 있는 이동통신단말기를 제공하는데 있다.
상기 목적을 달성하기 위해 본 발명은, N (N은 2이상의 정수)개의 펌웨어 데이터 세그먼트로 분리 구성된 펌웨어 업데이트 데이터를 수신하여 이동통신단말기의 펌웨어를 업데이트하는 방법에 있어서, 무선통신망으로부터 MMS 메시지를 수신하는 단계, 수신된 MMS 메시지가 펌웨어 업데이트 메시지인지를 확인하는 단계, 상기 수신된 MMS 메시지가 펌웨어 업데이트 메시지인 경우에 상기 수신된 펌웨어 업데이트 메시지에서 펌웨어 데이터 세그먼트를 추출하여 저장하는 단계, 상기 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하는 단계 및 상기 N 개 의 펌웨어 데이터 세그먼트가 모두 저장된 경우에, 상기 저장된 N개의 펌웨어 데이터 세그먼트를 이용하여 상기 이동통신단말기의 펌웨어를 업데이트하는 단계를 포함한 이동통신단말기의 펌웨어 업데이트 방법을 제공한다.
여기에서, 상기 MMS 메시지는 MMS 메시지의 종류를 구분하기 위한 지시 필드를 가지며, 상기 수신된 MMS 메시지가 펌웨어 업데이트 메시지인지를 확인하는 단계는 상기 수신된 MMS 메시지의 지시 필드에 펌웨어 업데이트 메시지임을 식별하기 위한 코드가 기록된 것인지를 확인하는 것에 의하여 이루어질 수 있다.
여기에서, 상기 MMS 메시지가 펌웨어 업데이트 메시지인 경우에, 상기 펌웨어 업데이트 메시지가 포함한 펌웨어 데이터 세그먼트의 상기 펌웨어 업그레이드 데이터 내에서의 순서를 지정하기 위한 시퀀스 필드를 가지며, 상기 수신된 펌웨어 업데이트 메시지에서 펌웨어 데이터 세그먼트를 추출하여 저장하는 단계는 상기 시퀀스 필드의 값과 상기 펌웨어 데이터 세그먼트를 함께 추출하여 저장하도록 구성될 수 있다.
여기에서, 상기 MMS 메시지가 펌웨어 업데이트 메시지인 경우에, 상기 펌웨어 업데이트 메시지가 포함한 펌웨어 데이터 세그먼트의 상기 펌웨어 업데이트 메시지 내에서의 시작 위치를 지정하는 오프셋 필드 및 상기 펌웨어 업데이트 메시지가 포함한 펌웨어 데이터 세그먼트의 크기를 지정하는 크기값 필드를 포함하며, 상기 수신된 펌웨어 업데이트 메시지에서 펌웨어 데이터 세그먼트를 추출하여 저장하는 단계는 수신된 펌웨어 업데이트 메시지 메시지에서 상기 오프셋 필드와 상기 크기값 필드를 이용하여 펌웨어 데이터 세그먼트를 추출하여 저장하도록 구성될 수 있다.
여기에서, 상기 MMS 메시지가 펌웨어 업데이트 메시지인 경우에, 상기 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하는 단계는 추출 저장된 펌웨어 데이터 세그먼트들의 크기 합계가 상기 펌웨어 업데이트 데이터의 미리 정의된 전체 크기와 동일한지를 확인하도록 구성될 수 있다.
여기에서, 상기 수신된 펌웨어 업데이트 메시지 중에 적어도 하나는, 상기 펌웨어 업그레이드 데이터의 전체 크기값을 가지는 전체 크기값 필드를 가지며, 상기 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하는 단계는 상기 전체 크기값 필드의 값과 추출 저장된 펌웨어 데이터 세그먼트들의 크기 합계값이 동일한지를 확인하도록 구성될 수 있다. 이때, 상기 펌웨어 업데이트 메시지는 상기 펌웨어 업데이트 메시지가 포함한 펌웨어 데이터 세그먼트의 크기를 지정하는 크기값 필드를 포함하며, 상기 추출 저장된 펌웨어 데이터 세그먼트들의 크기 합계값은 상기 추출 저장된 펌웨어 데이터 세그먼트들에 대응되는 상기 크기값 필드의 값들을 합산한 값일 수 있다.
여기에서, 상기 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하는 단계는 추출 저장된 펌웨어 데이터 세그먼트의 수가 미리 정의된 N값과 동일한지를 확인하는 것일 수 있다.
여기에서, 상기 수신된 펌웨어 업데이트 메시지 중에 적어도 하나는, 상기 펌웨어 업그레이드 데이터를 구성하는 펌웨어 데이터 세그먼트의 수인 N 값을 담고 있는 펌웨어 데이터 세그먼트 숫자 정보 필드를 가지며, 상기 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하는 단계는 추출 저장된 펌웨어 바이너리 데이터의 수가 상기 펌웨어 데이터 세그먼트 숫자 정보 필드에 기록된 N 값과 동일한지를 확인하는 것에 의하여 이루어질 수 있다.
여기에서, 상기 펌웨어를 업데이트하는 단계는, 상기 저장된 N개의 펌웨어 데이터 세그먼트를 조합하여 펌웨어 업그레이드 이미지 파일을 생성하는 단계 및 상기 생성된 펌웨어 업그레이드 이미지 파일의 내용을 상기 이동통신단말기의 펌웨어가 탑재되는 비휘발성 메모리에 기록하는 단계를 포함하여 구성될 수 있다.
또는, 상기 펌웨어를 업데이트하는 단계는, 상기 이동통신단말기의 펌웨어가 탑재되는 비휘발성 메모리에 상기 저장된 N개의 펌웨어 데이터 세그먼트를 상기 저장된 펌웨어 데이터 세그먼트에 대응되는 시퀀스 필드값에 대응하여 순차적으로 기록하도록 구성될 수도 있다.
상기 다른 목적을 달성하기 위해 본 발명은, N (N은 2이상의 정수)개의 펌웨어 데이터 세그먼트로 분리 구성된 펌웨어 업데이트 데이터를 수신하여 펌웨어를 업데이트하는 이동통신단말기에 있어서, 무선 통신망으로부터 MMS 메시지를 수신하는 MMS 메시지 수신부, 상기 펌웨어 데이트 세그먼트를 저장하는 제 1 휘발성 메모리부, 상기 이동통신단말기의 펌웨어를 저장하는 제 2 휘발성 메모리부, 상기 MMS 메시지 수신부가 수신한 MMS 메시지가 펌웨어 업데이트 메시지인지를 확인하고, 펌웨어 업데이트 메시지인 경우 수신된 펌웨어 업데이트 메시지에서 펌웨어 데이터 세그먼트를 추출하여 상기 제1 휘발성 메모리부에 저장하는 펌웨어 데이터 세그먼트 추출 저장부 및 상기 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지 를 확인하여, 상기 N 개의 펌웨어 데이터 세그먼트가 모두 저장된 경우에, 상기 저장된 N개의 펌웨어 데이터 세그먼트를 이용하여 상기 제2 휘발성 메모리부에 펌웨어를 업데이트하는 펌웨어 업데이트 실행부를 포함하여 구성된 이동통신단말기를 제공한다.
여기에서, 상기 MMS 메시지는 MMS 메시지의 종류를 구분하기 위한 지시 필드를 가지며, 상기 펌웨어 바이너리 데이터 추출 저장부는 상기 수신된 MMS 메시지가 펌웨어 업데이트 메시지인지를 확인하기 위해서, 수신된 MMS 메시지의 지시 필드에 펌웨어 업데이트 메시지임을 식별하기 위한 코드가 기록된 것인지를 확인하도록 구성될 수 있다.
여기에서, 상기 MMS 메시지가 펌웨어 업데이트 메시지인 경우에, 상기 펌웨어 업데이트 메시지가 포함한 펌웨어 데이터 세그먼트의 상기 펌웨어 업그레이드 데이터 내에서의 순서를 지정하기 위한 시퀀스 필드를 가지며, 상기 펌웨어 데이터 세그먼트 추출 저장부는 상기 수신된 펌웨어 업데이트 메시지에서 상기 시퀀스 필드의 값과 상기 펌웨어 데이터 세그먼트를 함께 추출하여 상기 제1휘발성 메모리부에 저장하도록 구성될 수 있다.
여기에서, 상기 MMS 메시지가 펌웨어 업데이트 메시지인 경우에, 상기 펌웨어 업데이트 메시지가 포함한 펌웨어 데이터 세그먼트의 상기 펌웨어 업데이트 메시지 내에서의 시작 위치를 지정하는 오프셋 필드 및 상기 펌웨어 업데이트 메시지가 포함한 펌웨어 데이터 세그먼트의 크기를 지정하는 크기값 필드를 포함하며, 상기 펌웨어 바이너리 데이터 추출 저장부는 상기 펌웨어 업데이트 메시지에서 상기 시작 오프셋 필드와 상기 크기값 필드를 이용하여 펌웨어 데이터 세그먼트를 추출하여 상기 제1휘발성 메모리부에 저장하도록 구성될 수 있다.
여기에서, 상기 MMS 메시지가 펌웨어 업데이트 메시지인 경우에, 상기 펌웨어 업데이트 실행부는 추출 저장된 펌웨어 데이터 세그먼트의 크기 합계가 상기 펌웨어 업데이트 데이터의 미리 정의된 전체 크기와 동일한지를 확인하여 상기 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하도록 구성될 수 있다.
여기에서, 상기 수신된 펌웨어 업데이트 메시지 중에 적어도 하나는, 상기 펌웨어 업그레이드 데이터의 전체 크기값을 가지는 전체 크기값 필드를 가지며, 상기 펌웨어 업데이트 실행부는 상기 전체 크기값 필드의 값과 추출 저장된 펌웨어 데이터 세그먼트들의 크기 합계값이 동일한지를 확인하여 상기 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하도록 구성될 수 있다. 이때, 상기 펌웨어 업데이트 메시지는 상기 펌웨어 업데이트 메시지가 포함한 펌웨어 데이터 세그먼트의 크기를 지정하는 크기값 필드를 포함하며, 상기 추출 저장된 펌웨어 데이터 세그먼트들의 크기 합계값은 상기 추출 저장된 펌웨어 데이터 세그먼트들에 대응되는 상기 크기값 필드의 값들을 합산한 값이 될 수 있다.
여기에서, 상기 펌웨어 업데이트 실행부는 추출 저장된 펌웨어 데이터 세그먼트의 수가 미리 정의된 N값과 동일한지를 확인하여 상기 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하도록 구성될 수 있다.
여기에서, 상기 수신된 펌웨어 업데이트 메시지 중에 적어도 하나는, 상기 펌웨어 업그레이드 데이터를 구성하는 펌웨어 데이터 세그먼트의 수인 N 값을 담고 있는 펌웨어 데이터 세그먼트 숫자 정보 필드를 가지며, 상기 펌웨어 업데이트 실행부는 추출 저장된 펌웨어 데이터 세그먼트의 수가 상기 펌웨어 데이터 세그먼트 숫자 정보 필드에 기록된 N 값과 동일한지를 확인하여 상기 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하도록 구성될 수 있다.
여기에서, 상기 펌웨어 업데이트 실행부는 상기 저장된 N개의 펌웨어 데이터 세그먼트를 조합하여 펌웨어 업그레이드 이미지 파일을 생성하고 상기 생성된 펌웨어 업그레이드 이미지 파일의 내용을 상기 제 2 비휘발성 메모리부에 기록하도록 구성될 수 있다.
또는, 상기 펌웨어 업데이트 실행부는 상기 이동통신단말기의 펌웨어가 탑재되는 비휘발성 메모리에 상기 저장된 N개의 펌웨어 데이터 세그먼트를 상기 저장된 펌웨어 데이터 세그먼트에 대응되는 시퀀스 필드값에 따라 순차적으로 상기 제2휘발성 메모리부에 기록하도록 구성될 수 있다.
상기와 같은 본 발명의 이동통신단말기의 펌웨어 업데이트 방법 및 이를 이용한 이동통신단말기를 이용할 경우에는, 대용량의 펌웨어 업데이트 데이터를 안정적이고 신속하게 무선통신망을 통하여 수신하여, 서비스 센터의 방문이나, 번거로운 케이블의 연결 없이도 펌웨어를 간편하게 업데이트를 할 수 있게 된다. 따라서, 서비스 센터에서 펌웨어 업데이트를 서비스하기 위한 시간적, 공간적 낭비를 줄일 수 있을 뿐 아니라, 사용자의 편리성을 높이고 서비스의 만족도를 향상시킬 수 있 다.
또한, 기존 펌웨어의 문제점을 개선한 새로운 펌웨어를 동시다발적으로 사용자에게 배포시키는 것이 가능해짐으로써, 펌웨어의 구현상 문제에서 발생될 수 있는 사용자의 불만족도 및 서비스 비용의 증가를 줄일 수 있는 효과가 있다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명에 따른 이동통신단말기의 펌웨어 업데이트 방법을 설명하기 위한 개념도이다.
본 발명에 따른 이동통신단말기의 펌웨어 업데이트 방법을 이동통신단말기(110), 펌웨어 업데이트 서버(120) 및 이동통신단말기(110)와 펌웨어 업데이트 서버(120)가 연결되는 무선통신망(130)의 구성요소를 통하여 설명하도록 한다.
이동통신단말기(110)는 본 발명의 이동통신단말기의 펌웨어 업데이트 방법이 적용된 이동통신단말기로서, 펌웨어 업데이트 서버(120)로부터 펌웨어 업데이트 데이터를 수신하여 저장하고, 저장된 펌웨어 업데이트 데이터를 이용하여 내장된 비휘발성 메모리 소자에 기록된 펌웨어를 업데이트할 수 있다.
이때, 본 발명의 이동통신단말기의 펌웨어 업데이트 방법에서는 펌웨어 업데이트 서버(120)와 이동통신단말기(110)간의 펌웨어 업데이트 데이터 전송 및 수신을 MMS(Multimedia Messaging System) 메시지를 이용하여 수행하도록 한다.
MMS 메시지는 3세대(3rd generation) 이동 통신 서비스의 기본 요소이며, 사진, 음악, 음성, 동영상 등 다양한 형식의 멀티미디어 데이터를 첨부하여 주고받을 수 있는 메시징 시스템이다. 종래 기술인 짧은 텍스트(국문 40자-80바이트-내외) 위주의 단문 메시지(SMS: Short Message Service)와 비교하면, MMS 메시지는 보다 큰 용량의 데이터를 주고 받을 수 있을 뿐 아니라, 다양한 형태의 데이터 파일을 첨부하여 주고 받을 수 있다는 장점이 있다.
한편, 기본적으로 이동통신단말기의 펌웨어는 적용되는 이동통신단말기의 기능 및 사양에 따라서 다양한 용량을 가질 수 있으나, 통상적으로 하나의 MMS 메시지에 전체 펌웨어 업데이트 데이터를 포함시켜 전송하기에는 어려움이 있다.
이에, 본 발명의 이동통신단말기의 펌웨어 업데이트 방법에서는 전체 펌웨어 업데이트 데이터(140)를 복수 개(N개, N은 2이상의 정수)의 펌웨어 데이터 세그먼트(FDS: Firmware Data Segment; 141-1 ~ 141-N)로 분할하여 전송한다. 이동통신단말기(110)에서는 수신한 N개의 펌웨어 데이터 세그먼트를 이용하여 이동통신단말기(110)의 펌웨어를 자체적으로 업데이트하도록 구성된다.
도 2는 본 발명에 따른 이동통신단말기의 펌웨어 업데이트 방법을 설명하기 위한 순서도이다.
도 2를 참조하면, 본 발명에 따른 이동통신단말기의 펌웨어 업데이트 방법은 MMS 메시지를 수신하는 단계(S100), 수신된 MMS 메시지가 펌웨어 업데이트 메시지인지를 확인하는 단계(S110), 수신된 펌웨어 업데이트 메시지에서 펌웨어 데이터 세그먼트를 추출하여 저장하는 단계(S120), N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하는 단계(S130) 및 이동통신단말기의 펌웨어를 업데이트하는 단계(S140)를 포함하여 구성될 수 있다.
첫째로, 무선통신망으로부터 MMS 메시지를 수신하는 단계(S100)는 이동통신단말기가 연결된 무선통신망을 통하여 MMS 메시지를 수신하는 단계이다.
이때, 도 1에서 살펴본 바와 같이, 이동통신단말기(110)과 무선통신망(130)을 통하여 연결된 펌웨어 업데이트 서버(120)가 MMS 메시지를 통하여 펌웨어 데이터 세그먼트를 전송할 수 있으며, 펌웨어 데이터 세그먼트를 포함하여 전송되는 MMS 메시지를 펌웨어 업데이트 메시지(Firmware Update Message)라 정의할 수 있다.
둘째로, 상기 MMS 메시지를 수신하는 단계(S100)를 통하여 수신된 MMS 메시지가 펌웨어 업데이트 메시지인지를 확인하는 단계(S110)가 수행된다.
무선통신망(130)을 통하여 전달되는 MMS 메시지로는 다양한 종류의 MMS 메시지가 포함된다. 따라서, 수신된 MMS 메시지가 펌웨어 데이터 세그먼트를 포함하고 있는 펌웨어 업데이트 메시지인지를 확인하는 과정이 필요하게 되며, 본 단계(S110)에서는 소정의 과정을 통하여 수신된 MMS 메시지가 펌웨어 업데이트 메시지인지를 확인한다. 만약, 수신한 MMS 메시지가 펌웨어 업데이트 메시지가 아닌 경우에는 일반적인 MMS 메시지 처리 절차(S111)로 이행하게 되며, 일반적인 MMS 메시지 처리 절차(S111)는 본 발명의 특징이 아니므로 자세한 설명은 생략된다.
한편, 펌웨어 업데이트 메시지인지를 확인하는 단계(S110)에서 수신한 MMS 메시지가 펌웨어 업데이트 메시지인지를 확인하는 방식으로는 펌웨어 업데이트 서버(120)측에서 발송하는MMS 메시지에 소정의 지시 필드(indication field)를 포함시켜서 발송하고, 수신 측에서 지정된 위치의 지시 필드값을 독출하여 펌웨어 업데이트 메시지인지 여부를 확인할 수 있는 방법이 이용될 수 있을 것이다.
도 3는 본 발명에 따른 이동통신단말기의 펌웨어 업데이트 방법에 적용될 수 있는 펌웨어 업데이트 메시지의 포맷을 예시한 구조도이다.
도 3을 참조하면, 펌웨어 업데이트 메시지(300)의 포맷이 예시되어 있다. 펌웨어 업데이트 메시지(300)는 지시 필드(indication field; 301), 시퀀스 필드(sequence field; 302), 전체 크기값 필드(full length field; 303), 오프셋 필드(offset field; 304), 크기값 필드(length field; 305), 펌웨어 데이터 세그먼트 숫자 정보 필드(firmware data segment number field; 306) 및 펌웨어 데이터 세그먼트(307)를 포함하여 구성될 수 있다. 여기에서 예시된 각 필드들이 하나의 펌웨어 업데이트 메시지(300)내에 모두 포함되어야 하는 것은 아니며, 구현예에 따라서는 예시한 필드들 중의 일부만을 선택적으로 포함하여 펌웨어 업데이트 메시지(300)가 구성될 수 있음에 유의하여야 한다. 또한, 모든 펌웨어 업데이트 메시지가 선택된 필드들을 포함하여 구성되는 것이 아니라, 일부 펌웨어 업데이트 메시지만이 포함하여도 되는 성격의 필드들도 있음에 유의하여야 한다. 예컨대, 후술될 전체 크기값 필드(full length field; 303) 및 펌웨어 데이터 세그먼트 숫자 정보 필드(firmware data segment number field; 306)는 일련의 펌웨어 업데이트 메시지들중 적어도 하나의 메시지에만 정보가 담겨서 수신되어도 동작이 가능할 것이다. 상술한 펌웨어 업데이트 메시지인지를 확인하는 단계(S110)에서 수신한 MMS 메시지가 펌웨어 업데이트 메시지인지를 확인하는 과정은, 도 3의 펌웨어 업데이트 메시지(300)의 포맷을 이용하여 송신 측에 지시 필드(301)에 특정 코드를 부여하고 수신 측에서 이를 확인하는 것에 의하여 이루어질 수 있다.
한편, 지시 필드(301)를 제외한 나머지 필드들에 대해서는 도 2를 다시 참고하여 후술된다.
도 2를 다시 참고하면, 셋째로, 상기 수신된 MMS 메시지가 펌웨어 업데이트 메시지인 경우에 상기 수신된 펌웨어 업데이트 메시지에서 펌웨어 데이터 세그먼트를 추출하여 저장하는 단계(S120)가 수행된다.
펌웨어 업데이트 메시지에서 펌웨어 데이터 세그먼트를 추출하고 저장하기 위한 방식으로는, 도 3의 펌웨어 업데이트 메시지(300)의 포맷에서 오프셋 필드(304)와 크기값 필드(305)를 이용하는 방식이 적용될 수 있다.
오프셋 필드(304)는 펌웨어 업데이트 메시지 내에서 추출되어야 하는 펌웨어 데이터 세그먼트(307)의 펌웨어 업데이트 메시지 내에서의 시작위치를 지정하기 위한 필드이다. 또한, 크기값 필드(305)는 추출되어야 하는 펌웨어 데이터 세그먼트의 크기값(예, byte 단위)을 지정하기 위한 필드이다. 따라서, 펌웨어 데이터 세그먼트를 추출하여 저장하는 단계(S120)에서는 오프셋 필드(304)에서 지시하는 시작위치로부터 크기값 필드(305)에서 지시하는 길이만큼의 펌웨어 데이터 세그먼트(307)를 펌웨어 업데이트 메시지에서 추출하여 저장한다.
한편, 통상적으로 1부터 N번째까지의 펌웨어 데이터 세그먼트를 포함한 펌웨 어 업데이트 메시지가 펌웨어 업데이트 데이터를 구성하기 용이하도록 순차적으로 도달될 것(즉, 1번부터 N번까지가 순서대로 수신되는 것)을 보장하기는 용이하지 않으므로, 펌웨어 업데이트 메시지는 시퀀스 필드(302)를 포함하여 구성될 수도 있다. 이때, 시퀀스 필드(302)는 해당 펌웨어 업데이트 메시지가 포함하고 있는 펌웨어 데이터 세그먼트의 전체 펌웨어 업데이트 데이터 내에서의 순서(sequence)를 지정하는 필드라 할 수 있다. 예컨대, 시퀀스 필드(302)는 1부터 N까지의 펌웨어 데이터 세그먼트 중에서 해당 펌웨어 업데이트 메시지가 포함한 펌웨어 데이터 세그먼트의 순번을 지정할 수 있다. 만약, 시퀀스 필드(302)가 펌웨어 업데이트 메시지에 포함되어 발송된다면, 펌웨어 데이터 세그먼트를 추출하여 저장하는 단계(S120)에서는 추출된 펌웨어 데이터 세그먼트와 해당 펌웨어 데이터 세그먼트의 시퀀스 필드값을 함께 저장하도록 구성될 것이다. 물론, 시퀀스 필드를 이용하지 않고 송신 측과 수신 측의 소정의 절차(예컨대, 송신 측에 대한acknowledge 절차 등을 통하여 수신 측에서 순차적인 수신만을 허용하는 방식 등)에 의하여 수신되는 펌웨어 데이터 세그먼트의 순서를 유지하는 방식도 가능하다.
넷째로, N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하는 단계(S130)가 진행된다.
즉, N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하는 단계(S130)는 전체 펌웨어 업데이트 데이터가 N개의 펌웨어 데이터 세그먼트로 분리 구성되므로, N개의 펌웨어 데이터 세그먼트를 모두 수신하고 저장하여 펌웨어 업데이트를 진행할 수 있는 상태에 도달해 있는지를 확인하기 위한 단계이다.
필요한 펌웨어 데이터 세그먼트가 모두 추출 저장되어 있는지를 확인하기 위한 방법은, 1) 수신한 펌웨어 데이터 세그먼트의 크기 합계가 전체 펌웨어 업데이트 데이터의 크기와 동일한지를 확인하는 방법과, 2) 수신한 펌웨어 데이터 세그먼트의 숫자가 전체 펌웨어 업데이트 데이터를 구성하기 위해 필요한 세그먼트의 수(N)와 동일한지를 확인하는 방법 등이 적용될 수 있다.
1) 수신한 펌웨어 데이터 세그먼트의 크기 합계가 전체 펌웨어 업데이트 데이터의 크기와 동일한지를 확인하는 방법의 경우에, 비교대상이 되는 수신한 펌웨어 데이터 세그먼트의 크기 합계는 도 3에서 예시한 펌웨어 업데이트 메시지(300)의 크기값 필드(305)의 값들을 수신한 펌웨어 데이터 세그먼트들에 대하여 모두 합산함으로써 구해질 수 있다. 전체 펌웨어 업데이트 데이터의 크기는 이동통신단말기의 펌웨어가 탑재되는 비휘발성 메모리 소자의 용량에 따라 확정되는 경우가 많을 것이므로, 미리 정하여진 크기값일 수 있다. 또는, 펌웨어 업데이트 데이터의 크기가 가변적이라면 도 3에서 예시한 펌웨어 업데이트 메시지(300)의 전체 크기값 필드(303)의 값을 비교 대상이 되는 펌웨어 업데이트 데이터의 크기로 할 수 있다.
2) 수신한 펌웨어 데이터 세그먼트의 숫자가 전체 펌웨어 업데이트 데이터를 구성하기 위해 필요한 세그먼트의 수(N)와 동일한지를 확인하는 방법의 경우에는, 전체 펌웨어 업데이트 데이터를 구성하기 위해 필요한 세그먼트의 수(N)가 문제가 될 수 있다. 이때, 앞선 전체 펌웨어 업데이트 데이터의 크기의 경우와 같이, 세그먼트의 수(N) 역시, 펌웨어 업데이트 데이터의 크기가 고정되어 있다면 펌웨어 데이터 세그먼트의 크기와 수(N) 역시 고정적으로 운영하는 방식이 가능할 것이다. 또는, 펌웨어 데이터 세그먼트의 수(N) 역시 가변적이라면 도 3에서 예시한 펌웨어 데이터 세그먼트 숫자 필드(306)의 값을 비교 대상이 되는 펌웨어 데이터 세그먼트의 수(N)로 할 수 있다.
마지막으로, 이동통신단말기의 펌웨어를 업데이트하는 단계(S140)가 진행된다.
펌웨어를 업데이트하는 단계(S140)는 N개의 펌웨어 데이터 세그먼트가 모두 저장된 경우에 저장된 N개의 펌웨어 데이터 세그먼트를 이용하여 이동통신단말기의 펌웨어가 저장되는 비휘발성 메모리에 새로운 펌웨어를 기록하는 단계이다.
이때, N개의 펌웨어 데이터 세그먼트를 조합하여 비휘발성 메모리 소자에 대응되는 하나의 펌웨어 업데이트 이미지를 생성하고 펌웨어의 기록을 시작할 수 있다. 또는, 펌웨어 데이터 세그먼트를 추출하여 저장하는 단계(S120)에서 각 펌웨어 데이터 세그먼트와 이에 대응된 시퀀스 필드(302)의 값이 함께 저장된 경우에는 시퀀스 필드값의 순서에 따라서 순차적으로 펌웨어 데이터 세그먼트를 읽어 들여 비휘발성 메모리 소자에 펌웨어를 기록하도록 구성될 수 있다.
도 4는 본 발명에 따른 이동통신단말기의 펌웨어 업데이트 방법이 적용된 이동통신단말기의 구성을 예시한 블록도이다.
도 4를 참조하면, 본 발명에 따른 이동통신단말기(400)는 MMS 메시지 수신부(410), 펌웨어 데이터 세그먼트 추출 저장부(420), 제1 비휘발성 메모리부(425), 펌웨어 업데이트 실행부(430) 및 제 2 비휘발성 메모리부(435)를 포함하여 구성될 수 있다.
MMS 메시지 수신부(410)는 무선통신망을 통하여 MMS 메시지를 수신하기 위한 구성요소이다. 따라서, MMS 메시지 수신부는 안테나, RF(Radio-Frequency) 처리부, 베이스밴드(base-band) 처리부 등을 포함하여 구성될 수 있으며, 안테나를 통하여 수신한 RF신호를 처리하여 MMS 메시지를 수신한다. 여기에서 무선통신망은 MMS 메시지를 지원하는 3세대 무선통신망(IMT-2000, WCDMA등) 또는 이에 준하는 무선통신망일 수 있다.
펌웨어 데이터 세그먼트 추출 저장부(420)는 MMS 메시지 수신부(410)가 수신한 MMS 메시지가 펌웨어 업데이트 메시지인지를 확인하고, 펌웨어 업데이트 메시지인 경우 수신된 펌웨어 업데이트 메시지에서 펌웨어 데이터 세그먼트를 추출하여 제1 휘발성 메모리부(425)에 저장하는 구성요소이다. 제1휘발성 메모리부(425)는 비휘발성 메모리소자(non-volatile memory device)를 이용하여 구성될 수 있으며, 비휘발성 메모리소자로는 EEPROM(Electrically Erasable and Programmable Read Only Memory) 또는 플래쉬 메모리(flash memory) 등이 적용될 수 있다. 마찬가지로, 제 2휘발성 메모리부(435)도 유사한 비휘발성 메모리 소자를 이용하여 구성될 수 있으며, 이동통신단말기(400)의 펌웨어를 저장하고 있는 구성요소이다.
펌웨어 데이터 세그먼트 추출 저장부(420)가 수행하는 MMS 메시지 수신부(410)가 수신한 MMS 메시지가 펌웨어 업데이트 메시지인지를 확인하는 동작은 도 2의 순서도를 통하여 설명한 수신된 MMS 메시지가 펌웨어 업데이트 메시지인지를 확인하는 단계(S110)의 처리 절차를 통하여 이루어질 수 있다. 예컨대, 펌웨어 업데이트 메시지가 포함한 지시 필드(301)를 확인하는 것에 의하여 펌웨어 업데이트 메시지인지를 확인하도록 구성될 수 있다.
또한, 펌웨어 데이터 세그먼트 추출 저장부(420)는 수신된 펌웨어 업데이트 메시지에서 펌웨어 데이터 세그먼트를 추출하여 상기 제1 휘발성 메모리부(425)에 저장한다. 펌웨어 데이터 세그먼트의 추출 및 저장은 도 2의 순서도를 통하여 설명한 펌웨어 데이터 세그먼트를 추출하여 저장하는 단계(S120)의 처리절차를 통하여 이루어질 수 있다. 예컨대, 펌웨어 업데이트 메시지 내에 포함될 수 있는 오프셋 필드(304) 및 크기값 필드(305)를 이용하여 펌웨어 데이터 세그먼트(307)를 추출하고, 제1비휘발성 메모리부(425)에 저장한다.
한편, 펌웨어 데이터 세그먼트 추출 저장부(420)는 수신된 MMS 메시지를 파싱(parsing)하여 펌웨어 업데이트 메시지인지 여부를 확인하는 프로그램 코드(program code) 및 프로그램 코드를 수행할 수 있는 프로세서 유닛을 이용하여 구현될 수 있다. 이때, 프로세스 유닛은 이동통신단말기(400)의 메인 모뎀칩(예컨대, MSM칩-Mobile Station Chip)일 수 있다.
마지막으로, 펌웨어 업데이트 실행부(430)는 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하여, 상기 N 개의 펌웨어 데이터 세그먼트가 모두 저장된 경우에, 상기 저장된 N개의 펌웨어 데이터 세그먼트를 이용하여 상기 제2 휘발성 메모리부(435)에 펌웨어를 업데이트하는 구성요소이다.
펌웨어 업데이트 실행부(430)의 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하는 동작은, 도 2의 순서도를 통하여 설명한 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하는 단계(S130)의 처리절차가 적 용될 수 있다. 예컨대, 상술한 바와 같이, 1) 수신한 펌웨어 데이터 세그먼트의 크기 합계가 전체 펌웨어 업데이트 데이터의 크기와 동일한지를 확인하는 방법과, 2) 수신한 펌웨어 데이터 세그먼트의 숫자가 전체 펌웨어 업데이트 데이터를 구성하기 위해 필요한 세그먼트의 수(N)와 동일한지를 확인하는 방법 등이 적용될 수 있다.
펌웨어 업데이트 실행부(430)의, 저장된 N개의 펌웨어 데이터 세그먼트를 이용하여 상기 제2 휘발성 메모리부에 펌웨어를 업데이트하는 동작은 도 2의 순서도를 통하여 설명한 이동통신단말기의 펌웨어를 업데이트하는 단계(S140)의 처리절차가 적용될 수 있다. 예컨대, N개의 펌웨어 데이터 세그먼트를 조합하여 하나의 펌웨어 업데이트 이미지를 생성한 다음 제 2 휘발성 메모리부(435)에 펌웨어 기록을 시작할 수도 있고, 별도의 펌웨어 업데이트 이미지를 생성하는 작업없이 시퀀스 필드값을 이용하여 분할 저장되어 있는N개의 펌웨어 데이터 세그먼트를 순차적으로 제 2 휘발성 메모리부(435)에 기록할 수도 있다.
펌웨어 업데이트 실행부(430)는 펌웨어 데이터 세그먼트 추출 저장부(420)와 마찬가지로, 도2의 순서도를 통하여 설명한 단계(S130) 및 단계(S140)를 수행하기 위한 프로그램 코드(program code)와 프로그램 코드를 수행할 수 있는 프로세서 유닛을 이용하여 구현될 수 있다.
한편, 펌웨어 업데이트 실행부(430)에서 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하여 펌웨어 업데이트를 시작할 수 있는 상태에 도달한 경우에도, 사용자에게 펌웨어 업데이트의 진행 여부를 확인하는 절차가 필요할 수 있다. 왜냐하면, 펌웨어 업데이트 중에는 전화나 문자메시지 등의 수신이 불가 능하기 때문에 사용자에게 펌웨어 업데이트를 진행할 것인지를 확인하는 것이 필요하다. 또한, 펌웨어 업데이트 중에 배터리가 방전되어 버린다거나, 전원상의 문제가 발생되면 심각한 손상이 올 수도 있으므로, 펌웨어 업데이트를 시작하기 전에는 펌웨어 업데이트 진행 여부 확인이 필요하다.
도 5는 본 발명에 따른 이동통신단말기에서 펌웨어 업데이트 진행여부를 확인하기 위한 사용자 인터페이스 화면의 예시도이다.
도 5를 참조하면, 본 발명에 따른 이동통신단말기(400)는 펌웨어 업데이트 실행부(430)에서 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하여 펌웨어 업데이트를 시작할 수 있는 상태에 도달된 것을 인지하면, 펌웨어 업데이트 진행 여부를 확인하는 질의화면(510)를 표시할 수 있다. 이러한 질의화면(510)은 펌웨어 데이터 세그먼트가 모두 저장되어 펌웨어 업데이트를 시작할 수 있는 상태에 도달된 즉시 표시될 수도 있으며, 미리 설정된 주기(예컨대, 1시간 주기, 1일 주기, 일주일 주기 등)로 표시되어 사용자에게 펌웨어 업데이트가 가능한 상태임을 알려주도록 구성될 수도 있다.
사용자는 상기 질의화면(510)을 통하여 업데이트될 펌웨어의 버전(version)정보를 확인하고 펌웨어 업데이트를 진행할 것인지 여부를 ‘예(511)’ 또는 ‘아니오(512)’로 선택한다.
펌웨어 업데이트를 진행하는 것으로 결정된 경우는 펌웨어 업데이트 진행화면(520)이 표시되며 제 2 휘발성 메모리부(435)에 대한 펌웨어 기록이 시작된다. 반대로, 펌웨어 업데이트를 당장 진행하지는 않는 것으로 결정된 경우에는 펌웨어 업데이트 알림 주기 설정화면(530)이 표시되어 사용자에게 재차 펌웨어 업데이트를 진행여부를 질의할 시점(예컨대, 1시간후, 1일후, 1주일후)을 결정하도록 할 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
도 1은 본 발명에 따른 이동통신단말기의 펌웨어 업데이트 방법을 설명하기 위한 개념도이다.
도 2는 본 발명에 따른 이동통신단말기의 펌웨어 업데이트 방법을 설명하기 위한 순서도이다.
도 3은 본 발명에 따른 이동통신단말기의 펌웨어 업데이트 방법에 적용될 수 있는 펌웨어 업데이트 메시지의 포맷을 예시한 구조도이다.
도 4는 본 발명에 따른 이동통신단말기의 펌웨어 업데이트 방법이 적용된 이동통신단말기의 구성을 예시한 블록도이다.
도 5는 본 발명에 따른 이동통신단말기에서 펌웨어 업데이트 진행여부를 확인하기 위한 사용자 인터페이스 화면의 예시도이다.
<도면의 주요부분에 대한 부호의 설명>
410: MMS 메시지 수신부
420: 펌웨어 데이터 세그먼트 추출 저장부
425: 제 1 비휘발성 메모리부 430: 펌웨어 업데이트 실행부
435: 제 2 비휘발성 메모리부

Claims (22)

  1. N (N은 2이상의 정수)개의 펌웨어 데이터 세그먼트로 분리 구성된 펌웨어 업그레이드 데이터를 수신하여 이동통신단말기의 펌웨어를 업데이트하는 방법에 있어서,
    무선통신망으로부터 MMS 메시지를 수신하는 단계;
    수신된 MMS 메시지가 펌웨어 업데이트 메시지인지를 확인하는 단계;
    상기 수신된 MMS 메시지가 펌웨어 업데이트 메시지인 경우에 상기 수신된 펌웨어 업데이트 메시지에서 펌웨어 데이터 세그먼트를 추출하여 저장하는 단계;
    상기 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하는 단계; 및
    상기 N 개의 펌웨어 데이터 세그먼트가 모두 저장된 경우에, 상기 저장된 N개의 펌웨어 데이터 세그먼트를 이용하여 상기 이동통신단말기의 펌웨어를 업데이트하는 단계를 포함한 이동통신단말기의 펌웨어 업데이트 방법.
  2. 제 1 항에 있어서,
    상기 MMS 메시지는 MMS 메시지의 종류를 구분하기 위한 지시 필드를 가지며,
    상기 수신된 MMS 메시지가 펌웨어 업데이트 메시지인지를 확인하는 단계는 상기 수신된 MMS 메시지의 지시 필드에 펌웨어 업데이트 메시지임을 식별하기 위한 코드가 기록된 것인지를 확인하는 것에 의하여 이루어지는 이동통신단말기의 펌웨 어 업데이트 방법.
  3. 제 1 항에 있어서,
    상기 MMS 메시지가 펌웨어 업데이트 메시지인 경우에,
    상기 펌웨어 업데이트 메시지가 포함한 펌웨어 데이터 세그먼트의 상기 펌웨어 업그레이드 데이터 내에서의 순서를 지정하기 위한 시퀀스 필드를 가지며,
    상기 수신된 펌웨어 업데이트 메시지에서 펌웨어 데이터 세그먼트를 추출하여 저장하는 단계는 상기 시퀀스 필드의 값과 상기 펌웨어 데이터 세그먼트를 함께 추출하여 저장하는 것을 특징으로 하는 이동통신단말기의 펌웨어 업데이트 방법.
  4. 제 1 항에 있어서,
    상기 MMS 메시지가 펌웨어 업데이트 메시지인 경우에,
    상기 펌웨어 업데이트 메시지가 포함한 펌웨어 데이터 세그먼트의 상기 펌웨어 업데이트 메시지 내에서의 시작 위치를 지정하는 오프셋 필드; 및
    상기 펌웨어 업데이트 메시지가 포함한 펌웨어 데이터 세그먼트의 크기를 지정하는 크기값 필드를 포함하며,
    상기 수신된 펌웨어 업데이트 메시지에서 펌웨어 데이터 세그먼트를 추출하여 저장하는 단계는 수신된 펌웨어 업데이트 메시지 메시지에서 상기 오프셋 필드와 상기 크기값 필드를 이용하여 펌웨어 데이터 세그먼트를 추출하여 저장하는 것을 특징으로 하는 이동통신단말기의 펌웨어 업데이트 방법.
  5. 제 1 항에 있어서,
    상기 MMS 메시지가 펌웨어 업데이트 메시지인 경우에,
    상기 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하는 단계는 추출 저장된 펌웨어 데이터 세그먼트들의 크기 합계가 상기 펌웨어 업데이트 데이터의 미리 정의된 전체 크기와 동일한지를 확인하는 것을 특징으로 하는 이동통신단말기의 펌웨어 업데이트 방법.
  6. 제 1 항에 있어서,
    상기 수신된 펌웨어 업데이트 메시지 중에 적어도 하나는, 상기 펌웨어 업그레이드 데이터의 전체 크기값을 가지는 전체 크기값 필드를 가지며,
    상기 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하는 단계는 상기 전체 크기값 필드의 값과 추출 저장된 펌웨어 데이터 세그먼트들의 크기 합계값이 동일한지를 확인하는 것을 특징으로 하는 이동통신단말기의 펌웨어 업데이트 방법.
  7. 제 6 항에 있어서,
    상기 MMS 메시지가 펌웨어 업데이트 메시지인 경우에,
    상기 펌웨어 업데이트 메시지가 포함한 펌웨어 데이터 세그먼트의 크기를 지정하는 크기값 필드를 포함하며,
    상기 추출 저장된 펌웨어 데이터 세그먼트들의 크기 합계값은 상기 추출 저장된 펌웨어 데이터 세그먼트들에 대응되는 상기 크기값 필드의 값들을 합산한 값인 것을 특징으로 하는 이동통신단말기의 펌웨어 업데이트 방법.
  8. 제 1 항에 있어서,
    상기 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하는 단계는 추출 저장된 펌웨어 데이터 세그먼트의 수가 미리 정의된 N값과 동일한지를 확인하는 것에 의하여 이루어지는 것을 특징으로 하는 이동통신단말기의 펌웨어 업데이트 방법.
  9. 제 1 항에 있어서,
    상기 수신된 펌웨어 업데이트 메시지 중에 적어도 하나는, 상기 펌웨어 업그레이드 데이터를 구성하는 펌웨어 데이터 세그먼트의 수인 N 값을 담고 있는 펌웨어 데이터 세그먼트 숫자 정보 필드를 가지며,
    상기 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하는 단계는 추출 저장된 펌웨어 바이너리 데이터의 수가 상기 펌웨어 데이터 세그먼트 숫자 정보 필드에 기록된 N 값과 동일한지를 확인하는 것에 의하여 이루어지는 것을 특징으로 하는 이동통신단말기의 펌웨어 업데이트 방법.
  10. 제 1 항에 있어서,
    상기 펌웨어를 업데이트하는 단계는,
    상기 저장된 N개의 펌웨어 데이터 세그먼트를 조합하여 펌웨어 업그레이드 이미지 파일을 생성하는 단계; 및
    상기 생성된 펌웨어 업그레이드 이미지 파일의 내용을 상기 이동통신단말기의 펌웨어가 탑재되는 비휘발성 메모리에 기록하는 단계를 포함하여 구성되는 이동통신단말기의 펌웨어 업데이트 방법.
  11. 제 3 항에 있어서,
    상기 펌웨어를 업데이트하는 단계는,
    상기 이동통신단말기의 펌웨어가 탑재되는 비휘발성 메모리에 상기 저장된 N개의 펌웨어 데이터 세그먼트를 상기 저장된 펌웨어 데이터 세그먼트에 대응되는 시퀀스 필드값에 대응하여 순차적으로 기록하는 것을 특징으로 하는 이동통신단말기의 펌웨어 업데이트 방법.
  12. N (N은 2이상의 정수)개의 펌웨어 데이터 세그먼트로 분리 구성된 펌웨어 업데이트 데이터를 수신하여 펌웨어를 업데이트하는 이동통신단말기에 있어서,
    무선 통신망으로부터 MMS 메시지를 수신하는 MMS 메시지 수신부;
    상기 펌웨어 데이트 세그먼트를 저장하는 제 1 휘발성 메모리부;
    상기 이동통신단말기의 펌웨어를 저장하는 제 2 휘발성 메모리부;
    상기 MMS 메시지 수신부가 수신한 MMS 메시지가 펌웨어 업데이트 메시지인지 를 확인하고, 펌웨어 업데이트 메시지인 경우 수신된 펌웨어 업데이트 메시지에서 펌웨어 데이터 세그먼트를 추출하여 상기 제1 휘발성 메모리부에 저장하는 펌웨어 데이터 세그먼트 추출 저장부;
    상기 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하여, 상기 N 개의 펌웨어 데이터 세그먼트가 모두 저장된 경우에, 상기 저장된 N개의 펌웨어 데이터 세그먼트를 이용하여 상기 제2 휘발성 메모리부에 펌웨어를 업데이트하는 펌웨어 업데이트 실행부를 포함하여 구성된 이동통신단말기.
  13. 제 12 항에 있어서,
    상기 MMS 메시지는 MMS 메시지의 종류를 구분하기 위한 지시 필드를 가지며,
    상기 펌웨어 데이터 세그먼트 추출 저장부는 상기 수신된 MMS 메시지가 펌웨어 업데이트 메시지인지를 확인하기 위해서, 수신된 MMS 메시지의 지시 필드에 펌웨어 업데이트 메시지임을 식별하기 위한 코드가 기록된 것인지를 확인하는 것을 특징으로 하는 이동통신단말기.
  14. 제 12 항에 있어서,
    상기 MMS 메시지가 펌웨어 업데이트 메시지인 경우에,
    상기 펌웨어 업데이트 메시지가 포함한 펌웨어 데이터 세그먼트의 상기 펌웨어 업그레이드 데이터 내에서의 순서를 지정하기 위한 시퀀스 필드를 가지며,
    상기 펌웨어 데이터 세그먼트 추출 저장부는 상기 수신된 펌웨어 업데이트 메시지에서 상기 시퀀스 필드의 값과 상기 펌웨어 데이터 세그먼트를 함께 추출하여 상기 제1휘발성 메모리부에 저장하는 것을 특징으로 하는 이동통신단말기.
  15. 제 12 항에 있어서,
    상기 MMS 메시지가 펌웨어 업데이트 메시지인 경우에,
    상기 펌웨어 업데이트 메시지가 포함한 펌웨어 데이터 세그먼트의 상기 펌웨어 업데이트 메시지 내에서의 시작 위치를 지정하는 오프셋 필드; 및
    상기 펌웨어 업데이트 메시지가 포함한 펌웨어 데이터 세그먼트의 크기를 지정하는 크기값 필드를 포함하며,
    상기 펌웨어 데이터 세그먼트 추출 저장부는 상기 펌웨어 업데이트 메시지에서 상기 시작 오프셋 필드와 상기 크기값 필드를 이용하여 펌웨어 데이터 세그먼트를 추출하여 상기 제1휘발성 메모리부에 저장하는 것을 특징으로 하는 이동통신단말기.
  16. 제 12 항에 있어서,
    상기 MMS 메시지가 펌웨어 업데이트 메시지인 경우에,
    상기 펌웨어 업데이트 실행부는 추출 저장된 펌웨어 데이터 세그먼트의 크기 합계가 상기 펌웨어 업데이트 데이터의 미리 정의된 전체 크기와 동일한지를 확인하여 상기 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하는 것을 특징으로 하는 이동통신단말기.
  17. 제 12 항에 있어서,
    상기 수신된 펌웨어 업데이트 메시지 중에 적어도 하나는, 상기 펌웨어 업그레이드 데이터의 전체 크기값을 가지는 전체 크기값 필드를 가지며,
    상기 펌웨어 업데이트 실행부는 상기 전체 크기값 필드의 값과 추출 저장된 펌웨어 데이터 세그먼트들의 크기 합계값이 동일한지를 확인하여 상기 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하는 것을 특징으로 하는 이동통신단말기.
  18. 제 17 항에 있어서,
    상기 펌웨어 업데이트 메시지는 상기 펌웨어 업데이트 메시지가 포함한 펌웨어 데이터 세그먼트의 크기를 지정하는 크기값 필드를 포함하며,
    상기 추출 저장된 펌웨어 데이터 세그먼트들의 크기 합계값은 상기 추출 저장된 펌웨어 데이터 세그먼트들에 대응되는 상기 크기값 필드의 값들을 합산한 값인 것을 특징으로 하는 이동통신단말기.
  19. 제 12 항에 있어서,
    상기 펌웨어 업데이트 실행부는 추출 저장된 펌웨어 데이터 세그먼트의 수가 미리 정의된 N값과 동일한지를 확인하여 상기 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하는 것을 특징으로 하는 이동통신단말기.
  20. 제 12 항에 있어서,
    상기 수신된 펌웨어 업데이트 메시지 중에 적어도 하나는, 상기 펌웨어 업그레이드 데이터를 구성하는 펌웨어 데이터 세그먼트의 수인 N 값을 담고 있는 펌웨어 데이터 세그먼트 숫자 정보 필드를 가지며,
    상기 펌웨어 업데이트 실행부는 추출 저장된 펌웨어 데이터 세그먼트의 수가 상기 펌웨어 데이터 세그먼트 숫자 정보 필드에 기록된 N 값과 동일한지를 확인하여 상기 N개의 펌웨어 데이터 세그먼트가 모두 추출 저장되었는지를 확인하는 것을 특징으로 하는 이동통신단말기.
  21. 제 12 항에 있어서,
    상기 펌웨어 업데이트 실행부는 상기 저장된 N개의 펌웨어 데이터 세그먼트를 조합하여 펌웨어 업그레이드 이미지 파일을 생성하고 상기 생성된 펌웨어 업그레이드 이미지 파일의 내용을 상기 제 2 비휘발성 메모리부에 기록하는 것을 특징으로 하는 이동통신단말기.
  22. 제 14 항에 있어서,
    상기 펌웨어 업데이트 실행부는 상기 이동통신단말기의 펌웨어가 탑재되는 비휘발성 메모리에 상기 저장된 N개의 펌웨어 데이터 세그먼트를 상기 저장된 펌웨어 데이터 세그먼트에 대응되는 시퀀스 필드값에 따라 순차적으로 상기 제2휘발성 메모리부에 기록하는 것을 특징으로 하는 이동통신단말기.
KR1020070086875A 2007-08-29 2007-08-29 이동통신단말기의 펌웨어 업데이트 방법 및 이를 이용하는이동통신단말기 KR100879547B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070086875A KR100879547B1 (ko) 2007-08-29 2007-08-29 이동통신단말기의 펌웨어 업데이트 방법 및 이를 이용하는이동통신단말기

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070086875A KR100879547B1 (ko) 2007-08-29 2007-08-29 이동통신단말기의 펌웨어 업데이트 방법 및 이를 이용하는이동통신단말기

Publications (1)

Publication Number Publication Date
KR100879547B1 true KR100879547B1 (ko) 2009-01-22

Family

ID=40482898

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070086875A KR100879547B1 (ko) 2007-08-29 2007-08-29 이동통신단말기의 펌웨어 업데이트 방법 및 이를 이용하는이동통신단말기

Country Status (1)

Country Link
KR (1) KR100879547B1 (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105138358A (zh) * 2015-08-13 2015-12-09 深圳市中兴物联科技有限公司 固件升级装置和方法
CN105740000A (zh) * 2014-12-09 2016-07-06 航天信息股份有限公司 一种智能报警器的升级方法、升级装置及升级系统
KR101960736B1 (ko) 2018-04-26 2019-03-21 (주)에이투유정보통신 무선 네트워크를 통해 프로그램을 업데이트하는 무선기기 및 무선시스템
KR102238378B1 (ko) * 2019-10-23 2021-04-08 주식회사 엘지유플러스 단말의 펌웨어 다운로드를 제어하는 방법 및 서버
KR20220064136A (ko) * 2020-11-11 2022-05-18 주식회사 엘지유플러스 전자 디바이스 및 펌웨어 업데이트 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100516551B1 (ko) 2000-11-25 2005-09-22 엘지전자 주식회사 원격 소프트웨어 업그레이드 시스템 및 방법
KR100606806B1 (ko) 1999-09-27 2006-08-01 엘지전자 주식회사 이동통신 단말기의 소프트웨어 업그레이드 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100606806B1 (ko) 1999-09-27 2006-08-01 엘지전자 주식회사 이동통신 단말기의 소프트웨어 업그레이드 방법
KR100516551B1 (ko) 2000-11-25 2005-09-22 엘지전자 주식회사 원격 소프트웨어 업그레이드 시스템 및 방법

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105740000A (zh) * 2014-12-09 2016-07-06 航天信息股份有限公司 一种智能报警器的升级方法、升级装置及升级系统
CN105138358A (zh) * 2015-08-13 2015-12-09 深圳市中兴物联科技有限公司 固件升级装置和方法
KR101960736B1 (ko) 2018-04-26 2019-03-21 (주)에이투유정보통신 무선 네트워크를 통해 프로그램을 업데이트하는 무선기기 및 무선시스템
KR102238378B1 (ko) * 2019-10-23 2021-04-08 주식회사 엘지유플러스 단말의 펌웨어 다운로드를 제어하는 방법 및 서버
KR20220064136A (ko) * 2020-11-11 2022-05-18 주식회사 엘지유플러스 전자 디바이스 및 펌웨어 업데이트 방법
KR102448453B1 (ko) * 2020-11-11 2022-09-28 주식회사 엘지유플러스 전자 디바이스 및 펌웨어 업데이트 방법

Similar Documents

Publication Publication Date Title
US8578361B2 (en) Updating an electronic device with update agent code
US8645943B2 (en) Communication system, communication device, and management server device
US7644404B2 (en) Network having customizable generators and electronic device having customizable updating software
US8479180B2 (en) Maintenance of over the air upgradeable wireless communication device software
EP1410189B1 (en) System and method for organizing field upgradable wireless communication device software
EP1246057B1 (en) Remote program downloading system
US7542758B2 (en) Field downloading of wireless device software
US6684324B2 (en) Method for installing two or more operating systems/user interfaces into an electronic device and an electronic device
CN100458689C (zh) 控制移动电信装置的设置
KR100879547B1 (ko) 이동통신단말기의 펌웨어 업데이트 방법 및 이를 이용하는이동통신단말기
JP2009054160A (ja) 現場における無線通信デバイスシステムソフトウエアダウンロードの管理のためのシステムおよび方法
TW200305822A (en) Communication terminal software updating method, communication terminal, and software updating method
JP2009544095A (ja) Ota可能な携帯端末のプログラム更新システム及び方法
CN102004657B (zh) 一种电子设备及其升级方法
CN104219323A (zh) 应用下载方法和移动终端
CN104105077A (zh) 一种手机升级方法及装置
US20050010914A1 (en) Method for upgrading firmware
US7328007B2 (en) System and method for organizing wireless communication device system software
WO2002001319A2 (en) Method and apparatus for autonomous memory usage optimization and downloading of software features
CN101854442B (zh) 网络设备及其固件更新方法
WO2012053194A1 (ja) 加入者識別モジュール及び端末装置
KR100538627B1 (ko) 무선통신단말기의 소프트웨어 부분 업그레이드 방법
CN104683594A (zh) 一种由sim卡主导的手机操作系统加载方法
CN109547999B (zh) 一种管理集成电路卡的方法、相应的卡和装置
KR100771995B1 (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
FPAY Annual fee payment

Payment date: 20121212

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140106

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20150105

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20160107

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20161227

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20180102

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee