IP Library Granted Patent US 9,298,444
Granted Patent B2
US 9,298,444 · App. 12/126,444 · Granted Mar 29, 2016

Software updating method and portable terminal device

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,298,444
App. No.
12/126,444
Granted
Mar 29, 2016
Kind
B2
Abstract

A software updating method for updating software stored as compressed code in a nonvolatile memory provided in a portable terminal on the basis of differential data via wireless communication includes the steps of providing a file system area having a fault-tolerant property; decompressing, at the execution of software updating, the compressed code of the software and loading the decompressed code into a random-access memory; updating the software in the random-access memory on the basis of the differential data; compressing the updated software; and storing a backup of a compressed updated code sequence corresponding to a compressed updated portion of the compressed updated software in the file system area and then writing the compressed updated code sequence corresponding to the compressed updated portion of the compressed updated software back to the nonvolatile memory.

Claims (58)

1. A software updating method for updating software stored as compressed code in a nonvolatile memory provided in a portable terminal on the basis of differential data via wireless communication, the method comprising the steps of:

providing a file system area having a fault-tolerant property;

decompressing, at the execution of software updating, the compressed code of the software and loading the decompressed code into a random-access memory;

updating the software in the random-access memory on the basis of the differential data;

compressing, by processing circuitry, the updated software; and

storing a backup of a compressed updated code sequence corresponding to a compressed updated portion of the compressed updated software in the file system area;

writing the compressed updated code sequence corresponding to the compressed updated portion of the compressed updated software back to the nonvolatile memory only after storing, in the file system area, the backup of the compressed updated code sequence and position information indicating a position in the non-volatile memory at which the backup should be written to if a power failure occurs; and

writing, based on the position information, the backup of the compressed updated code sequence stored in the file system area to the nonvolatile memory after a failure occurs and after power is recovered,

wherein the fault-tolerant property ensures that data, including the compressed updated code sequence, stored in the file system area is not damaged when the failure occurs,

wherein, based on the differential data, only the backup of the compressed updated code sequence corresponding to the compressed updated portion of the compressed updated software in the nonvolatile memory and the position information are stored in the file system area.

2. The software updating method according to claim 1 ,

wherein the failure relates to the writing back to the nonvolatile memory occurs due to a power-off at the execution of the software updating, and

after the power is recovered, the compressed updated code sequence stored in the file system area is written back to a corresponding area of the nonvolatile memory and then the software updating is resumed.

3. The software updating method according to claim 1 or 2 ,

wherein the software is divided into a plurality of components, the plurality of components are compressed, and the compressed plurality of components are stored in the nonvolatile memory,

wherein at the execution of the software updating, all the compressed plurality of components of the software are decompressed and the decompressed components are loaded into the random-access memory,

wherein only a component to be updated is updated in the random-access memory on the basis of the differential data, and

wherein only the updated component is compressed, and the compressed updated component is written back to a corresponding area of the nonvolatile memory.

4. The software updating method according to claim 3 ,

wherein in the case of storing the compressed code of the software in the nonvolatile memory, a data table defining positions where the compressed components are stored in the nonvolatile memory is generated and the generated data table is stored in a nonvolatile manner, and

wherein in the case of storing the compressed updated component in the file system area, the position where the compressed updated component is to be stored in the nonvolatile memory is identified by referring to the data table.

5. A portable terminal device for updating software stored as compressed code in a nonvolatile memory provided in a portable terminal on the basis of differential data via wireless communication, the device comprising:

a storage unit configured to include a file system area having a fault-tolerant property;

a random-access memory configured to store the software; and

data processing means for

decompressing, at the execution of software updating, the compressed code of the software,

loading the decompressed code into the random-access memory, updating the software in the random-access memory on the basis of the differential data,

compressing the updated software, storing a backup of a compressed updated code sequence corresponding to a compressed updated portion of the compressed updated software in the file system area,

writing the compressed updated code sequence corresponding to the compressed updated portion of the compressed updated software back to the nonvolatile memory only after storing, in the file system area, the backup of the compressed updated code sequence and position information indicating a position in the non-volatile memory at which the backup should be written to if a power failure occurs, and

writing, based on the position information, the compressed updated code sequence stored in the file system area to the nonvolatile memory after a failure occurs and after power is recovered,

wherein the fault-tolerant property ensures that data, including the compressed updated code sequence, stored in the file system area is not damaged when the failure occurs,

wherein, based on the differential data, only the backup of the compressed updated code sequence corresponding to the compressed updated portion of the compressed updated software in the nonvolatile memory and the position information are stored in the file system area.

6. The portable terminal device according to claim 5 ,

wherein the failure relates to the writing back to the nonvolatile memory occurs due to a power-off at the execution of the software updating, and

after the power is recovered, the data processing means writes the compressed updated code sequence stored in the file system area back to a corresponding area of the nonvolatile memory and then resumes the software updating.

7. The portable terminal device according to claim 5 or 6 ,

wherein the software is divided into a plurality of components, the plurality of components are compressed, and the compressed plurality of components are stored in the nonvolatile memory,

wherein at the execution of the software updating, the data processing means decompresses all the compressed plurality of components of the software, loads the decompressed components into the random-access memory, updates only a component to be updated in the random-access memory on the basis of the differential data, compresses only the updated component, and writes the compressed updated component back to a corresponding area of the nonvolatile memory.

8. The portable terminal device according to claim 7 ,

wherein in the case of storing the compressed code of the software in the nonvolatile memory, the data processing means generates a data table defining positions where the compressed components are stored in the nonvolatile memory and stores the generated data table in a nonvolatile manner, and

wherein in the case of storing the compressed updated component in the file system area, the data processing means identifies the position where the compressed updated component is to be stored in the nonvolatile memory by referring to the data table.

9. A portable terminal device for updating software stored as compressed code in a nonvolatile memory provided in a portable terminal on the basis of differential data via wireless communication, the device comprising:

circuitry configured as:

a storage unit configured to include a file system area having a fault-tolerant property;

a random-access memory configured to store the software; and

a data processing unit configured to

decompress, at the execution of software updating, the compressed code of the software,

load the decompressed code into the random-access memory,

update the software in the random-access memory on the basis of the differential data, compress the updated software,

store a backup of a compressed updated code sequence corresponding to a compressed updated portion of the compressed updated software in the file system area,

write the compressed updated code sequence corresponding to the compressed updated portion of the compressed updated software back to the nonvolatile memory only after storing, in the file system area, the backup of the compressed updated code sequence and position information indicating a position in the non-volatile memory at which the backup should be written to if a power failure occurs, and

writing, based on the position information, the compressed updated code sequence stored in the file system area to the nonvolatile memory after a failure occurs and after power is recovered,

wherein the fault-tolerant property ensures that data, including the compressed updated code sequence, stored in the file system area is not damaged when the failure occurs,

wherein, based on the differential data, only the backup of the compressed updated code sequence corresponding to the compressed updated portion of the compressed updated software in the nonvolatile memory and the position information are stored in the file system area.

10. The software updating method according to claim 1 , wherein the failure relates to damage to or a defect of an area of the nonvolatile memory resulting from an interrupted write operation.

11. The software updating method according to claim 10 , wherein the interrupted write operation occurs when a power-off state occurs during the write operation.

12. The portable terminal device according to claim 9 , wherein the failure relates to a power-off state.

13. The software updating method according to claim 1 , wherein the file system area stores a telephone directory and electronic mail messages.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 21, 2017
From: SONY CORPORATION
To: SONY MOBILE COMMUNICATIONS INC.
Reel/Frame 043943/0631 →
ASSIGNMENT OF PARTIAL RIGHTS Recorded Feb 1, 2016
From: SONY MOBILE COMMUNICATIONS INC.
To: SONY CORPORATION
Reel/Frame 037675/0309 →
CHANGE OF NAME Recorded Feb 9, 2015
From: SONY MOBILE COMMUNICATIONS JAPAN, INC.
To: SONY MOBILE COMMUNICATIONS INC.
Reel/Frame 034924/0285 →
CHANGE OF NAME Recorded Apr 20, 2012
From: SONY ERICSSON MOBILE COMMUNICATIONS JAPAN, INC.
To: SONY MOBILE COMMUNICATIONS JAPAN, INC.
Reel/Frame 028078/0247 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 23, 2008
From: HIRAO, YASUYUKI; AOYAGI, KATSUMI; SANBOMMATSU, TOSHIHISA; ICHIKAWA, TOMOHIRO; ASA, KENJI
To: SONY ERICSSON MOBILE COMMUNICATIONS JAPAN, INC.
Reel/Frame 020996/0213 →