KR20090023863A - System and method for updating firmware - Google Patents

System and method for updating firmware Download PDF

Info

Publication number
KR20090023863A
KR20090023863A KR1020070088951A KR20070088951A KR20090023863A KR 20090023863 A KR20090023863 A KR 20090023863A KR 1020070088951 A KR1020070088951 A KR 1020070088951A KR 20070088951 A KR20070088951 A KR 20070088951A KR 20090023863 A KR20090023863 A KR 20090023863A
Authority
KR
South Korea
Prior art keywords
storage means
boot code
firmware information
new version
version
Prior art date
Application number
KR1020070088951A
Other languages
Korean (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 KR1020070088951A priority Critical patent/KR20090023863A/en
Publication of KR20090023863A publication Critical patent/KR20090023863A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/123Software or firmware update, e.g. device firmware management
    • 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/4401Bootstrapping

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

The present invention relates to a firmware update system and method, comprising: first storage means having an input / output unit receiving a new version of firmware information and a first boot code or a second boot code activated according to a control signal; Second storage means corresponding to the first boot code and having firmware information of an old version; A storage unit including a third storage unit corresponding to the second boot code and having firmware information of the new version, and receiving the firmware information of the new version from the input / output unit, and controlling the control unit to the first storage unit. A signal is first applied to activate the first boot code with the second boot code, update firmware information of the new version to the third storage means, and update firmware information of the old version of the second storage means. And a controller for updating the firmware information of the new version, activating the second boot code of the first storage means back to the first boot code, and then rebooting the system.

Description

System and Method for updating firmware

1 is a block diagram illustrating a firmware update system according to the present invention.

2 is a flowchart illustrating a firmware update method according to the present invention.

3 is a flowchart illustrating a method of booting a firmware update system according to the present invention.

*** Explanation of symbols for the main parts of the drawing ***

100: firmware update system 102: input and output unit

104: storage unit 106: first storage means

108: second storage means 108a: old kernel region

108b: old root file system area 110: third storage means

110a: new kernel area 110b: new root file system area

112: control unit

The present invention relates to a firmware update system and method.

An embedded system is a system in which software for performing a predetermined specific function is embedded in a microprocessor installed in various electronic products or information devices, and a combination of computer hardware and software for performing a predetermined specific function It is the general name of the electronic control system.

In other words, mobile phones, TVs, airplanes, air conditioners, refrigerators, and missiles contain simple computers, and embedded computers are embedded in the computers to control operations.

In general, an embedded system is a system capable of performing a function, composed of hardware and software, including a ROM including a microprocessor, and a purpose-built application is operated as soon as the power is turned on.

The embedded system uses a lot of flash memory as a file system storage space, and such a flash memory has a configuration as shown in [Table 1].

Root File System MTD 2 Kernel MTD 1 Boot loader MTD 0

Here, Table 1 is a table showing the MTD (Memory Technology Devices) partition of the flash memory.

When the embedded system is powered on, the boot loader of MTD 0 is started and the kernel file of MTD 1 is loaded and then the system file of the root file system of MTD 2 is loaded. It is driven by loading (System File).

Such an embedded system upgrades the kernel of MTD 1 and the root file system of MTD 2 when upgrading system firmware via a universal serial bus (USB) or the Internet.

However, when the old system of the embedded system is upgraded to the new firmware and the power is cut off and the power is applied again to reboot the embedded system, the system files of the kernel of MTD 1 or the root file system of MTD 2 are damaged. Not only does the embedded system not work properly, but the embedded system cannot be upgraded or repaired again.

In the present invention, the firmware is normally updated or restored even when the old version of the firmware installed in the system is rebooted by applying power again after the power is cut off in the middle of the update to the new version of the firmware.

The present invention provides an input and output unit for receiving firmware information of a new version and first storage means having a first boot code or a second boot code activated according to a control signal; Second storage means corresponding to the first boot code and having firmware information of an old version; A storage unit including a third storage unit corresponding to the second boot code and having firmware information of the new version, and receiving the firmware information of the new version from the input / output unit, and controlling the control unit to the first storage unit. A signal is first applied to activate the first boot code with the second boot code, update firmware information of the new version to the third storage means, and update firmware information of the old version of the second storage means. And a controller for updating the firmware information of the new version, activating the second boot code of the first storage means back to the first boot code, and then rebooting the system.

In the present invention, after the system is booted, the control unit compares and determines whether the first boot code of the first storage means is activated, and as a result of the comparison decision, when the first boot code of the first storage means is activated. Load the firmware information of the new version of the second storage means into the system.

In the present invention, the control unit recognizes that the second boot code is activated when the first boot code of the first storage means is not activated, and loads the firmware information of the new version of the third storage means. And updating the firmware information of the old version of the second storage means with firmware information of a new version, and activating the second boot code of the first storage means back to the first boot code. Reboot.

In another aspect, the present invention is the step of receiving the new version of the firmware information from the input and output unit, the control unit to activate the first boot code, the first boot code of the first storage means of the storage unit as a second boot code, the control unit is a third Updating firmware information of a new version in a storage means, updating, by the controller, firmware information of an old version of a second storage means with firmware information of the new version, and wherein the controller performs the second boot of the storage unit. Activating the code back to the first boot code, and rebooting the system by the controller.

In the present invention, after the system is booted in the control unit, comparing the first boot code of the first storage means to determine whether the activation, and when the comparison result in the control unit when the first boot code is activated Loading the firmware information of the new version of the second storage means to drive the system.

In the present invention, the control unit recognizes that the second boot code is activated when the first boot code is not activated, and loading the firmware information of the new version of the third storage means; Updating the firmware information of the old version of the second storage means with firmware information of a new version, activating the second boot code with the first boot code, and the controller controlling the system. Rebooting the step.

Hereinafter, a firmware update system and a method thereof according to the present invention will be described in detail with reference to the accompanying drawings.

1 is a block diagram illustrating a firmware update system according to the present invention.

As shown in FIG. 1, the firmware update system 100 includes an input / output unit 102, a storage unit 104, and a control unit 112.

The input / output unit 102 receives new version (Firmware) information from a compact disc (CD), a universal serial bus (USB), a communication network, or the like.

Here, the firmware information of the new version includes a new application program, a first boot code, a second boot code, a new kernel, a new root file system, etc. of the system 100. Include.

In addition, the communication network may be a wireless network or the Internet (TCP / IP).

That is, the input / output unit 102 may receive a new version of firmware information through one of a CD-ROM interface, a USB interface, an internet communication interface, and a wireless communication interface.

The storage unit 104 may include a first storage means 106, a second storage means 108, and a third storage means 110, and may use a flash memory, which is a nonvolatile memory.

The first storage unit 106 is a boot loader region of the memory technology devices (MTD) 0 including the first boot code or the second boot code.

The second storage unit 108 includes an old kernel (MT) area of the memory technology devices (MTD) 1 including an old kernel serving as an operating system (OS) of the system 100. 108a) or Old Rood File System area 108b of MTD 2, including Old Rood File System having unique information of System 100.

Here, the old root file system includes an old version of an application program and the like.

In addition, the third storage unit 110 includes a new kernel region 110a of MTD 3 including a new kernel serving as an operating system (OS) of the system 100. Or a new root file system area 110b of MTD 4 including a new root file system having unique information of the system 100.

The new root file system includes a new version of an application program.

Meanwhile, the first boot code of the first storage means 106 corresponds to the old kernel region 108a of the MTD (Memory Technology Devices) 1 in the second storage means 108, and the second boot code is the third storage means. Corresponds to scene kernel region 110a at 110.

Here, the first boot code or the second boot code of the first storage means 106 is activated according to the control signal of the control unit 112, respectively, the old kernel area 108a of MTD 1 or the new kernel area of MTD 3 ( Activate 110a).

In this case, the controller 112 may activate the first boot code or the second boot code of the first storage means 106 by the first boot code or the second boot code of the new version of the firmware information.

In addition, the controller 112 may load the old kernel of the old kernel region 108a or the new kernel of the new kernel region 110a according to the activated first boot code or the second boot code.

The storage unit 104 has a configuration as shown in [Table 2].

 new Root file System for upgrade MTD 4  new Kernel for upgrade MTD 3  old Root file system MTD 2  old kernel MTD 1  Boot loader MTD 0

Here, [Table 2] is a table showing the MTD (Memory Technology Devices) partition for protecting the embedded system.

When the controller 112 receives the new version of the firmware information from the input / output unit 102, the controller 112 activates the first and first boot codes set in the first storage means 106 as the second boot code by the new version of the firmware information. The new kernel or new version of the root file system is updated in the new kernel region 110a or the new root file system region 110b of the third storage means 110.

In addition, the controller 112 controls the old kernel or the old root file system of the old kernel region 108a or the old root file system region 108b of the second storage means 108, respectively, with the new version of the firmware information of the new version. Or update to a new version of the root file system and activate the second boot code of the first storage means 106 again as the first boot code.

Thereafter, the controller 112 may delete the scene kernel or scene loop file system of the scene kernel area 110a or the scene file system area 110b from the third storage means 110.

In addition, the controller 112 may activate the second boot code of the first storage means 106 as the first boot code, and then reboot the system 100.

Meanwhile, after the system 100 is rebooted, the controller 112 determines whether the boot code of the first storage means 106 is the first boot code, and as a result of the comparison, the boot code of the first storage means 104 is determined. In the case of the first boot code, the updated second storage means 108 loads the new kernel of the old kernel region 108a or the new root file system of the old root file system region 108b to drive the system 100. Let's do it.

In addition, if the boot code of the first storage means 106 is not the first boot code, the controller 106 recognizes the second boot code as a new boot region 110a of the third storage means 110. The old kernel or old root file of the old kernel file 108a or the old root file system area 108b of the second storage means 108 by loading the new kernel or the new root file system of the new root file system area 110b. Update the system with the new kernel or new root file system, respectively.

Thereafter, the controller 112 may delete the scene kernel or scene loop file system of the scene kernel area 110a or the scene file system area 110b from the third storage means 110.

 In addition, the controller 112 activates the second boot code of the first storage means 106 as the first boot code, and then reboots the system 100.

2 is a flowchart illustrating a firmware update method according to the present invention.

As shown in FIG. 2, when the new version of the firmware information is received from the input / output unit 102, the control unit 112 stores the first boot code of the first first storage unit 106 in the storage unit 104. Activate as a second boot code (S201).

Here, the first boot code corresponds to the old kernel region 108a of MTD 1 in the second storage means 108, and the second boot code corresponds to the new kernel region 110a of MTD 3 in the third storage means 110. Corresponds to.

In addition, the input / output device 102 receives firmware information of a new version from a compact disc (CD), a universal serial bus (USB), a communication network, or the like.

Here, the new version of the firmware information includes a new application program, a first boot code, a second boot code, a new kernel, a new root file system, etc. of the system 100.

Here, the communication network may be a wireless network or the Internet (TCP / IP).

That is, the input / output device 102 may receive new version of firmware information through a CD-ROM interface, a USB interface, an Internet communication interface, and a wireless communication interface.

The controller 112 updates the new kernel or new root file system of the new firmware information in the new kernel area 110a or the new root file system area 110b of the third storage means 110, respectively (S202). In the second storage means 108, the old kernel of the old kernel region 108a or the old root file system of the old root file system region 108b is updated with the new kernel or the new root file system, respectively (S203).

Thereafter, the control unit 112 activates the second boot code set in the first storage unit 106 as the first boot code again (S204).

In addition, the controller 112 may selectively delete the new kernel or the new root file system of the new kernel area 110a or the new root file system area 110b of the third storage means 110.

In addition, the controller 112 may reboot the system 100 (S205).

3 is a flowchart illustrating a method of booting a firmware update system according to the present invention.

When the system 100 is booted (S301), the control unit 112 determines whether the boot code of the first storage unit 106 is the first boot code in the storage unit 104 (S302).

As a result of the comparison determination in the step (S302), when the boot code of the first storage means 106 is the first boot code, the control unit 112 is the old kernel in the second storage means 108 updated to the new version. The new kernel of the region 108a or the new root file system of the old root file system region 108b is loaded (S304) to drive the system 100.

If, as a result of the comparison determination in step 302, when the boot code of the first storage means 106 is not the first boot code, the control unit 112 recognizes the second boot code as the third storage means ( In operation 110, the scene kernel of the scene kernel region 110a or the scene scene file system of the scene scene file system 110b is loaded (305).

Subsequently, the control unit 112 stores the old kernel of the old kernel region 108a or the old root file system of the old root file system region 108b in the second storage means 108, respectively. Update to the root file system (S306).

Next, the control unit 112 activates the second boot code activated in the first storage unit 106 as the first boot code again (S307).

In this case, the controller 112 may selectively delete the scene kernel of the scene kernel area 110a or the scene file system of the scene file system 110b in the third storage means 110.

Thereafter, the controller 112 may reboot the system 100.

In the firmware update system and method as described above, when the new version of the firmware is updated in the system, the second boot code of the first storage means in the boot loader region is activated, and the new kernel or the new root file system is stored in the third storage means ( 110 and then, by updating the old kernel or old root file system of the second storage means 108 with the new kernel or the new root file system, respectively, the power is cut off in the middle of the firmware update and the operating program is rebooted again. The required kernel or root file system is not corrupted.

As described above, although the present invention has been described by way of limited embodiments and drawings, the present invention is not limited to the above-described embodiments, and those skilled in the art to which the present invention pertains can make various modifications and Modifications are possible. Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined not only by the claims below but also by the equivalents of the claims.

According to the firmware update system and method of the present invention, kernel information and root file system information can be protected even when the power is cut off in the middle of updating the old version firmware installed in the system to the new version firmware. There is an effect.

In addition, the present invention can protect the kernel information and the root file system information even when the power is cut off during the firmware update, so that the system can be normally restored upon rebooting.

Claims (18)

Input and output unit for receiving new firmware information, First storage means having a first boot code or a second boot code activated according to a control signal; Second storage means corresponding to the first boot code and having firmware information of an old version; A storage unit corresponding to the second boot code and including third storage means having firmware information of the new version; The new version of the firmware information is input from the input / output unit, and the control signal is applied to the first storage means to activate the first boot code as the second boot code and to the third storage means. Update the firmware information of the new version, update the firmware information of the old version of the second storage means with the firmware information of the new version, and reset the second boot code of the first storage means again to the first boot Firmware update system including a control unit for rebooting the system after activating the code. The method of claim 1, The controller determines whether the first boot code of the first storage means is activated after the system is booted, and when the first boot code of the first storage means is activated as a result of the comparison decision, 2 Firmware update system for driving the system by loading the firmware information of the new version of the storage means. The method of claim 2, The control unit recognizes that the second boot code is activated when the first boot code of the first storage means is not activated, and loads firmware information of a new version of the third storage means. Updating the firmware information of the old version of the second storage means with firmware information of the new version, activating the second boot code of the first storage means again with the first boot code, and then rebooting the system. Firmware update system. The method of claim 1, And the input / output unit is one of a CD-ROM, a USB interface, an internet communication interface, and a wireless communication interface. The method of claim 1, The firmware information of the old version includes an old kernel or an old root file system. The method of claim 1, The firmware information of the new version includes a new version of the kernel or a new version of the root file system. The method of claim 1 And the second storage means includes an old kernel storage area corresponding to the first root code and having an old version kernel or an old root file system storage area having an old version root file system. The method of claim 1, And the third storage means includes a new kernel storage area corresponding to the second root code and having a new version kernel or a new root file system storage area having a new version root file system. The method of claim 1, And the controller updates the firmware information of the old version of the second storage means with the firmware information of the new version, and then deletes the firmware information of the new version of the third storage means. Receiving new firmware information from the input / output unit; Activating, by the control unit, the first boot code of the first storage means of the storage unit as the second boot code; Updating, by the controller, firmware information of a new version to third storage means; Updating, by the controller, the firmware information of the old version of the second storage means with the firmware information of the new version; Activating, by the controller, the second boot code of the storage unit as the first boot code again; The firmware update method comprising the step of rebooting the control system. The method of claim 10, Comparing, by the controller, whether the first boot code of the first storage means is activated after the system is booted; And loading the firmware information of the new version of the second storage means when the first boot code is activated by the controller to drive the system. The method of claim 11, Loading the firmware information of the new version of the third storage means by recognizing that the second boot code is activated when the first boot code is not activated as a result of the comparison determination; Updating, by the controller, the firmware information of the old version of the second storage means with firmware information of a new version; Activating, by the controller, the second boot code as the first boot code; And rebooting, by the controller, the system. The method of claim 10, And the input / output unit is one of a CD-ROM, a USB interface, an internet communication interface, and a wireless communication interface. The method of claim 10, The firmware information of the older version includes an older kernel or an older root file system. The method of claim 10, The firmware information of the new version includes a new version of the kernel or a new version of the root file system. The method of claim 10, And the second storage means includes an old kernel storage area corresponding to the first root code and having an old version kernel or an old root file system storage area having an old version root file system. The method of claim 10, And the third storage means includes a new kernel storage area corresponding to the second root code and having a new version kernel or a new root file system storage area having a new version root file system. The method of claim 10, And updating, by the controller, the firmware information of the old version of the second storage means with the firmware information of the new version, and then deleting the firmware information of the new version of the third storage means. .
KR1020070088951A 2007-09-03 2007-09-03 System and method for updating firmware KR20090023863A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070088951A KR20090023863A (en) 2007-09-03 2007-09-03 System and method for updating firmware

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070088951A KR20090023863A (en) 2007-09-03 2007-09-03 System and method for updating firmware

Publications (1)

Publication Number Publication Date
KR20090023863A true KR20090023863A (en) 2009-03-06

Family

ID=40693025

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070088951A KR20090023863A (en) 2007-09-03 2007-09-03 System and method for updating firmware

Country Status (1)

Country Link
KR (1) KR20090023863A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101031215B1 (en) * 2010-04-22 2011-04-27 (주)허브테크 System for updating firmware of settop-box using tcp/ip
KR101466560B1 (en) * 2011-06-07 2014-11-28 엘에스아이 코포레이션 Management of device firmware update effects as seen by a host
CN105094927A (en) * 2015-08-28 2015-11-25 东方网力科技股份有限公司 Equipment firmware updating method and device

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101031215B1 (en) * 2010-04-22 2011-04-27 (주)허브테크 System for updating firmware of settop-box using tcp/ip
KR101466560B1 (en) * 2011-06-07 2014-11-28 엘에스아이 코포레이션 Management of device firmware update effects as seen by a host
CN105094927A (en) * 2015-08-28 2015-11-25 东方网力科技股份有限公司 Equipment firmware updating method and device
CN105094927B (en) * 2015-08-28 2018-06-12 东方网力科技股份有限公司 A kind of device firmware upgrade method and apparatus

Similar Documents

Publication Publication Date Title
US7017004B1 (en) System and method for updating contents of a flash ROM
US8181007B2 (en) Electronic device and method for secure operating system update in embedded system
CN105745617B (en) Selective power management for pre-boot firmware updates
US20040030877A1 (en) Using system BIOS to update embedded controller firmware
US8583907B2 (en) Electronic device having an alterable configuration and methods of manufacturing and configuring the same
US20100132042A1 (en) Method for upgrading antivirus software and terminal and system thereof
KR101427755B1 (en) Device and method for firmware upgrade using usb
EP2254051B1 (en) Computer system with damaged bios data recovering function and recovering method thereof
WO2022007656A1 (en) Bootloader software updating method and apparatus, embedded controller, and storage medium
US8136108B2 (en) Updating firmware with multiple processors
EP2068246A1 (en) Auto repair method of system configurations using single key control
US20060227806A1 (en) Multi-mode computer systems and operating methods thereof
US20090217079A1 (en) Method and apparatus for repairing multi-controller system
KR20050041604A (en) Mobile communication terminal having embedded system for software download and method therefor
CN108874459B (en) Rapid starting method and device based on virtualization technology
CN106020861A (en) FOTA upgrading method and system for smart watch
US20090271660A1 (en) Motherboard, a method for recovering the bios thereof and a method for booting a computer
US9256443B2 (en) Electronic device having updatable bios and bios updating method thereof
CN111240753A (en) Loading method of bootstrap program, storage medium and embedded terminal
KR20090023863A (en) System and method for updating firmware
CN111522690B (en) Data storage device and method for maintaining normal start-up operation of data storage device
CN110908733B (en) Working mode determining method and device, and control method and device
US20060168440A1 (en) OS selection methods and computer systems utilizing the same
KR100832269B1 (en) Program update method and system for wireless communication terminal
CN111078469A (en) Data processing method and data processing equipment

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application