# US 8,789,036 B2 · Device software customization

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,789,036 B2
- Document ID: US8789036B2
- Status: Granted
- Kind: B2
- Application number: 12/863,140
- Filed: 2008-03-07
- Published: 2010-11-18
- Granted: 2014-07-22
- Earliest claimed: 2008-01-17
- Assignees: QUALCOMM Incorporated
- Applicants: Kamaljeet Maini
- Inventors: Kamaljeet Maini
- Web page: https://patentgrep.com/patent/US8789036B2

## CPC

- G06F 9/44505: {Configuring for program initiating, e.g. using registry, configuration files}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Systems, methods, and other embodiments associated with device software configuration are described. One example method is executed by a personal electronic device (PED) having a read only memory (ROM) configured with a boot loader, a BASE ROM partition, and a customization file store partition (CFSP). The method includes receiving a customization package and storing it in the CFSP. The method includes invoking a one-time installation process to customize PED software, settings, characteristics, and so on, based on the CFSP contents. The method includes invoking a boot-time installation process to configure a file system filter driver on the PED to control access to CFSP contents based, at least in part, on a file attribute associated with the CFSP content.

## Claims

### Claim 1

A method, comprising:
configuring a personal electronic device (PED) read only memory (ROM) with a boot loader, a BASE ROM partition, and a customization file store partition (CFSP);
establishing a customization package to be associated with the CFSP;
deploying the customization package to the PED ROM;
controlling the PED to store the customization package in the CFSP in the PED ROM;
invoking an installation process on the PED, where the installation process converts a user file of the customization package stored in the CFSP to a system file; and
producing a customized instance of the PED, where the customized instance customizes software available on the PED based on the customization package stored in the CFSP.

### Claim 2 (depends on 1)

The method of claim 1, where the CFSP is to store one or more of, a software application file, a settings file, an XML provisioning file, and a digitally signed configuration file.

### Claim 3 (depends on 1)

The method of claim 1, where the CFSP is to be persistent across a cold boot, a clean boot, a factory reset, a master reset, and a RUU write unless specifically updated, and where the CFSP may be flashed individually.

### Claim 4 (depends on 1)

The method of claim 1, where the customization package includes a set of application files and a set of settings files.

### Claim 5 (depends on 1)

The method of claim 1, where the installation process is to perform a pre-installation operation, an installation operation, and a post-installation operation.

### Claim 6 (depends on 1)

The method of claim 1, where the installation process is to control a file system filter driver (FSFD) to selectively convert the user file to the system file by manipulating an attribute value of the user file.

### Claim 7 (depends on 6)

The method of claim 6, where the installation process controls the FSFD to selectively convert a system file to a user file by manipulating an attribute value of the system file.

### Claim 8 (depends on 6)

The method of claim 6, where the FSFD controls access to the CFSP.

### Claim 9 (depends on 8)

The method of claim 8 where the FSFD controls access to the CFSP by intercepting a file system operation whose target resides in the CFSP and selectively blocking the file system operation based, at least in part, on the value of a file attribute associated with the target.

### Claim 10 (depends on 1)

The method of claim 1, including selectively controlling the PED to not store the customization package in the CFSP in the PED ROM based, at least in part, on a determination of the size of the customization package.

### Claim 11 (depends on 1)

The method of claim 1, where the CFSP is to be individually updated, and store user files and system files.

### Claim 12 (depends on 1)

The method of claim 1, where deploying the customization package to the PED ROM includes deploying the customization package to the PED ROM without deleting the BASE ROM partition.

### Claim 13

A personal electronic device (PED), comprising:
a read only memory (ROM) comprising:
a boot loader;
a BASE ROM partition; and
a customization file store partition (CFSP);
a package logic to receive a customization package and to deploy the customization package to the CFSP;
a customization logic to produce a customized instance of the PED based, at least in part, on the customization package in the CFSP; and
a file system filter driver (FSFD) to control access to a file stored in the CFSP on the PED based, at least in part, on a file attribute associated with the file.

### Claim 14 (depends on 13)

The PED of claim 13, where the customization logic is to selectively manipulate a file attribute associated with a file received in the customization package and stored in the CFSP to make the file eligible for selective protection by the FSFD.

### Claim 15 (depends on 14)

The PED of claim 14, where the customization logic is to selectively manipulate one or more of, a property of a user interface employed by the PED, and a setting that controls an operating characteristic of the PED.

### Claim 16 (depends on 13)

The PED of claim 13, where the boot loader is to perform a first boot-time customization for a cold boot of the PED and is to perform a second, different boot-time customization for a warm boot of the PED.

### Claim 17 (depends on 13)

The PED of claim 13, where the customization logic is to manipulate an attribute value of the file stored in the CFSP to convert the file to a system file.

### Claim 18 (depends on 13)

The PED of claim 13, where the CFSP is to be individually updated, and store user files and system files.

### Claim 19 (depends on 13)

The PED of claim 13, where the package logic is to deploy the customization package without deleting the BASE ROM partition.

### Claim 20

A hardware computing system, comprising:
means for configuring a read only memory (ROM) to include a boot loader, a BASE ROM partition, and a customization file store partition (CFSP);
means for configuring a personal electronic device (PED) with the ROM;
means for providing a customization package to the CFSP in the PED; and
means for producing a customized instance of the PED based, at least in part, on the customization package in the CFSP.
