KR100700578B1 - Method for upgrading firmware in mobile phone - Google Patents

Method for upgrading firmware in mobile phone Download PDF

Info

Publication number
KR100700578B1
KR100700578B1 KR1020050049395A KR20050049395A KR100700578B1 KR 100700578 B1 KR100700578 B1 KR 100700578B1 KR 1020050049395 A KR1020050049395 A KR 1020050049395A KR 20050049395 A KR20050049395 A KR 20050049395A KR 100700578 B1 KR100700578 B1 KR 100700578B1
Authority
KR
South Korea
Prior art keywords
upgrade
firmware
program
main
mobile phone
Prior art date
Application number
KR1020050049395A
Other languages
Korean (ko)
Other versions
KR20060128173A (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 KR1020050049395A priority Critical patent/KR100700578B1/en
Priority to CNA2006100834047A priority patent/CN1878366A/en
Publication of KR20060128173A publication Critical patent/KR20060128173A/en
Application granted granted Critical
Publication of KR100700578B1 publication Critical patent/KR100700578B1/en

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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/22Processing or transfer of terminal data, e.g. status or physical capabilities
    • H04W8/24Transfer of terminal data
    • H04W8/245Transfer of terminal data from a network towards a terminal

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)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명은 휴대폰 등의 이동통신 단말기에 내장된 펌웨어 등을 원격지에서 무선으로 업그레이드하는 펌웨어 업그레이드 시스템에서, 전원 불안정 등의 이유로 인하여 오류가 발생되는 것을 방지할 수 있도록 한 기술에 관한 것이다. 이러한 본 발명은, 업그레이드 서버로부터 업그레이드용 소프트웨어를 전송받아 파일 시스템에 저장하는 제1과정과; 부트로더에 의해 메인 플래시 메모리에 탑재된 각 프로그램이 메인 메모리에 복사된 후 상기 파일 시스템으로부터 상기 업그레이드용 소프트웨어를 읽어와 그 메인 메모리 상에서 해당 프로그램을 업데이트시키는 제2과정과; 메인 프로그램으로 상기 메인 메모리상의 해당 프로그램을 실행시키는 제3과정에 의해 달성된다.The present invention relates to a technology for preventing an error from occurring due to power instability in a firmware upgrade system for wirelessly upgrading firmware embedded in a mobile communication terminal such as a mobile phone from a remote location. The present invention includes a first process of receiving upgrade software from an upgrade server and storing the upgrade software in a file system; A second process of reading the upgrade software from the file system and updating the corresponding program on the main memory after each program mounted on the main flash memory by the boot loader is copied to the main memory; This is accomplished by a third process of executing the corresponding program on the main memory as the main program.

Description

휴대폰의 펌웨어 업그레이드 방법{METHOD FOR UPGRADING FIRMWARE IN MOBILE PHONE}How to upgrade your phone's firmware {METHOD FOR UPGRADING FIRMWARE IN MOBILE PHONE}

도 1은 종래 기술에 의한 펌웨어 업그레이드 방법을 나타낸 설명도.1 is an explanatory diagram showing a firmware upgrade method according to the prior art.

도 2는 본 발명에 의한 휴대폰의 펌웨어 업그레이드 방법의 처리과정을 나타낸 신호 흐름도.Figure 2 is a signal flow diagram showing the processing of the firmware upgrade method of the mobile phone according to the present invention.

도 3은 본 발명에 의한 펌웨어 업그레이드 방법을 나타낸 설명도.3 is an explanatory diagram showing a firmware upgrade method according to the present invention.

***도면의 주요 부분에 대한 부호의 설명*** *** Description of the symbols for the main parts of the drawings ***

31 : 메인 플래시 메모리 32 : 메인 메모리31: main flash memory 32: main memory

본 발명은 휴대폰 등의 이동통신 단말기에 내장된 펌웨어 등을 원격지에서 무선으로 업그레이드하는 기술에 관한 것으로, 특히 펌웨어 업그레이드 시 전원 불안정 등의 이유로 인하여 오류가 발생되는 것을 방지할 수 있도록 한 휴대폰의 펌웨어 업그레이드 방법에 관한 것이다.The present invention relates to a technology for wirelessly upgrading firmware embedded in a mobile communication terminal such as a mobile phone from a remote location, and in particular, firmware upgrade of a mobile phone to prevent an error from occurring due to power instability. It is about a method.

얼마전까지만 해도 대부분의 휴대폰 사용자들은 펌웨어나 애플리케이션을 업그레이드하기 위해 직접 이동통신사의 서비스센터를 방문해야 하는 번거로움을 감수 해야 하였다. 또한, 이동통신사와 단말기 제조업체들도 휴대폰의 펌웨어 업그레이드와 각종 버그를 수정하기 위해 많은 비용을 지출해야만 하였다.Not long ago, most cell phone users had to take the hassle of visiting their carrier's service center to upgrade their firmware or applications. In addition, carriers and handset makers have had to spend a lot of money on firmware upgrades and bug fixes.

더욱이, 최근에 출시된 휴대폰의 기능이 점차 복잡ㆍ다양해지면서, 휴대폰에 내장된 펌웨어와 각종 애플리케이션을 실시간으로 관리해줄 필요성이 요구되고 있다. 그리고, 고기능 휴대폰 보급이 확대되면서 휴대폰의 소프트웨어 관련 버그에 즉각적이고 효과적인 대응이 절실히 요구되어 있다.In addition, as the functions of recently released mobile phones become more complicated and diverse, there is a need for real-time management of firmware and various applications embedded in the mobile phones. In addition, with the expansion of high-performance mobile phones, there is an urgent need for immediate and effective responses to software-related bugs in mobile phones.

최근 들어, 휴대폰에 내장된 펌웨어 등을 원격지에서 무선으로 업그레이드해주는 FOTA(FOTA: Firmware Over The Air) 솔루션이 개발되었는데, 이를 이용하면 휴대폰의 버그를 자동으로 감지ㆍ수정하는 것은 물론 무선상태에서 업그레이드까지 가능하게 되므로, 이동통신사와 단말기 제조업체들로부터 좋은 반응을 얻고 있다. Recently, the FOTA (FOTA: Firmware Over The Air) solution has been developed to upgrade the phone's built-in firmware from a remote location to a wireless location. As it becomes possible, it is getting good responses from mobile operators and handset manufacturers.

한편, 종래 기술에 의한 휴대폰의 펌웨어 업그레이드 방법을 도 1을 참조하여 설명하면 다음과 같다.Meanwhile, a method for upgrading a firmware of a mobile phone according to the prior art will be described with reference to FIG. 1.

통신사업자의 업그레이드 서버로부터 FOTA 솔루션에 따른 업그레이드용 소프트웨어(Delta Package)가 사용자의 휴대폰에 전송되어 오면 이는 그 휴대폰의 파일 시스템에 저장된다.When an upgrade package (Delta Package) according to the FOTA solution is transmitted from the service provider's upgrade server to the user's mobile phone, it is stored in the mobile phone's file system.

이후, 도 1에서와 같이 상기 델타 패키지를 읽어 메인 플래시 메모리(Nand Flash)(11)상의 해당 프로그램을 업데이트하게 된다. 도 1에서 Func A', Func B'는 상기 원래의 프로그램 Func A, Func B가 상기 업데이트 동작에 의해 업그레이드된 것을 나타낸 것이다.Thereafter, as shown in FIG. 1, the delta package is read to update the corresponding program on the main flash memory 11. Func A 'and Func B' in FIG. 1 show that the original programs Func A and Func B have been upgraded by the update operation.

그런데, 상기 메인 플래시 메모리(11) 상에서는 프로그램을 수행할 수 없으므 로, 부트로더(Bootloader)를 통해 실행코드를 메인 메모리(RAM)에 복사한 후 해당 프로그램을 실행시키게 된다.However, since the program cannot be executed on the main flash memory 11, the program is executed after the execution code is copied to the main memory RAM through a boot loader.

즉, 상기 메인 플래시 메모리(11)와 같은 낸드 플래시 메모리는 실행 코드를 롬상에서 직접 실행하지 못하는 대용량 메모리로서 이를 탑재한 기기에서는 모든 실행 코드를 램으로 복제한 후 그 램상에서 해당 프로그램을 실행하게 되는데, 이를 가능하게 해주는 것이 상기 부트로더이다.In other words, the NAND flash memory such as the main flash memory 11 is a large-capacity memory that cannot execute executable code directly on a ROM, and in a device equipped with the same, all the executable code is copied to RAM and then the corresponding program is executed on the RAM. It is the boot loader that makes this possible.

이와 같이 종래 휴대폰의 펌웨어 업그레이드 기술에 있어서는 통신사업자의 업그레이드 서버로부터 다운로드 받은 펌웨어 델타 패키지를 플래시 메모리에 저장하게 되어 있는데, 이때 전원이 불안정하거나 차단되는 경우 오류가 발생되어 프로그램이 치명적인 손상을 입게 되는 문제점이 있었다.As described above, in the firmware upgrade technology of the conventional mobile phone, the firmware delta package downloaded from the carrier's upgrade server is stored in the flash memory. However, when the power is unstable or blocked, an error occurs and the program is fatally damaged. There was this.

따라서, 본 발명의 목적은 펌웨어 델타 패키지를 플래시 메모리에 저장하는 과정에서 펌웨어 업그레이드 오류가 발생되는 것을 방지할 수 있도록 하는 펌웨어 업그레이드 방법을 제공함에 있다. Accordingly, an object of the present invention is to provide a firmware upgrade method for preventing a firmware upgrade error from occurring while storing a firmware delta package in a flash memory.

본 발명에 의한 휴대폰의 펌웨어 업그레이드 방법은, 업그레이드 서버로부터 업그레이드용 소프트웨어를 전송받아 파일 시스템에 저장하는 과정과, 메인 플래시 메모리에 탑재된 각 프로그램이 메인 메모리에 복사된 후 상기 업그레이드용 소프트웨어를 읽어와 그 메인 메모리상의 해당 프로그램을 업데이트시키고, 사용자에 의해 요구된 프로그램을 실행시키는 과정을 포함하여 이루어지는 것을 특징으로 한다.The firmware upgrade method of the mobile phone according to the present invention receives the upgrade software from the upgrade server and stores the upgrade software in a file system, and after each program mounted in the main flash memory is copied to the main memory, the upgrade software is read out. And updating the corresponding program on the main memory and executing the program requested by the user.

이하, 첨부한 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 2는 본 발명에 의한 휴대폰의 펌웨어 업그레이드 방법의 처리과정을 나타낸 신호 흐름도로서 이에 도시한 바와 같이, 업그레이드 서버로부터 업그레이드용 소프트웨어를 전송받아 파일 시스템에 저장하는 제1과정과; 부트로더에 의해 메인 플래시 메모리에 탑재된 각 프로그램이 메인 메모리에 복사된 후 상기 파일 시스템으로부터 상기 업그레이드용 소프트웨어를 읽어와 그 메인 메모리상의 해당 프로그램을 업데이트시키는 제2과정과; 메인 프로그램으로 상기 메인 메모리상의 해당 프로그램을 실행시키는 제3과정으로 이루어지는 것으로, 이와 같이 이루어지는 본 발명의 펌웨어 업그레이드 처리과정을 첨부한 도 3을 참조하여 상세히 설명하면 다음과 같다.2 is a signal flow diagram illustrating a process of a firmware upgrade method of a mobile phone according to the present invention. As shown in FIG. 2, a first process of receiving upgrade software from an upgrade server and storing the upgrade software in a file system; A second step of copying each program mounted on the main flash memory by the boot loader to the main memory and reading the upgrade software from the file system to update the corresponding program on the main memory; A third process of executing the corresponding program on the main memory as the main program will be described in detail with reference to FIG. 3 attached to the firmware upgrade process of the present invention.

통신사업자의 업그레이드 서버로부터 FOTA 솔루션에 따른 업그레이드용 소프트웨어(Delta Package)가 사용자의 휴대폰에 전송되어 오면, 이를 그 휴대폰의 파일 시스템에 저장한다.(S1,S2)When the upgrade software (Delta Package) according to the FOTA solution is transmitted from the service provider's upgrade server to the user's mobile phone, it is stored in the file system of the mobile phone (S1, S2).

이로부터 특정 시점(예: 파워 온)에 도달되면, 도 3에서와 같이 부트로더에 의해 메인 플래시 메모리(Nand Flash)(31)에 탑재된 각 프로그램(Func A- Func F)이 메인 메모리(RAM)(32)에 복사되기 시작한다.(S3)When a certain point (for example, power-on) is reached, each program (Func A- Func F) mounted in the main flash memory (Nand Flash) 31 by the boot loader as shown in FIG. 3 is stored in the main memory (RAM). It starts to copy to 32. (S3)

이후, FOTA 업그레이드 에이젼트는 상기 부트로더의 프로그램 복사동작이 종료되는 것을 확인하여 종료된 것으로 판명되면, 상기 파일 시스템으로부터 델타 패키지를 읽어와 상기 메인 메모리(32)상의 해당 프로그램(예: Func A, Func B)을 업데 이트시킨다.(S4,S5)Thereafter, the FOTA upgrade agent checks that the program copy operation of the boot loader is terminated, and when it is determined that the FOTA upgrade agent is terminated, the FOTA upgrade agent reads a delta package from the file system and executes a corresponding program (eg, Func A, Func) Update B) (S4, S5)

이렇게 함으로써, 상기 델타 패키지를 읽어 메인 플래시 메모리(31)상의 해당 프로그램을 업데이트시키는 동작을 생략하고도 업데이트 기능을 수행할 수 있게 된다. 따라서, 업데이트 시 어떠한 문제가 발생되더라도 기존의 코드에 대한 무결성이 보장된다.In this way, the update function can be performed without omitting the operation of reading the delta package and updating the corresponding program on the main flash memory 31. Therefore, even if any problem occurs during the update, the integrity of the existing code is guaranteed.

이후, 시스템 제어권한이 메인 프로그램으로 이양되는데, 이때부터 그 메인 프로그램에 의해 상기 메인 메모리(32)상에서 사용자에 의해 요구된 해당 프로그램이 실행된다.(S6)Subsequently, the system control authority is transferred to the main program, from which the corresponding program requested by the user on the main memory 32 is executed by the main program (S6).

이상에서 상세히 설명한 바와 같이 본 발명은, 펌웨어 델타 패키지를 플래시 메모리에 저장하는 과정을 생략하고, 그 대신 특정 시점에 도달될 때마다 파일 시스템으로부터 델타 패키지를 읽어와 메인 메모리상의 해당 프로그램을 업데이트시킴으로써, 업데이트 시 어떠한 문제가 발생되더라도 기존의 코드에 대한 무결성이 보장되어 펌웨어 업그레이드 오류 발생을 방지할 수 있는 효과가 있다.As described in detail above, the present invention omits the process of storing the firmware delta package in the flash memory, and instead reads the delta package from the file system and updates the corresponding program in the main memory whenever a specific time point is reached. No matter what happens during the update, the integrity of the existing code is guaranteed to prevent the firmware upgrade error.

Claims (3)

업그레이드 서버로부터 업그레이드용 소프트웨어를 전송받아 파일 시스템에 저장하는 제1과정과;A first step of receiving upgrade software from an upgrade server and storing the upgrade software in a file system; 메인 플래시 메모리에 탑재된 각 프로그램이 메인 메모리에 복사된 후 상기 업그레이드용 소프트웨어를 읽어와 그 메인 메모리상의 해당 프로그램을 업데이트시키고, 사용자에 의해 요구된 프로그램을 실행시키는 제2과정을 포함하여 이루어지는 것을 특징으로 하는 휴대폰의 펌웨어 업그레이드 방법.And a second process of reading the upgrade software, updating the corresponding program on the main memory after each program mounted on the main flash memory is copied to the main memory, and executing the program requested by the user. To upgrade the firmware of your phone. 제1항에 있어서, 제2과정에서 메인 메모리는 램(RAM)으로 이루어진 것을 특징으로 하는 휴대폰의 펌웨어 업그레이드 방법.The firmware upgrade method of claim 1, wherein the main memory comprises RAM. 삭제delete
KR1020050049395A 2005-06-09 2005-06-09 Method for upgrading firmware in mobile phone KR100700578B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020050049395A KR100700578B1 (en) 2005-06-09 2005-06-09 Method for upgrading firmware in mobile phone
CNA2006100834047A CN1878366A (en) 2005-06-09 2006-05-30 Firmware update method for mobile phone

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050049395A KR100700578B1 (en) 2005-06-09 2005-06-09 Method for upgrading firmware in mobile phone

Publications (2)

Publication Number Publication Date
KR20060128173A KR20060128173A (en) 2006-12-14
KR100700578B1 true KR100700578B1 (en) 2007-03-28

Family

ID=37510623

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050049395A KR100700578B1 (en) 2005-06-09 2005-06-09 Method for upgrading firmware in mobile phone

Country Status (2)

Country Link
KR (1) KR100700578B1 (en)
CN (1) CN1878366A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100974662B1 (en) 2008-12-01 2010-08-09 주식회사 케이티 Mobile commuication terminal and method for updating firmware thereof

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8271969B2 (en) 2007-08-09 2012-09-18 Research In Motion Limited Method and apparatus for determining the state of a computing device
EP2026204A1 (en) * 2007-08-09 2009-02-18 Research In Motion Limited Method and apparatus for updating the state of a computing device
CN101409590B (en) * 2007-10-12 2012-08-22 深圳富泰宏精密工业有限公司 Mobile phone radio frequency test method
CN101931942A (en) * 2009-06-29 2010-12-29 广东天波信息技术有限公司 Remote upgrade method of CDMS terminal through internet
CN102117234B (en) * 2011-03-23 2013-07-03 惠州Tcl移动通信有限公司 Method for recovering original software by mobile terminal in software upgrading failure
CN102364891B (en) * 2011-09-13 2014-08-27 杭州华三通信技术有限公司 Method for upgrading software of embedded Ethernet equipment and embedded Ethernet equipment
US9430220B2 (en) * 2014-07-22 2016-08-30 GM Global Technology Operations LLC Method, medium, and apparatus for re-programming flash memory of a computing device
CN110333900A (en) * 2019-06-29 2019-10-15 沃太能源南通有限公司 A method of BOOT in upgrading single-chip microcontroller memory

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040049258A (en) * 2002-12-05 2004-06-11 삼성전자주식회사 Apparatus and method for upgrading software of a wireless mobile station

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040049258A (en) * 2002-12-05 2004-06-11 삼성전자주식회사 Apparatus and method for upgrading software of a wireless mobile station

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100974662B1 (en) 2008-12-01 2010-08-09 주식회사 케이티 Mobile commuication terminal and method for updating firmware thereof

Also Published As

Publication number Publication date
KR20060128173A (en) 2006-12-14
CN1878366A (en) 2006-12-13

Similar Documents

Publication Publication Date Title
KR100700578B1 (en) Method for upgrading firmware in mobile phone
CN109933348B (en) Method and device for updating Bootloader in electronic control unit
KR100506203B1 (en) Booting and boot code update method and system thereof
US7827395B2 (en) Update-startup apparatus and update-startup control method
CN102902556B (en) The multistage boot load method of a kind of embedded equipment
US8136108B2 (en) Updating firmware with multiple processors
US20060212691A1 (en) Electronic device having an alterable configuration and methods of manufacturing and configuring the same
CN108804118B (en) Firmware upgrading method, device and storage medium
KR20070082894A (en) Mobile terminal and software update method
CN103106092A (en) System software updating method and device in terminal appliance
TW201807571A (en) Method, device, terminal, server and system for generating containers capable of increasing the creation speed of the container
KR101541112B1 (en) FOTA system and the method
CN110750280B (en) Android platform-based application upgrading method and system and storage medium
CN102004657B (en) A kind of electronic equipment and upgrade method thereof
US20150067668A1 (en) Installation engine and package format
KR101075676B1 (en) Software download apparatus and method for mobile terminal equipment
CN110007935B (en) Processing method, device and equipment for program upgrading
CN111338708A (en) Application program processing method, client and system based on android plug-in
CN110659052B (en) Method and system for updating system software in network equipment and readable storage medium
KR100876748B1 (en) Method for updating boot code
KR100608796B1 (en) Method for upgrading binary data of mobile communication terminal
KR100762618B1 (en) The method and system of upgrading firmware upgrade engine of mobile terminal
KR100860226B1 (en) System and method for upgrading software of mobile terminal
CN114237572B (en) Method, device, equipment and storage medium for native engineering integrated development framework
KR100777289B1 (en) Method for software upgrade using firmware in mobile terminal

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

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140224

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150224

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160224

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170224

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee