Device management in a network

Information

  • Patent Grant
  • 8893110
  • Patent Number
    8,893,110
  • Date Filed
    Thursday, April 26, 2012
    12 years ago
  • Date Issued
    Tuesday, November 18, 2014
    10 years ago
Abstract
Methods and devices supporting the management of a plurality of electronic devices and processing of update information for updating software and/or firmware in the electronic devices. Prompting of users may be made using a language associated with the electronic device, and authorization to update an electronic device may be secured using a subscriber identity module.
Description
BACKGROUND OF THE INVENTION

Non-volatile memory is employed in a wide variety of electronic devices such as, for example, mobile handsets, cellular phones, personal digital assistants (PDA's), pagers and handheld personal computers. The non-volatile memory in these devices contains firmware, application software, data, and configuration information that makes the devices operational, and may be provided by the manufacturers of the electronic devices, by system operators of telecommunication carrier networks, or by third parties developers. If defects are found in such firmware/software, or if new features are to be added to such devices, the software and/or firmware in the affected electronic devices may need to be updated. Errors and/or interruptions that may occur during the updating of such operational code may leave the electronic device in a partly or completely non-functional state. To avoid this problem, present methods of updating such software and/or firmware involve returning the electronic device to the manufacturer, to the system operator, or to the third party, so that an update of memory contents may be performed using a direct connection to the electronic device. This is both costly and inconvenient to both the user of the electronic device, and to one performing the update.


Configuration parameters and other information for an electronic device may be stored in the non-volatile memory of such devices, and information about the device capabilities, the hardware, software and manufacturer of the device, and particulars for a given instance of the device in a network may be stored in databases used by, for example, device management and customer service operations. Such databases may be accessible to device management and customer service operations through database access mechanisms using, for example, structured query language (SQL) or similar database management tools.


Updates to firmware and/or software in an electronic device may be developed by a number of parties including, for example, the manufacturer of the electronic device, the provider of services of a communication network accessed by the electronic device, or a third party. While the manufacturer and/or third party may be technically qualified and capable of creating workable updates for the firmware and/or software in an electronic device, such updated firmware and/or software may not be planned for or compatible with the services and communication capabilities of the communication network of the service provider. Although the user of the electronic device may have authorization to use the network, an update to the firmware/software of the electronic device may not be authorized for use in electronic device served by the communication network of the service provider.


In some circumstances, updates to software/firmware of an electronic device that are approved for distribution may be intended only for use by a subset of those electronic device users. For example, new applications or software and/or firmware updates may provide electronic device capabilities that are intended for use by specific groups of users. Some updates may not yet be fully tested, and there may be a desire to make such updates available to users that have been selected to be testers of an early release of an application or firmware/software update. In other circumstances, such a subset of users may have a common need for an application or update of firmware/software, and distribution to such a subset may be desirable. Limiting the distribution of such updates to a selected group may be necessary and/or prudent, if such updates may cause problems for the users of the affected electronic devices.


Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of such systems with a representative embodiment of the present invention as set forth in the remainder of the present application with reference to the drawings.





BRIEF DESCRIPTION OF SEVERAL VIEWS OF THE DRAWINGS


FIG. 1 is a perspective block diagram of an exemplary network that supports remote update of non-volatile memory of an electronic device such as, for example, a mobile handset or personal digital assistant, in accordance with a representative embodiment of the present invention.



FIG. 2 shows a block diagram of an exemplary OMA DM-based device management architecture employing an OMA DM common framework supporting interactions between OMA DM-based applications servers and an electronic device such as the electronic device of FIG. 1, in accordance with a representative embodiment of the present invention.



FIG. 3 shows an exemplary message exchange between an OMA DM-based application and an OMA DM common framework during a regular device management session, in accordance with a representative embodiment of the present invention.



FIG. 4 illustrates an exemplary exchange of messages or control between an OMA DM-based application and an OMA DM common framework during a bootstrap session, in accordance with a representative embodiment of the present invention.



FIG. 5 shows the architecture of an exemplary device management system having an OMA DM common framework in accordance with a representative embodiment of the present invention.



FIG. 6A shows an exemplary SIM file format for containing a set of FOTA credentials that may be stored in the file system of a SIM, in accordance with a representative embodiment of the present invention.



FIG. 6B shows an exemplary format of a FOTA condition byte that may correspond, for example, to the FOTA condition byte shown in FIG. 1, in accordance with a representative embodiment of the present invention.



FIG. 7 shows a flowchart illustrating an exemplary process of signing an update package and verifying it against the signature/validation string stored on a SIM card, in accordance with a representative embodiment of the present invention.



FIG. 8 shows a table illustrating exemplary scenarios regarding the control of the update process for an electronic device that may correspond to, for example, the electronic device of FIG. 1, for an update package secured by System Operator A and those not secured by System Operator A, used with a SIM issued by System Operator A, in accordance with a representative embodiment of the present invention.



FIG. 9 shows an illustration of an exemplary user interface screen that enables creation of download groups, in accordance with a representative embodiment of the present invention.



FIG. 10 illustrates a exemplary job details screen that may be employed by a user of an update server during management of updates to multiple electronic devices that may correspond to, for example, the electronic device of FIG. 1, in accordance with a representative embodiment of the present invention.



FIG. 11 illustrates an exemplary event level details screen, in accordance with a representative embodiment of the present invention.





DETAILED DESCRIPTION OF THE INVENTION

Aspects of the present invention relate generally to the updating of memory in electronic devices, and more specifically, to methods and systems supporting device management and processing of updates for firmware, software, configuration parameters and file systems in memory of an electronic device such as, for example, non-volatile FLASH-type memory. While the following discussion focuses primarily on mobile electronic devices such as, for example, a mobile handset, a cellular phone, a personal digital assistant, a pager, and a handheld personal computer, this is by way of example and not by way of specific limitations of the present invention. The teaching contained herein may also be applicable to a variety of other electronic devices having a processor and memory containing software, firmware, configuration information, data files, and the like, for which updating of memory contents may be desirable.


Representative embodiments of the present invention may be employed during updates using wired or wireless communication links such as, for example, a public switched telephone network, a wired local or wide area network, an intranet, the Internet, and wireless cellular, paging, local area, personal area, and short range networks such as those referred to as WiFi, IEEE 802.11a/b/g/n compatible networks, the short range wireless technology known as Bluetooth, and similar types of communication links.


In a representative embodiment of the present invention, information for updating memory in an electronic device such as those described above is communicated using, for example, an update package comprising a set of instructions executable by firmware and/or software in the electronic device to transform or convert an existing version of software, firmware, and/or data in the electronic device into a new or updated version of the software, firmware, and/or data. Such an update package may also contain metadata related to the update.


The following definitions, acronyms and abbreviations are use in this document:















API
Application Programming Interface


CSR
Customer Service Representative


DA
Delivery Agent


DAO
Data Access Objects


DM
Device Management


DM Tree
Device management tree


EJB
Enterprise Java Beans


IMEI
International Mobile Equipment Identity


JDBC
Java Database Connectivity


JDO
Java Data Objects


JNDI
Java Naming and Directory Interface


MMV
Refers to a combination of values that define a device make,



model and (firmware) version


MO
Management Object


MOI
Management Object Identifier


MSISDN
Mobile Station Integrated Services Digital Network


NVM
Non-Volatile Memory


OMA
Open Mobile Alliance


RAM
Random Access Memory


RMI
Remote Method Invocation


SMS
Short Message Service


SMSC
Short Message Service Center


UI
User Interface


URI
Universal Resource Identifier


URL
Universal Resource Locator


WDP
Wireless Datagram Protocol


WSP
Wireless Session Protocol


XML
Extensible Markup Language










FIG. 1 is a perspective block diagram of an exemplary network 105 that supports remote update of non-volatile memory of an electronic device 107 such as, for example, a mobile handset or personal digital assistant, in accordance with a representative embodiment of the present invention. The electronic device 107 may, for example, comprise a cellular phone, a personal digital assistant (PDA), a pager, a handheld personal computer (PC), and/or the like. The electronic device 107 may support a number of features and/or applications that may contain software/firmware errors that need to be corrected, or that may provide additional features/benefits by updating the software/firmware. The electronic device 107 may itself be used to request updates to software/firmware via a customer care server 157 either directly, using a browser in the electronic device 107, or via a customer service representative (CSR). A CSR may, for example, provide service to the customer using the electronic device 107 by retrieving, as necessary, one or more diagnostic management objects (MOs) stored in memory of the electronic device 107, and by transmitting to the electronic device 107 from a remote server, update information in the form of, for example, one or more update packages. Such update packages may, for example, comprise instructions to code in the electronic device 107 to convert or transform a first version of software/firmware to a second version of software/firmware, in the electronic device 107, in addition to metadata, and checksum information.


As shown in the illustration of FIG. 1, the network 105 in one representative embodiment of the present invention comprises the electronic device 107, a device management (DM) server 109, a provisioning server 129, a customer care server 157, and a download server 151. Although not illustrated in FIG. 1, a representative embodiment of the present invention may also comprise other application servers such as, for example, a diagnostics server, and a self-care website/portal. The electronic device 107 of FIG. 1 is able to communicate with the DM server 109, the download server 151, the customer care server 157, and the provisioning server 129 via communication paths 143, 153, 155 and 145, respectively. Although the communication paths 143, 153, 155, 145 are illustrated as being separate paths between the electronic device 107 and their respective servers, this is only for purpose of illustration, and is not a specific limitation of a representative embodiment of the present invention. The communication paths 143, 153, 155, 145 may be combined into one or more paths that may comprise wired or wireless communication paths such as, for example, a local area network, a public switched telephone network, a wireless personal, local or wide area network, and a cellular or paging network, to name only a few possibilities.


As illustrated in FIG. 1, an electronic device in accordance with one representative embodiment of the present invention comprises a processor 166, random access memory (RAM) 165, and non-volatile memory (NVM) 111. The NVM 111 may comprise, for example, NAND or NOR type flash memory or other suitable type of NVM. The NVM 111 may contain a number of software/firmware code components of the electronic device 107 including, for example, application software 127, a device management (DM) client 163, an update package/update package array 116, a provisioning client 123, a hand-off module 121, an operating system (OS) 119, firmware 117, and one or more update agent(s) 115. Additional software/firmware code components may also be present in the RAM 165 and NVM 111. The term “code” may be used herein to represent one or more of executable instructions, operand data, configuration parameters, and other information stored in memory of the electronic device 107, and the term “update package catalog” may be used interchangeably with the term “update package array” to refer to received update information that comprises multiple update packages. The electronic device 107 may also comprise interface circuitry (not shown) to enable operable connection of a subscriber identity module (SIM) card 167, that may be employed in accordance with aspects of the present invention described later in this document.


In a representative embodiment of the present invention, an electronic device such as, for example, the electronic device 107 of FIG. 1 may employ an update package (e.g., the update package/update package array 116) delivered by a remote server such as, for example, the download server 151, to update firmware/software, data and configuration information in memory of the electronic device 107. Such an update package may comprise update information including, for example, metadata describing an update, checksums, and instructions executable by one or more update agents such as, for example, the update agent 115 of FIG. 1. The update agent 115 may process a set of executable instructions, which may be used as a compact means to encode differences between existing/first and updated/second versions of firmware, software, data, and configuration parameters for the electronic device 107. The executable instructions may be assembled into update packages to be transmitted to an electronic device for use in updating memory of the electronic device. Update agent(s) in the electronic device may process respective portions of the executable instructions from an update package to convert/transform corresponding portions of an existing/first version of code in memory of the electronic device 107 to portions of an updated/second version of code. The electronic device 107 may also receive provisioning information from, for example, the device management server 109, the customer care server 157, and/or the provisioning server 129 to fix configuration problems or reconfigure software and hardware.


In addition to those elements described above, the electronic device 107 may comprise a downloaded diagnostic client (not shown) that facilitates remote diagnosis, and a traps client (not shown) that facilitates the setting of traps and retrieving of collected information. The DM client 163 of the electronic device 107 may interact with the DM server 109, the diagnostic client, and the traps client, to receive DM commands from the DM server 109 and to implement them in the electronic device 107. The download server 151 may be employed to download firmware and software updates (e.g., update information in the form of, for example, update packages). The download server 151 may also be used to download new firmware/software such as, for example, the diagnostics client mentioned above, which may then be installed and activated in the electronic device 107.


As described briefly above, an electronic device in accordance with a representative embodiment of the present invention (e.g., electronic device 107) may receive update information (e.g., an update package) for processing by one or more update agents (e.g., update agent 115) to convert/transform software (e.g., application software 127) and/or firmware (e.g., firmware 117) to produce updated software/firmware in the electronic device. In some representative embodiments of the present invention, the update agent 115 may comprise multiple update agents, each of the update agents appropriately arranged to process different types of update information for updating different types/formats of software, firmware, user data, and configuration parameters in the memory of the electronic device 107. Each of the update packages received may be processed in the electronic device by an appropriate one of the update agent(s) 115 to update an associated type of information in the memory of the electronic device 107.


In one representative embodiment of the present invention, an Open Mobile Alliance (OMA) device management (DM)-based applications server is composed of two parts, an OMA DM-based application, and an OMA DM server such as, for example, the DM server 109 shown in FIG. 1. An OMA DM-based application is mainly focused on business processes, logic, and data. An OMA DM server, however, is mainly focused on the functionality required to support the OMA DM protocol by which the OMA DM-based application manipulates OMA DM-capable electronic devices such as, for example, the electronic device 107 of FIG. 1.


An OMA DM common framework in accordance with a representative embodiment of the present invention is arranged to support a set of application programming interfaces (APIs) and call back services, so that OMA DM-based applications may be easily and effectively integrated with an OMA DM server, such as the DM server 109 of FIG. 1, for example. One example of an OMA DM-based application server is the Mobile Variance Platform (MVP) Server developed by Hewlett-Packard Company. An OMA DM-based common framework in accordance with a representative embodiment of the present invention supports a set of APIs and call back services that permit the integration of multiple applications including, for example, a customer care/service application, and other servers with an OMA DM-based server such as the DM server 109 of FIG. 1


A customer care server such as, for example, the customer care server 157 of FIG. 1, may provide an API for issuing OMA DM commands and values to OMA DM capable electronic devices, including the ability to explore the device management tree (DM tree) on the electronic device. Bootstrapping the electronic device may be supported, along with the ability to configure one or more bootstrap messages. A customer care server such as the customer care server 157 may support a simple graphical user interface (UI) to allow OMA DM compatible electronic devices to be bootstrapped, and for commands to be issued to allow the electronic device to be explored and configured via a browser such as, for example, an Internet browser.


In a representative embodiment of the present invention, the code to support OMA DM-based device management for customer care activities of a customer care server (e.g., customer care server 157 of FIG. 1) may be shared with an OMA DM-based application server. By employing a representative embodiment of the present invention, a system ensure that an application server and a customer care server produce identical behavior in their interactions with electronic devices under OMA DM-based device management.


An OMA DM common framework in accordance with one representative embodiment of the present invention provides for the real-time sharing of data by multiple OMA DM Based applications, and may include sharing of the data from a DM tree in an electronic device such as the electronic device 107 of FIG. 1. In a representative embodiment of the present invention, each OMA DM-based application may access the data required to create OMA DM commands for the electronic device.


Currently, each manufacturer of an electronic devices such as the electronic device 107 of FIG. 1 may place electronic device setting parameters (e.g., GPRS setting) in different locations within the DM tree of an electronic device they manufacture. This may cause the node uniform resource identifier (URI) of a given parameter to be different for each electronic device make, model, and version (MMV). Some representative embodiments of the present invention provide a data store to be used in managing DM tree information. Such a data store may hold single device information such as the international mobile equipment identity (IMEI) of the electronic device, a password, and a nonce, to name only a few examples. Some data may be customized for each OMA DM-based application including, for example, the type of authentication scheme to be used, and bootstrap content. Some representative embodiments of the present invention allow a user of a customer care system to modify the bootstrap content, to specify the security type and profile type for devices. The security type may, for example, be one or both of “Networkpin” and “Userpin”. Some representative embodiments of the present invention permit notification and bootstrap functionality to be shared by OMA DM-based customer care and application servers such as the customer care server 157 and DM server 109 of FIG. 1, for example. Such an arrangement may permit a user of the customer care server to specify, for example, a short message service center (SMSC) to be used for the sending of notification and bootstrap messages. Some representative embodiments of the present invention provide this functionality through a set of APIs and call back services that support the sending of DM commands and receipt of results.


An example demonstrating how a customer care server may profile a DM tree in an electronic device is discussed below.



FIG. 2 shows a block diagram of an exemplary OMA DM-based device management architecture 200 employing an OMA DM common framework 210 supporting interactions between OMA DM-based applications servers and an electronic device such as the electronic device 107 of FIG. 1, in accordance with a representative embodiment of the present invention. The illustration of FIG. 2 shows two OMA DM-based applications accessing an OMA DM common framework in accordance with a representative embodiment of the present invention. Device management application 256 accesses device capability information, device instance information, and short message service (SMS) configuration information using the application programming interface and call back services provided by the OMA DM common framework. A DM server 209 and WAP push module 208 access the device capability information, device instance information, and short message service (SMS) configuration during interactions with electronic devices such as, for example, the electronic device 107 of FIG. 1.



FIG. 3 shows an exemplary message exchange between an OMA DM-based application and an OMA DM common framework during a regular device management session, in accordance with a representative embodiment of the present invention. During a setup phase, the OMA DM-based application first customizes an SMS universal resource locator (URL) and pattern information. The OMA DM-based application then gets node universal resource identifier information, using device management (DM) tree data. The OMA DM-based application then employs one of the OMA DM common framework API functions, executeCommand, and passes a CommandRequest object to indicate the SyncML DM command to be issued to the DM client in the electronic device (e.g., electronic device 107 of FIG. 1) involved in the DM session. Additional details of the executeCommand API call and the CommandRequest object are set forth later in this document.


During the management phase, the OMA DM common framework first employs the setCommandResults call back service to communicate the CommandResponse object to the OMA DM based application. In the illustration, this communication is received by functional element SCDMReceiver of the OMA DM based application. As shown in FIG. 3, SCDMReceiver then passes the CommandResponse object to the OMA DM-based application. The OMA DM-based application may then access the CommandRequest object.



FIG. 4 illustrates an exemplary exchange of messages or control between an OMA DM-based application and an OMA DM common framework during a bootstrap session, in accordance with a representative embodiment of the present invention. During a setup phase, the OMA DM-based application first customizes SMS URL and pattern information. The OMA DM-based application may then customize bootstrap content, and may then transmit a bootstrap to the electronic device (e.g., electronic device 107 of FIG. 1).


During a management phase, the OMA DM common framework employs a setBoostrapResult call back service to pass results of the bootstrap activity to the OMA DM-based application. In the illustration, this communication is received by functional element SCDMReceiver of the OMA DM based application. As shown in FIG. 4, SCDMReceiver then passes device information (devinfo), device identification (devID) and the MSISDN of the electronic device (MSISDN) to the OMA DM-based application. The OMA DM-based application may then access the CommandRequest object.


As shown in FIG. 2, a representative embodiment of the present invention supports multiple OMA DM-based applications at runtime. There are two approaches that may be employed to achieve this, the use of Webservices, and the use of Java Remote Method Invocation (RMI). By using Webservices, an OMA DM-based application may implement the call back service API defined in this document and provide the following information to the OMA DM common framework.
















Name
Description









Call back service URL
This is the URL of jndi server. By




binding this URL with a call back




service, the OMA DM common




framework may communicate with an




OMA DM-based application.










When using Java Remote Method Invocation, an OMA DM-based application may implement the call back services remote client API defined in this document and provide the following information to the OMA DM common framework.













Name
Description







Context.PROVIDER_URL
This is the URL of a jndi



server.


Context.INITIAL_CONTEXT_FACTORY
This is the service provider



definition.


Call back service jndi name
The OMA DM common



framework may use this



name to look up the remote



client API.









A representative embodiment of the present invention defines a set of objects for communication between an OMA DM-based application (e.g., device management application 256 and customer care application 257 of FIG. 2) and an OMA DM common framework. An API in accordance with a representative embodiment of the present invention is clean, easy to understand and at the same time extensible. Six objects (CommandRequest, CommandResponse, MMV, DeviceCapability, DeviceInstance, and SMSCConfiguration) are defined below that are representative of those that may be used for communication between an OMA DM-based application and the OMA DM common framework, in accordance with a representative embodiment of the present invention. Although five objects are employed in the examples of the present application, a different number or set of objects may be employed in a representative embodiment of the present invention.


Some representative embodiments of the present invention employ an API object named “CommandRequest”, which is used by an OMA DM-based application to indicate to the OMA DM common framework the SyncML DM command to issue to a DM client (e.g., 163 of FIG. 1) and to identify associated attributes. Table 1, below, shows an exemplary structure of a CommandRequest object in accordance with a representative embodiment of the present invention.











TABLE 1





Attribute
Type
Description







command
String
This attribute may be used to




define an actual OMA DM




command to be issued. Valid




values are: Get, Replace,




Exec, Copy, Add, Delete,




Alert, Sequence, and Atomic.


targetURI
String
This attribute may be used to




define the URI of the node on




which the command is




issued, e.g., command=”Get”




targetURI=’./DevDetail’


sourceURI
String
Applicable when the




command is “Copy”.


value[ ]
Object
This attribute may be used to




define the data for the




command. e.g., if the




command is “Replace”, this




attribute defines the value to




set in that node.




The value array may contain




a single element, but in some




cases (e.g., the Alert




command) it may contain




multiple values For example,




for Alert 1103:




value[0] = “1103”




value[1] =




“MINDT=10&MAXDT=20&DR=1”




Value[3] = “Select a color”




Value[4] = “Red”




Value[5] = “Green”




Value[6] = “Blue”


Format
String
This attribute may be used to




define the format of the




data.(e.g., bin, chr, b64, bool,




int, xml, node)


optIn
Int
This attribute may be used to




define the optIn parameter




when sending the OMA DM




notification.




Its valid values may comprise




integers 0 to 3, which




correspond to the <ui-mode>




field in the DM SMS




notification message. See




Section 6.2.7 in OMA-




SyncML-DMNotification-




V1_1_2-20031205-A.pdf


commandRequests
CommandRequest
This attribute may be used to



[ ]
wrap more commands within




this command. For example:




Used for Atomic and




Sequence.









Some representative embodiments of the present invention employ an API object named “CommandResponse”, which is used to report back the results or the status of the command back to the OMA DM Based application. Table 2, below, shows an exemplary structure of a CommandResponse object in accordance with a representative embodiment of the present invention.













TABLE 2







Attribute
Type
Description









Command
String
This attribute may be used to





define the command from





which these results come.



statusCode
String
This attribute may be used to





define the status code





returned by the DM client.





Example: In case of Alert





1226, the status Code may





be: 1226



uri[ ]
String
This attribute may be used to





define the node URI for the





command. For example: if





the command was Get on





“./DevDetail”, this uri attribute





will be: “./DevDetail”





If the Get was issued on a





tree node, the results may be





of all leaf nodes. In that





case, the array may have





more than one element.



value[ ]
String
This attribute may be used to





define the data of the





resulting command. For





example: if the command is a





“Get” on “./DevDetail”, this





attribute may be the value of





that sub-tree in extensible





markup language (XML)





form.





Example: in Case of Alert





1226





Value[0] = Result code





Value[1] = Alert type





Value[2]= correlator



format[ ]
String
This attribute may be used to





define the type of returned





data.










Some representative embodiments of the present invention employ an API object named “MMV”, that is used by an OMA DM-based application and OMA DM common framework to represent the make, model and version of an electronic device (e.g., electronic device 107 of FIG. 1). Table 3, below, shows an exemplary structure of a MMV object in accordance with a representative embodiment of the present invention.













TABLE 3









make
String
This attribute may be used to





indicate the manufacturer of





the electronic device.



model
String
This attribute may be used to





indicate the model of the





electronic device.



version
String
This attribute may be used to





indicate the (firmware) version





of the electronic device.










Some representative embodiments of the present invention employ an API object named “DeviceCapability”, that is used by an OMA DM-based application and OMA DM common framework to customize the data related to device. (e.g., electronic device 107 of FIG. 1). Table 4, below, shows an exemplary structure of a DeviceCapability object in accordance with a representative embodiment of the present invention.











TABLE 4





Attribute
Type
Description







name
String
This attribute may be used to




define the name of the




device capability.


description
String
This attribute may be used to




provide the description of the




DeviceCapability.


mmv
MMV
This attribute may be used to




indicate the make, model and




version.


DeviceParameter[ ]
deviceParameters
This attribute may be used to




define the deviceParameters




representing:




DMTree data




Authentication




scheme




Bootstrap profile




type




Bootstrap sec type


bootstrapTemplate
byte[ ]
This attribute may be used to




define the content of the




bootstrap.









Some representative embodiments of the present invention employ an API object named “DeviceInstance”, that is used by an OMA DM-based application and OMA DM common framework to represent the data related to a single device. (e.g., electronic device 107 of FIG. 1). Table 5, below, shows an exemplary structure of a DeviceInstance object in accordance with a representative embodiment of the present invention.











TABLE 5





Attribute
Type
Description







msisdn
String
This attribute may be used




to define a phone number




of the electronic device.


deviceId
String
This attribute may be used




to define an IMEI for the




electronic device.


description
String
This attribute may be used




to describe the electronic




device.


status
String
This attribute may be used




to indicate the current




status of the electronic




device. Valid values may




be:




UNKNOWN—Cannot




determine the status




UNASSIGNED—The




electronic device is not yet




associated with a




subscriber.




ASSIGNED—An electronic




device associated with a




subscriber.




QUARANTINED—No




actions are to be performed




for this electronic device.




PROVISIONED—The




electronic device has been




provisioned.




NEEDS_UPDATE—The




electronic device is




assigned to a subscriber,




but an update is to be




done later.


DeviceCapability
deviceCapability
This attribute may be used




to define the




DeviceCapability assigned




to this device


lastProvisionDate
Date
This attribute may be used




to indicate the last date




the electronic device was




provisioned.


clientUserName
String
This attribute may be used




to define the client user




name used by OMA DM




common framework to




authenticate the electronic




device.


clientPassword
String
This attribute may be used




to indicate the client




password used by OMA




DM common framework to




authenticate the electronic




device.


clientNonce
String
This attribute may be used




to define the client nonce




used by OMA DM common




framework to authenticate




the electronic device in case




authentication type is MD5




and HMAC.


serverNonce
String
This attribute may be used




by the OMA DM common




framework to generate




credential sent to the




electronic device in case




the authentication type is




MD5 or HMAC.


serverPassword
String
This attribute may be used




by the OMA DM common




framework to generate




credential sent to the




electronic device in case




authentication type is MD5




or HMAC.


type
String
This attribute may be used




to indicate the electronic




device type (e.g., Home,




Work, etc.)


createdBy
String
This attribute may be used




to indicate the user who




uploaded this electronic




device instance.


lastModifiedBy
String
This attribute may be used




to indicate the user who last




modified the device




instance for the electronic




device.


createdTimeStamp
Date
This attribute may be used




to indicate the time when




this device instance was




uploaded.


lastModifiedTimeStamp
Date
This attribute may be used




to define the time when this




device instance was last




modified.









employ an API object named “SMSCConfiguration”, that may used by an OMA DM-based application and OMA DM common framework to represent the data related to the configuration of a short message service center. Table 6, below, shows an exemplary structure of a SMSCConfiguration object in accordance with a representative embodiment of the present invention.













TABLE 6







Attribute
Type
Description









smsHostAddress
String
This attribute may be used to





indicate the manufacturer of





the electronic device.



smsPort
String
This attribute may be used to





indicate the model of the





electronic device.



smsPassword
String
This attribute may be used





top indicate the (firmware)





version of the electronic





device.



smsUserName
String
This attribute may be used to





indicate the user name of the





SMS.



Description
String



smscName
String
This attribute may be used to





indicate the SMSC name.



messagesPerMinute
int
This attribute may be used to





indicate the number of





messages to send per





minute.



createdBy
String



lastModifiedBy
String



dateCreated
Date



smppSystemType
String



smppDTON
String



smppDNPI
String



smppRange
String



smppOADDR
String



smppOTON
String



smppONPI
String



smppServiceType
String



kannelUri
String
This attribute may be used to





indicate the URI of the





kannel.



kannelHdrLength
String
This attribute may be used to





indicate the hdr length of the





kannel.



protocol
String
This attribute may be used to





indicate the protocol used to





send SMS.





kannel





ucp





smpp



isDefault
boolean










A representative embodiment of the present invention provides a application programming interface (API) that permits an OMA DM-based application to send device management (DM) commands to an electronic device such as, for example, the electronic device 107 of FIG. 1. Such an API may provide a number of API functions and call back services to support communication between an OMA DM-based application and an OMA DM server such as, for example, the DM server 109 of FIG. 1.


Some representative embodiments of the present invention provide a API function to execute a command on a single electronic device. A function prototype for such a function may appear as follows:

    • public void executeCommand (String session, Command Request[ ]cmd, String msisdn, String expectedDeviceId, String authScheme)


In a representative embodiment of the present invention, this function may be an asynchronous call. The DM server may use the “cmd” parameter to determine which OMA DM command to issue to the electronic device. The expectedDeviceId (e.g., IMEI) and authScheme parameters may be passed to save calls by a DM server such as DM server 109 of FIG. 1 to an OMA DM-based application server. If the DM client in the electronic device (e.g., electronic device 107 of FIG. 1) responds with a deviceId (e.g., IMEI) which is different than the expectedDeviceId, the DM server may perform a call to the OMA DM-based application server using a call back service such as “processDevice( )”, described later in this document. If the value returned by the OMA DM-based application server is “true”, the OMA DM server may make a call to a function that may be named “getAuthScheme( )”, to determine the identity of an XML file (e.g., DBOfficer) to use for authentication. If, however, the DM Client returns a deviceId that is the same as the expectedDeviceId, then the DM server may not make a call to “processDevice( )” and may use the authorization mechanism indicated by the authScheme parameter sent in the call to “executeCommand”. The results of this call may be conveyed back to the OMA DM-based application by a call back API such as, for example, the “setCommandResults” call back service API, described later in this document. In some representative embodiments of the present invention, when the DM common framework is unable to find call back server URL information, the OMA DM common framework may treat a designated OMA DM-based application server as the call back service server.


Table 7, shown below, illustrates an exemplary set of parameters that may be used with the “executeCommand” API call.












TABLE 7







Name
Description









session
This parameter may be used to




define a string used by a OMA DM-




based application as an internal




session identifier.



cmd
This parameter may be used to




define the command object




containing the details of the OMA DM




command to be executed. The array




length may be 1, but in some cases




(e.g., “Sequence” or when a




“Replace” followed by “Exec” is




performed), there may be multiple




commands in the array.



msisdn
This parameter may be used to




define the phone number of the




electronic device on which to issue




the command.



expectedDeviceId
This parameter may be used to




define the expected deviceId to




respond.



authScheme
This parameter may be used to




define the string that contains a full




path to the XML file having the




authentication class/scheme to use.










Some representative embodiments of the present invention provide an API function to execute a command on multiple electronic devices for one API call. A function prototype for such a function may appear as follows:

    • public void executeCommand (String session, CommandRequest[ ][ ] cmd, String msisdn[ ], String expectedDeviceId[ ], String authScheme[ ])


In a representative embodiment of the present invention, this function may be an asynchronous call. The DM server may use the “cmd” parameter array to determine which OMA DM command to issue to each electronic device. The expectedDeviceId (IMEI) and authScheme parameter arrays may be passed to save calls by a DM server such as DM server 109 of FIG. 1 to an OMA DM-based application server. If the DM client in any of the identified electronic devices (e.g., electronic device 107 of FIG. 1) responds with a deviceId (IMEI) which is different than the expectedDeviceId, the DM server may perform a call to the OMA DM-based application server using a call back service such as “processDevice( )”, described later in this document. If the value returned by the OMA DM-based application server is “true”, the OMA DM server may make a call to a function that may be named “getAuthScheme( )”, to determine the identity of an XML file (e.g., DBOfficer) to use for authentication of that electronic device. If, however, the DM Client returns a deviceId that is the same as the expectedDeviceId, then the DM server may not make a call to “processDevice( )” and may use the authorization mechanism indicated by the authScheme parameter for that electronic device, as sent in the call to “executeCommand”. The results of this call may be conveyed back to the OMA DM-based application by a call back API such as, for example, the “setCommandResults” call back service API, described later in this document. In some representative embodiments of the present invention, when the DM common framework is unable to find call back server URL information, the OMA DM common framework may treat a designated OMA DM-based application server as the call back service server.


Table 8, shown below, illustrates an exemplary set of parameters that may be used with the “executeCommand” API call.












TABLE 8







Name
Description









Session
This parameter may be used to




define a string used by a OMA DM-




based application as an internal




session identifier.



cmd
This parameter may be used to




define the command object




containing the details of the OMA DM




command to be executed. The array




length may be 1, but in some cases




(e.g., “Sequence” or when a




“Replace” followed by “Exec” is




performed), there may be multiple




commands in the array.



msisdn[ ]
This parameter may be used to




define all of the phone numbers of the




electronic devices on which to issue




the command.



expectedDeviceId[ ]
This parameter may be used to




define the expected deviceIds




corresponding to the MSISDNs to




respond.



authScheme[ ]
This parameter may be used to




define the string that contains a full




path to the XML file having the




authentication class/scheme to use.










Some representative embodiments of the present invention provide an alternate API function to execute a command on a single electronic device. A function prototype for such a function may appear as follows:

    • public void executeCommand (HashMap session, CommandRequest[ ]cmd, String msisdn, String expectedDeviceId, String authScheme)


In a representative embodiment of the present invention, this function may be an asynchronous call. The DM server may use the “cmd” parameter to determine which OMA DM command to issue to the electronic device. The expectedDeviceId (IMEI) and authScheme parameters may be passed to save calls by a DM server such as DM server 109 of FIG. 1 to an OMA DM-based application server. If the DM client in the electronic device (e.g., electronic device 107 of FIG. 1) responds with a deviceId (IMEI) which is different than the expectedDeviceId, the DM server may perform a call to the OMA DM-based application server using a call back service such as “processDevice( )”, described later in this document. If the value returned by the OMA DM-based application server is “true”, the OMA DM server may make a call to a function that may be named “getAuthScheme( )”, to determine the identity of an XML file (e.g., DBOfficer) to use for authentication. If, however, the DM Client returns a deviceId that is the same as the expectedDeviceId, then the DM server may not make a call to “processDevice( )” and may use the authorization mechanism indicated by the authScheme parameter sent in the call to “executeCommand”. The results of this call may be conveyed back to the OMA DM-based application by a call back API such as, for example, the “setCommandResults” call back service API, described later in this document. In some representative embodiments of the present invention, when the DM common framework is unable to find call back server URL information, the OMA DM common framework may treat a designated OMA DM-based application server as the call back service server. This PI function may be employed by some OMA DM-based applications, and the DM common framework may send back information by calling a call back service defined in the “session” parameter.


Table 9, shown below, illustrates an exemplary set of parameters that may be used with the “executeCommand” API call.










TABLE 9





Name
Description







session
This parameter may be used to define



a HashMap object that contains the



following elements:



Protocol—This value may be used to



indicate the protocol used by call back



service. The value may be RMI or



Webservice.



CallBackUrl—In case of Webservice,



this value may be the web service



URL.



Context.PROVIDER_URL—In case of



RMI, this value may be the jndi server



address.



Context.INITIAL_CONTEXT_FACTORY—In



case of RMI, this value may be



the service provider definition.



jndiName—In case of RMI, this value



may be the jndi name of the Enterprise



Java Bean (EJB) that implements the



call back service.



sessionId—This value may be a DM



based application's internal session



identifier.



sendMsg—This value may be a flag to



indicate whether the DM-based



application wants to send the



notification and bootstrap itself. The



value may be “T” or “F”, where “T” may



mean the DM application wants to



send notification and bootstrap



message itself, and “F” may mean the



DM application wants the DM common



framework to send notification and



bootstrap message.


cmd
This parameter may be used to define



the command object containing the



details of the OMA DM command to be



executed. The array length may be 1,



but in some cases (e.g., “Sequence” or



when a “Replace” followed by “Exec” is



performed), there may be multiple



commands in the array.


msisdn
This parameter may be used to define



the phone number of the electronic



device on which to issue the



command.


expectedDeviceId
This parameter may be used to define



the expected deviceId to respond.


authScheme
This parameter may be used to define



the string that contains a full path to



the XML file having the authentication



class/scheme to use.









Some representative embodiments of the present invention provide an alternate API function to execute a command on multiple electronic devices for one API call. A function prototype for such a function may appear as follows:

    • public void executeCommand (HashMap session, Command Request[ ][ ] crud, String msisdn[ ], String expectedDeviceId[ ], String authScheme[ ])


In a representative embodiment of the present invention, this function may be an asynchronous call. The DM server may use the “cmd” parameter array to determine which OMA DM command to issue to each electronic device. The expectedDeviceId (IMEI) and authScheme parameter arrays may be passed to save calls by a DM server such as DM server 109 of FIG. 1 to an OMA DM-based application server. If the DM client in any of the identified electronic devices (e.g., electronic device 107 of FIG. 1) responds with a deviceId (IMEI) which is different than the expectedDeviceId, the DM server may perform a call to the OMA DM-based application server using a call back service such as “processDevice( )”, described later in this document. If the value returned by the OMA DM-based application server is “true”, the OMA DM server may make a call to a function that may be named “getAuthScheme( )”, to determine the identity of an XML file (e.g., DBOfficer) to use for authentication of that electronic device. If, however, the DM Client returns a deviceId that is the same as the expectedDeviceId, then the DM server may not make a call to “processDevice( )” and may use the authorization mechanism indicated by the authScheme parameter for that electronic device, as sent in the call to “executeCommand”. The results of this call may be conveyed back to the OMA DM-based application by a call back API such as, for example, the “setCommandResults” call back service API, described later in this document. In some representative embodiments of the present invention, when the DM common framework is unable to find call back server URL information, the OMA DM common framework may treat a designated OMA DM-based application server as the call back service server.


Table 10, shown below, illustrates an exemplary set of parameters that may be used with the “executeCommand” API call.










TABLE 10





Name
Description







session
This parameter may be used to define



a HashMap object that contains the



following elements:



Protocol—This value may be used to



indicate the protocol used by call back



service. The value may be RMI or



Webservice.



CallBackUrl—In case of Webservice,



this value may be the web service



URL.



Context.PROVIDER_URL—In case of



RMI, this value may be the jndi server



address.



Context.INITIAL_CONTEXT_FACTORY—In



case of RMI, this value may be



the service provider definition.



jndiName—In case of RMI, this value



may be the jndi name of the Enterprise



Java Bean (EJB) that implements the



call back service.



sessionId—This value may be a DM



based application's internal session



identifier.



sendMsg—This value may be a flag to



indicate whether the DM-based



application wants to send the



notification and bootstrap itself. The



value may be “T” or “F”, where “T” may



mean the DM application wants to



send notification and bootstrap



message itself, and “F” may mean the



DM application wants the DM common



framework to send notification and



bootstrap message.


cmd
This parameter may be used to define



the command object containing the



details of the OMA DM command to be



executed. The array length may be 1,



but in some cases (e.g., “Sequence” or



when a “Replace” followed by “Exec” is



performed), there may be multiple



commands in the array.


Msisdn[ ]
This parameter may be used to define



the phone number of the electronic



device on which to issue the



command.


expectedDeviceId[ ]
This parameter may be used to define



the expected deviceId to respond.


authScheme[ ]
This parameter may be used to define



the string that contains a full path to



the XML file having the authentication



class/scheme to use.









Some representative embodiments of the present invention provide an API function to cancel a device management command on an electronic device. A function prototype for such a function may appear as follows:

    • public String cancelCommand (String session, String msisdn)


In a representative embodiment of the present invention, this function may be a synchronous call. The DM server may cancel or delete any pending DM command for the electronic device with the specified phone number. Such an API call may return a 0 if a command is successfully cancelled, and may return −1 if an error occurs while deleting a DM command.


Some representative embodiments of the present invention provide an alternate API function to cancel a device management command on an electronic device. A function prototype for such a function may appear as follows:

    • public String cancelCommand (HashMap session, String msisdn)


In a representative embodiment of the present invention, this function may be a synchronous call. The DM server may cancel or delete any pending DM command for the electronic device with the specified phone number. Such an API call may return a 0 if a command is successfully cancelled, and may return −1 if an error occurs while deleting a DM command.


Some representative embodiments of the present invention provide an API function to retry a device management command on an electronic device. A function prototype for such a function may appear as follows:

    • public String retryCommand (String session, String msisdn)


In a representative embodiment of the present invention, this function may be a synchronous call. The DM server may retry the last DM command that was issued to the electronic device. The DM server may first cancel and then re-issue the command. Such an API call may return a 0 if a command retry is successful, and may return −1 if an error occurs while retrying a DM command.


Some representative embodiments of the present invention provide an alternate API function to retry a device management command on an electronic device. A function prototype for such a function may appear as follows:

    • public String retryCommand (HashMap session, String msisdn)


In a representative embodiment of the present invention, this function may be a synchronous call. The DM server may retry the last command that was issued to the electronic device. The DM server may first cancel and then re-issue the command. Such an API call may return a 0 if a command retry is successful, and may return −1 if an error occurs while retrying a DM command.


An OMA DM-based application in accordance with some representative embodiments of the present invention provides a call back service function to report the results of a device management command on an electronic device. A function prototype for such a function may appear as follows:

    • public CommandRequest[ ] setCommandResults (String session, String devInfo, CommandResponse[ ]response, String msisdn)


In a representative embodiment of the present invention, a DM server (e.g., DM server 109 of FIG. 1) may use such a function to report back the results of a DM command including the status and return value(s). This function may return CommandRequest[ ], it there are more commands to be executed, or Null if no additional commands are to be executed. If the latter case, the DM session may be ended.


Table 11, shown below, illustrates an exemplary set of parameters that may be used with the “setCommandResults” API call.












TABLE 11







Name
Description









session
This parameter may be used by an




OMA DB-based application as an




internal session identifier.



devInfo
This parameter may be an XML string




containing a “./DevInfo” sub-tree.



response
This parameter may be the results of




the CommandRequest that was sent.



msisdn
This parameter may be the phone




number of the electronic device which




responded.










Some representative embodiments of the present invention provide a call back service function to be used by a DM server such as the DM server 109 of FIG. 1 when the device ID received from the electronic device is not the expected device ID. A function prototype for such a function may appear as follows:

    • public boolean processDevice (String session, String msisdn, String devInfo)


In a representative embodiment of the present invention, a DM server (e.g., DM server 109 of FIG. 1) may use such a function when the device ID returned by the electronic device does not match the IMEI sent in the initial call. The OMA DM-based application may check a policy about what to do with the electronic device and may return a boolean flag indicating that the DM server (e.g., DM server 109 of FIG. 1) may proceed with the DM session or abort it. A return value of “true” may indicate that the DM session may proceed, while a value of “false” may indicate that a DM session should be aborted.


Table 12, shown below, illustrates an exemplary set of parameters that may be used with the “processDevice” call back service call.












TABLE 12







Name
Description









session
This parameter may be used by an




OMA DB-based application as an




internal session identifier.



devInfo
This parameter may be an XML string




containing a “./DevInfo” sub-tree.



msisdn
This parameter may be the phone




number of the electronic device which




responded.










Some representative embodiments of the present invention provide a call back service function to be used by a DM server such as the DM server 109 of FIG. 1 to determine an appropriate authentication scheme when the received device ID of the responding electronic device is not the device ID expected. A function prototype for such a function may appear as follows:

    • public String getAuthScheme (String session, String devInfo)


In a representative embodiment of the present invention, a DM server (e.g., DM server 109 of FIG. 1) may use such a function when the device ID returned by the electronic device does not match the IMEI sent in the initial call. The OMA DM-based application may return the full path to an XML file to be used to load the correct authentication class to be used to perform authentication. The return value may be the full path to the XML file containing the class to be loaded.


Table 13, shown below, illustrates an exemplary set of parameters that may be used with the “getAuthScheme” call back service call.












TABLE 13







Name
Description









session
This parameter may be a string




containing session information. The




DM server may have received this




session information during an initial




query call.



devInfo
This parameter may be an XML string




containing a “./DevInfo” sub-tree.










Some representative embodiments of the present invention provide an API function to be used by an OMA DM-based application to bootstrap a single electronic device. A function prototype for such a function may appear as follows:

    • public void Bootstrap (String session, Bootstrap Bootstrap)


In a representative embodiment of the present invention, this function may be an asynchronous call. A DM server (e.g., DM server 109 of FIG. 1) may create a Bootstrap message according to information provided in a Bootstrap object. Calculated credentials may be stored in a DEVICE_INSTANCE table organized in rows by device ID. This table may be updated for the appropriate device ID. In some representative embodiments of the present invention, an electronic device (e.g., electronic device 107 of FIG. 1) may send a defined package of information after a successful Bootstrap. In other representative embodiments, such a package of information may not be sent. If the electronic device does send a package of information after a successful bootstrap, the DM server may report back the Bootstrap using a call back service function such as setBootstrapResults, described later in this document.


Table 14, shown below, illustrates an exemplary set of parameters that may be used with the “Bootstrap” API function call.












TABLE 14







Name
Description









Session
This parameter may be a string




containing session information. The




DM server may have received this




session information during an initial




query call.



devInfo
This parameter may be an XML string




containing a “./DevInfo” sub-tree.










Some representative embodiments of the present invention provide an API function to be used by an OMA DM-based application such as the DM server 109 of FIG. 1 to bootstrap multiple electronic devices with a single API call. A function prototype for such a function may appear as follows:

    • public void Bootstrap (String session, Bootstrap Bootstrap[ ])


In a representative embodiment of the present invention, this function may be an asynchronous call. This is similar to the Bootstrap call shown above, with the exception that the Bootstrap parameter may be an array of objects for the electronic devices to be bootstrapped during the DM session.


Some representative embodiments of the present invention provide an API function to be used by an OMA DM-based application to create a bootstrap message without sending it to the intended electronic device recipient. A function prototype for such a function may appear as follows:

    • public String createBootstrapMessage (String session, Bootstrap Bootstrap[ ])


In a representative embodiment of the present invention, this function may be a synchronous call. This is similar to the Bootstrap call shown in the above two sections, but instead of sending the bootstrap message to the intended electronic device, the API function may immediately return the calculated text comprising a bootstrap XML message string. In addition, calculated credentials may be stored (e.g., in DEVICE_INSTANCE).


Some representative embodiments of the present invention provide an alternate API function to be used by an OMA DM-based application to create a bootstrap message without sending it to the intended electronic device recipient. A function prototype for such a function may appear as follows:

    • public String createBootstrapMessage (HashMap session, Bootstrap Bootstrap[ ])


In a representative embodiment of the present invention, this function may be a synchronous call. This call is similar to the Bootstrap call shown in the above section. Instead of sending the bootstrap message to the intended electronic device, this API function may immediately return the calculated text comprising a bootstrap XML message string. In addition, calculated credentials may be stored (e.g., in DEVICE_INSTANCE).


Some representative embodiments of the present invention provide an API function to be used by an OMA DM-based application to bootstrap an electronic device. A function prototype for such a function may appear as follows:

    • public void bootstrapDevice(HashMap session,String msisdn, String deviceId, MMV mmv, String pin)


In a representative embodiment of the present invention, an OMA DM-based application may use this API function to cause the OMA DM common framework to bootstrap an electronic device (e.g., the electronic device 107 of FIG. 1) according to the DeviceCapability information associated with the electronic device.


Table 15, shown below, illustrates an exemplary set of parameters that may be used with the “bootstrapDevice” API function call.












TABLE 15







Name
Description









Session
This parameter may be a HashMap




object that may be used by the OMA




DM common framework to call the




“processDevice” and




“setBootstrapResults” call back




services. This attribute may be used to




define a HashMap object that contains




the following elements:




Protocol—This value may be used to




indicate the protocol used by call back




service. The value may be RMI or




Webservice.




CallBackUrl—In case of Webservice,




this value may be the web service




URL.




Context.PROVIDER_URL—In case of




RMI, this value may be the jndi server




address.




Context.INITIAL_CONTEXT_FACTORY—In




case of RMI, this value may be




the service provider definition.




jndiName—In case of RMI, this value




may be the jndi name of the Enterprise




Java Bean (EJB) that implements the




call back service.




sessionId—This value may be a DM




based application's internal session




identifier.




sendMsg—This value may be a flag to




indicate whether the DM-based




application wants to send the




notification and bootstrap itself. The




value may be “T” or “F”, where “T” may




mean the DM application wants to




send notification and bootstrap




message itself, and “F” may mean the




DM application wants the DM common




framework to send notification and




bootstrap message.



msisdn
This parameter may be the phone




number of the electronic device.



deviceID
This parameter may be a device




identifier.



mmv
This parameter may be the make,




model and version of the electronic




device.



pin
This parameter may be the pin number




used to calculate the mac value.










Some representative embodiments of the present invention employ a call back service function to be used by a DM server such as the DM server 109 of FIG. 1 to notify an OMA DM-based application of the results of a bootstrap operation. A function prototype for such a function may appear as follows:

    • public void setBootstrapResults(String session,String deviceId, String status)


In a representative embodiment of the present invention, an OMA DM-based application may provide/expose such a call back service to permit a DM server (e.g., DM server 109 of FIG. 1) to notify the OMA DM-based application of the results of a bootstrap operation.


Table 16, shown below, illustrates an exemplary set of parameters that may be used with the “setBootstrapResults” call back service call.












TABLE 16







Name
Description









session
This parameter may be a string used




by an OMA DM-based application as




an internal session identifier.



deviceID
This parameter may be an identifier of




the electronic device.



status
This parameter may be the status of




the bootstrap operation.










Some representative embodiments of the present invention employ a call back service function to be used by a DM server such as the DM server 109 of FIG. 1 to cause the sending of a DM notification message to a single electronic device. A function prototype for such a function may appear as follows:

    • Public void sendMessage(String session, String msisdn, byte[ ] message)


In a representative embodiment of the present invention, an OMA DM-based application may provide/expose such a call back service to permit a DM server (e.g., DM server 109 of FIG. 1) to send a SMS DM notification to one electronic device (e.g., electronic device 107 of FIG. 1).


Table 17, shown below, illustrates an exemplary set of parameters that may be used with the “sendMessage” call back service call.












TABLE 17







Name
Description









session
This parameter may be a string used




by an OMA DM-based application as




an internal session identifier.



msisdn
This parameter may be the phone




number of he electronic device to




which the SMS DM notification is to




be sent.



message[ ]
This parameter may be a byte array




containing the information for the




notification such as, for example,




wireless datagram protocol (WDP),




wireless session protocol (WSP) and




content.










Some representative embodiments of the present invention employ a call back service function to be used by a DM server such as the DM server 109 of FIG. 1 to cause the sending of a DM notification message to multiple electronic devices. A function prototype for such a function may appear as follows:

    • Public void sendMessage(String session, String misisdn[ ], byte[ ][ ] message)


In a representative embodiment of the present invention, an OMA DM-based application may also provide/expose such a call back service to permit a DM server (e.g., DM server 109 of FIG. 1) to send a SMS DM notification to multiple electronic devices (e.g., electronic device 107 of FIG. 1) (e.g., a bulk operation).


Table 18, shown below, illustrates an exemplary set of parameters that may be used with the “send Message” call back service call.












TABLE 18







Name
Description









session
This parameter may be a string used




by an OMA DM-based application as




an internal session identifier.



msisdn[ ]
This parameter may be the phone




number of each of the electronic




devices to which an SMS DM




notification is to be sent.



message[ ][ ]
This parameter may be a byte array




containing the information for each




notification to be sent such as, for




example, wireless datagram protocol




(WDP), wireless session protocol




(WSP) and content for an electronic




device.










Some representative embodiments of the present invention employ a call back service function to be used by a DM server such as the DM server 109 of FIG. 1 to cause the sending of a DM bootstrap message to a single electronic device. A function prototype for such a function may appear as follows:

    • public void sendMessage(String session, String BootstrapType, String msisdn, byte[ ] hdr, byte[ ] message Body)


In a representative embodiment of the present invention, an OMA DM-based application may provide/expose such a call back service to permit a DM server (e.g., DM server 109 of FIG. 1) to send a SMS DM notification to one electronic device (e.g., electronic device 107 of FIG. 1).


Table 19, shown below, illustrates an exemplary set of parameters that may be used with the “send Message” call back service call.












TABLE 19







Name
Description









session
This parameter may be a string used




by an OMA DM-based application as




an internal session identifier.



Bootstrap Type
This parameter may be used to




indicate the type of bootstrap to




perform, either WAP or plain.



hdr[ ]
This parameter may be a byte array




containing the SMS message header




for the boostrap message.



messageBody[ ]
This parameter may be a byte array




containing the SMS message body




for the boostrap message.










Some representative embodiments of the present invention employ a call back service function to be used by a DM server such as the DM server 109 of FIG. 1 to cause the sending of a DM bootstrap message to multiple electronic devices for a single call. A function prototype for such a function may appear as follows:

    • public void sendMessage(String session, String BootstrapType, String msisdn[ ], byte[ ][ ] hdr, byte[ ][ ] messageBody)


In a representative embodiment of the present invention, an OMA DM-based application may provide/expose such a call back service to permit a DM server (e.g., DM server 109 of FIG. 1) to send a SMS DM notification to a number of electronic devices (e.g., electronic device 107 of FIG. 1) as a result of a single call.


Table 20, shown below, illustrates an exemplary set of parameters that may be used with the “sendMessage” call back service call.












TABLE 20







Name
Description









session
This parameter may be a string used




by an OMA DM-based application as




an internal session identifier.



Bootstrap Type
This parameter may be used to




indicate the type of bootstrap to




perform, either WAP or plain.



hdr[ ][ ]
This parameter may be a byte array




containing the SMS message




headers for the bootstrap messages




for each electronic device.



messageBody[ ][ ]
This parameter may be a byte array




containing the SMS message body




for the bootstrap message for each




electronic device.










Some representative embodiments of the present invention provide an API function to be used by an OMA DM-based application to access DeviceCapability by the MMV of the electronic device. A function prototype for such a function may appear as follows:

    • public Collection getDeviceCapabilityByMMV(MMV mmv)


In a representative embodiment of the present invention, an OMA DM-based application may use this API function to cause the OMA DM common framework to provide DeviceCapability information based on the MMV of an electronic device (e.g., the electronic device 107 of FIG. 1). The “getDeviceCapabilityByMMV” function may return the list of device capabilities.


Table 21, shown below, illustrates an exemplary set of parameters that may be used with the “getDeviceCapability” API function call.












TABLE 21







Name
Description









mmv
This parameter may be the make,




model and version of the electronic




device.










Some representative embodiments of the present invention provide an API function to be used by an OMA DM-based application to access DeviceCapability by the deviceID of the electronic device. A function prototype for such a function may appear as follows:

    • public Collection getDeviceCapability(String deviceID)


In a representative embodiment of the present invention, an OMA DM-based application may use this API function to cause the OMA DM common framework to provide DeviceCapability information based on the deviceID of an electronic device (e.g., the electronic device 107 of FIG. 1). The “getDeviceCapability” function may return the list of device capabilities.


Table 22, shown below, illustrates an exemplary set of parameters that may be used with the “getDeviceCapability” API function call.












TABLE 22







Name
Description









deviceID
This parameter may be the deviceID




of the electronic device.










Some representative embodiments of the present invention provide an API function to be used by an OMA DM-based application to create a new DeviceCapability for an electronic device. A function prototype for such a function may appear as follows:

    • public void createDeviceCapability (DeviceCapability deviceCapability)


In a representative embodiment of the present invention, an OMA DM-based application may use this API function to cause the OMA DM common framework to create a new DeviceCapability information.


Table 23, shown below, illustrates an exemplary set of parameters that may be used with the “createDeviceCapability” API function call.












TABLE 23







Name
Description









deviceCapability
This parameter may be the




deviceCapability that the OMA DM-




based application wishes to create.










Some representative embodiments of the present invention provide an API function to be used by an OMA DM-based application to assign a DeviceCapability to a single electronic device (e.g., electronic device 107 of FIG. 1). A function prototype for such a function may appear as follows:

    • public void assignDeviceCapability(DeviceInstance deviceInstance, DeviceCapability deviceCapability)


In a representative embodiment of the present invention, an OMA DM-based application may use this API function to assign DeviceCapability information a single electronic device (e.g., the electronic device 107 of FIG. 1).


Table 24, shown below, illustrates an exemplary set of parameters that may be used with the “getDeviceCapability” API function call.












TABLE 24







Name
Description









deviceInstance
This parameter may be a single




electronic device.



deviceCapability
This parameter may be the




DeviceCapability that the OMA DM-




based application wishes to assign to




the electronic device.










Some representative embodiments of the present invention provide an API function to be used by an OMA DM-based application to update DeviceCapability information for a single electronic device (e.g., electronic device 107 of FIG. 1). A function prototype for such a function may appear as follows:

    • public void updateDeviceCapability(DeviceCapability deviceCapability)


In a representative embodiment of the present invention, an OMA DM-based application may use this API function to update DeviceCapability information for a single electronic device (e.g., the electronic device 107 of FIG. 1).


Table 25, shown below, illustrates an exemplary set of parameters that may be used with the “updateDeviceCapability” API function call.












TABLE 25







Name
Description









deviceCapability
This parameter may be the




DeviceCapability that the OMA DM-




based application wishes to update.










Some representative embodiments of the present invention provide an API function to be used by an OMA DM-based application to get the node URI for a single electronic device (e.g., electronic device 107 of FIG. 1). A function prototype for such a function may appear as follows:

    • public String getNodeURI(String deviceId, String nodeType)


In a representative embodiment of the present invention, an OMA DM-based application may use this API function to get the node URI for a single electronic device (e.g., the electronic device 107 of FIG. 1).


Table 26, shown below, illustrates an exemplary set of parameters that may be used with the “getNodeURI” API function call.












TABLE 26







Name
Description









deviceID
This parameter may be the device




identifier of the electronic device.



nodeType
This parameter may be an identifier in




the DM tree. By defining the




nodeType in deviceCapability, the




OMA DM-based application may




share the DM tree information.










Some representative embodiments of the present invention provide an API function to be used by an OMA DM-based application to add a device instance for an electronic device (e.g., electronic device 107 of FIG. 1) to an OMA DM common framework. A function prototype for such a function may appear as follows:

    • public void addDevice (DeviceInstance deviceInstance)


In a representative embodiment of the present invention, an OMA DM-based application may use this API function to add a DeviceInstance object to an OMA DM common framework for an electronic device (e.g., the electronic device 107 of FIG. 1).


Table 27, shown below, illustrates an exemplary set of parameters that may be used with the “addDevice” API function call.












TABLE 27







Name
Description









deviceInstance
This parameter may be the




DeviceInstance object to be added to




the OMA DM common framework.










Some representative embodiments of the present invention provide an API function to be used by an OMA DM-based application to update a device instance for an electronic device (e.g., electronic device 107 of FIG. 1). A function prototype for such a function may appear as follows:

    • public void updateDevice (DeviceInstance deviceInstance)


In a representative embodiment of the present invention, an OMA DM-based application may use this API function to update a DeviceInstance object in an OMA DM common framework for an electronic device (e.g., the electronic device 107 of FIG. 1).


Table 28, shown below, illustrates an exemplary set of parameters that may be used with the “addDevice” API function call.












TABLE 28







Name
Description









deviceInstance
This parameter may be the




DeviceInstance object to be added to




the OMA DM common framework.










Some representative embodiments of the present invention provide an API function to be used by an OMA DM-based application to get a device instance for an electronic device (e.g., electronic device 107 of FIG. 1). A function prototype for such a function may appear as follows:

    • public void getDevice (DeviceInstance deviceInstance)


In a representative embodiment of the present invention, an OMA DM-based application may use this API function to get a DeviceInstance object for an electronic device (e.g., the electronic device 107 of FIG. 1) from an OMA DM common framework.


Table 29, shown below, illustrates an exemplary set of parameters that may be used with the “getDevice” API function call.












TABLE 29







Name
Description









deviceID
This parameter may be the device ID




identifying the electronic device for




which the DeviceInstance object is to




be gotten from the OMA DM common




framework.











FIG. 5 shows the architecture of an exemplary device management system 500 having an OMA DM common framework in accordance with a representative embodiment of the present invention. As shown in the example shown in the illustration of FIG. 5, OMA DM-based applications 520 employ an OMA DM common framework to manage Device Capability object 542, Device Instance object 544, and MMV object 546. The OMA DM-based applications 520 may comprise, for example, the SmartCare customer care application from Hewlett-Packard Company. The DM common framework may, for example, be implemented as a standalone Java Version 2 Enterprise Edition (J2ee) application, and may export its API by Remote Method Invocation (RMI) or web services, as described above. Access to the Device Capability object 542, Device Instance object 544, and MMV object 546 may be enabled by a stateless Enterprise Java Bean mechanism. The Device Capability object 542, Device Instance object 544, and MMV object 546 may employ a Java Data Objects (JDO) API 550 and Java Database Connectivity (JDBC) 560 to access a DM common framework database 530. Details of the functionality of the DM common framework database are not required of any of the OMA DM-based applications 520. In this manner, multiple OMA DM-based applications such as, for example, the OM DM-based applications 520 may simultaneously/concurrently access the DM common framework database 530, without knowledge of the access details or structure of the DM common framework database. In addition, access to the DM common framework database using an OMA DM common framework in accordance with a representative embodiment of the present invention permits OMA DM-based applications 520 to each “see” one set of objects used in device management of electronic devices (e.g., electronic device 107), providing consistent handling of the variety of data elements used.


The following describes an example device management activity to profile a sub-tree of a device management tree in an electronic device, node by node. In such a circumstance, a OMA DM-based application may issue the CommandRequest shown in Table 30, below:












TABLE 30







Field
Value









command
GetStructData



targetURI[ ]
{./DevDetail?list=StructData}




The ./DevDetail is the root node URI of




the sub-tree



sourceURI
Null



value
Null



Format
Null



optIn
This field used to specify the




notification UI mode in OMA DM




specification




0 not-specified




1 background




2 informative




3 user-interaction




Detail definition please refer to OMA-




SyncML-DMNotification-V1_1_2-




20031205-A.pdf










An OMA DM common framework in accordance with one representative embodiment of the present invention converts the above object to a DM command and send it to the electronic device (e.g., electronic device 107 of FIG. 1). If the DM command status returned by the electronic device is, for example, “200”, the profiling of the electronic device sub-tree was successful. The OMA DM common framework may return the results to the OMA DM-based application (e.g., an instance of the SmartCare customer care application). If the DM command status returned by electronic device is, for example, “406”, the profiling of the electronic device failed, and may indicate that the electronic device doesn't support retrieval of the DM tree information.


An OMA DM common framework in accordance with one representative embodiment of the present invention uses the command and parameters shown below to determine whether profiling a sub-tree is supported by an electronic device. The targetURI attribute of the CommandRequest object may be set as follows:

    • targetURI==“./abc?list=structData”


In accordance with the OMA DM protocol, a DM server may use the Get command with a “targetURI” attribute to retrieve management tree information identified by the targetURI attribute. The Get command and the URI may have the following format:

    • GET <URI>?list=<attribute>


      Table 31 shows exemplary values for the “attributes” values shown above:












TABLE 31







Attribute Value
Description









Struct
The structure of a management tree is




returned, without any data.



StructData
The structure of the management tree




is returned, with the leaf nodes data.










In accordance with the OMA DM protocol, if an electronic device doesn't support the DM command sent to it, the electronic device will return the status “406”. When an OMA DM common framework in accordance with a representative embodiment of the present invention finds that the electronic device does not support retrieval of the DM tree information, the OMA DM common framework may send a DM Get command to the electronic device recursively, to profile the sub-tree node by node. When the profile of a sub-tree is complete, an OMA DM common framework may send the results back to the OMA DM-based application (e.g., the SmartCare customer care application) by calling the “setCommandsResults” call back service method implemented by the OMA DM-based application.


The following illustrates an example of the results of a DM sub-tree profile activity:
















Field
Value









Struct
The structure of a management tree




is returned, without any data.



StructData
The structure of the management




tree is returned, with the leaf nodes




data.



Command
Get.



statusCode
406: to indicate that the




device not support




retrieve DM tree




information. OMA DM




common framework




profile the device node by




node




200: to indicate that the




device support retrieve




DM tree information



uri[ ]
{“./DevDetail?list=StructData”,




“./DevDetail”,




 “./DevDetail/LrgObj”,




 “./DevDetail/HwV”,









“./DevDetail/SwV”,



“./DevDetail/FwV”,



“./DevDetail/OEM”,



 “./DevDetail/DevTyp”,



 “./DevDetail/URI”,



 “./DevDetail/Bearer”,



 “./DevDetail/URI/MaxSegLen”,



 “./DevDetail/URI/MaxTotLen”,



 “./DevDetail/URI/MaxDepth”











}



value[ ]
{“”,




 “”,




 “true”,




 “intel”,




 “4.0”,




 “1.0”,




 “SyncML Initiative”,




 “Windows workstation”,




 “”,




 “”,




 “0”,




 “0”,




 “0”




}



format[ ]
{“”,




 “node”,




 “true”,




 “intel”,




 “4.0”,




 “1.0”,




 “SyncML Initiative”,




 “Windows workstation”,




 “node”,




 “node”,




 “0”,




 “0”,




 “0”




}










A representative embodiment of the present invention supports an end-to-end Firmware-Over-the-Air (FOTA) update solution where a subscriber identity module (SIM) may be used to augment existing OMA DM and proprietor FOTA security. The SIM is employed as an authentication tool for FOTA update packages and provides an operator specific control point for rejecting update packages for updates that are not explicitly authorized via the SIM. In a representative embodiment of the present invention, update packages may be signed by, for example, a network system operator and may then be checked against a validation string, which is embedded during manufacturing in an operator-provided SIM. In some representative embodiments, an update packages may have a validation string added as a header to a binary file that constitutes the update package.


In a representative embodiment of the present invention, update packages may be transported to an electronic device (e.g., electronic device 107 of FIG. 1) through existing OMA-based mechanisms. Existing OMA security mechanisms may be in place to validate authenticity of a client (e.g., the DM client 163 or update agent 115 of FIG. 1) and server (e.g., DM server 109 or download server 151 of FIG. 1) as well as to validate integrity of each message exchange. After download of an update package to the electronic device is complete, and prior to installation, a handoff agent (e.g., hand-off module 121 of FIG. 1) may retrieve the validation string from the SIM and store the validation string to non-volatile (e.g., flash) memory 111 so as to make the string available to the update agent 115 for validation. The update agent 115 in the electronic device 107 may check the header within the update package header against this validation string. A device management applicant such a, for example, the MVP Server from Hewlett-Packard Company, may be used to manage and dispatch the update package data to electronic devices (e.g., cellular or mobile handsets) over a communication network.


A representative embodiment of the present invention may be employed in electronic device such as, for example, Motorola V635 and E1000 handsets. Subscriber identity module (SIM) cards such as those available from, for example, Gemplus SA, also known as Gemalto NV, may be used to secure FOTA updates. In a representative embodiment of the present invention, a SIM card may include special information about a system operator against which validation of an update package may be performed, to permit secure updates.



FIG. 6A shows an exemplary SIM file format for containing a set of FOTA credentials that may be stored in the file system of a SIM, in accordance with a representative embodiment of the present invention. The file may, for example, be named EF_FOTA, and may have the format shown in FIG. 6A. In the example shown in FIG. 6A, the file is 17 bytes in size. A first byte “b1” may contain a FOTA condition flag that indicates whether the update process is allowed. The remaining 16 RFU bytes (2 through 17) may be used to hold the validation string or signature.



FIG. 6B shows an exemplary format of a FOTA condition byte that may correspond, for example, to the FOTA condition byte shown in FIG. 1, in accordance with a representative embodiment of the present invention. As shown in the example of FIG. 6B, a FOTA condition byte may use the rightmost or lowest order bit “b1” may take a value of “0”, when FOTA update is not allowed, and a value of “1”, when FOTA update is allowed.



FIG. 7 shows a flowchart illustrating an exemplary process of signing an update package and verifying it against the signature/validation string stored on a SIM card, in accordance with a representative embodiment of the present invention. In box 1, a verification string/validation string/signature may be provided by the vendor/manufacturer of the SIM cards in use. The verification string/validation string/signature may, for example, be programmed into the SIM cards during the manufacturing process. At box 2, the developer/creator of an update package may provide the update package for a given update. The verification string/validation string/signature may be unique to a particular system operator, but may not be unique to a subscriber/owner of the electronic device to be updated. At box 3, a post-processing activity may place the verification string/validation string/signature into the update package, readying it for secure distribution. Then, at box 4, the update package may be stored on an update server (e.g., download server 151 or DM server 109 of FIG. 1) for later distribution to compatible and identified electronic devices.


At some later time, a download module in an electronic device (e.g., electronic device 107 of FIG. 1) may download the update package from the update server. The downloaded update package may, for example, be stored in non-volatile memory (e.g., non-volatile memory 111 of FIG. 1). In a representative embodiment of the present invention, the download process may be allowed to begin only if the “FOTA update allowed” bit (e.g., bit “b1” of the FOTA condition byte of FIG. 6B) is set, and/or if the a FOTA file (e.g., EF_FOTA file mentioned above) exists on the SIM operably coupled to the electronic device. At box 6A, a handoff module (e.g., handoff module 121 of FIG. 1) may assist an update agent (e.g., update agent 115 of FIG. 1) to validate the update package by retrieving the verification string/validation string/signature stored in the EF_FOTA file of the SIM. As described previously, this information may, for example, be pre-installed in the SIM at time of manufacture. The verification string/validation string/signature from the SIM may then be written to non-volatile memory (e.g., flash memory) for retrieval by the update agent 115. Then, at box 7, the update agent 115 may validate the verification string/validation string/signature against the string contained in the header of the update package. The update package may be processed and the update process completed, if the verification string/validation string/signature is validated. The update process may be terminated, however, if validation of the verification string/validation string/signature fails.



FIG. 8 shows a table illustrating exemplary scenarios regarding the control of the update process for an electronic device that may correspond to, for example, the electronic device 107 of FIG. 1, for an update package secured by System Operator A and those not secured by System Operator A, used with a SIM issued by System Operator A, in accordance with a representative embodiment of the present invention.


In a representative embodiment of the present invention, the verification string/validation string/signature data may be stored in non-volatile memory (e.g., flash memory), and may share memory space with FOTA data. The EF_FOTA bytes may be stored at the end of blocks reserved for an update package. In some representative embodiments of the present invention, the EF_FOTA bytes may be part of flex data.


The update agent in one representative embodiment of the present invention extracts the verification string/validation string/signature data from an update package, and may compare it with the verification string/validation string/signature data extracted from the SIM and stored in non-volatile memory (e.g., flash memory). The update agent may identify the location of the verification string/validation string/signature data by including the appropriate addresses in memory where it is stored. This information may be part of an update agent header, and the update agent may accommodate the signature checking. The verification string/validation string/signature data extracted from a SIM by a handoff agent may be read, and may be compared with verification string/validation string/signature data signature data embedded in an update package. If the update package is rejected, an error code may be written to non-volatile memory as a return value.


In a representative embodiment of the present invention, an update agent such as, for example, the update agent 115 of FIG. 1, may perform the following functions in validating an update package:

    • The update agent may read the SIM verification string/validation string/signature data location in non-volatile (e.g., flash) memory,
    • The update agent may shall read a FOTA header (e.g., a 17-byte header as shown in FIG. 6A) from a downloaded update package,
    • The update agent may compare the SIM verification string/validation string/signature data to the update package FOTA header:
      • If the verification string/validation string/signature data match, the update agent may process the update package and install it in a fault-tolerant manner,
      • If the verification string/validation string/signature data do not match, the update agent may reject the update package and terminate the update process. The update agent may return the electronic device (e.g., electronic device 107 of FIG. 1) to a normal operating condition and may reset any bytes used to start the update process.
      • The update agent may communicate error codes upon failure by storing this information within a handoff data area of non-volatile memory (e.g., non-volatile memory 111 of FIG. 1).


In a representative embodiment of the present invention, verification string/validation string/signature data may be added/attached to an update package created by, for example, an update package generator such as the mProve® Generator available from Hewlett-Packard Company. In some representative embodiments, sixteen (16) bytes may be added to the update package binary data. The process of adding/attaching the verification string/validation string/signature data may be done through a binary concatenation tool designed for this specific purpose.


In a representative embodiment of the present invention, software/firmware components within the electronic device may perform the following functions in handling an update package:


A download agent in the electronic device (e.g., DM client 163 of FIG. 1) may be responsible for the following:

    • Reading the verification string/validation string/signature data,
    • EF_FOTA file, from a SIM card.
    • Implement the logic to proceed with download if update is allowed, otherwise abort.
    • Download the update package from the server.
    • Pass control to a handoff agent (e.g., handoff module 121 of FIG. 1).


A handoff agent in the electronic device (e.g., handoff module 121 of FIG. 1) may be responsible for the following:

    • Reading the verification string/validation string/signature data, EF_FOTA file, from the SIM card.
    • Implement logic to proceed with committing data to non-volatile memory if update is allowed, otherwise abort.
    • Store data to non-volatile memory (e.g., flash memory) according to the following sequence: 1) update package data, 2) verification string/validation string/signature data, 3) handoff data.
    • Pass control to an update agent, and reset the electronic device. The non-volatile memory (e.g., flash storage) location for the contents of the EF_FOTA file from the SIM may be accessible to the update agent.


The following discussion provides the details of exemplary use-cases illustrating various aspects of some representative embodiments of the present invention. A representative embodiment of the present invention provides a SIM secured FOTA mechanism that is designed to prevent users with electronic devices issued, provided, and maintained by a system operator from installing alternative update packages that are not explicitly approved by the system operator. The security method is transport independent, so that unapproved updates are rejected by the electronic device, regardless of how they are delivered.


The following exemplary use-case illustrates a case where a system operator A-approved update package is to be processed with a system operator A-secured FOTA SIM.


Pre-Condition:

    • 1) Electronic device is operating on an older revision of firmware,
    • 2) System operator SIM secured update package for newer firmware version is already published to an update server,
    • 3) Electronic device is FOTA enabled with SIM security functionality,
    • 4) System operator SIM with FOTA security credentials is being used,
    • 5) Electronic device has been bootstrapped with DM credentials.


Post-Condition:

    • 1) Electronic device is operating on newer revision of firmware


Steps:

    • 1) Initiate update via update server by entering MSISDN,
    • 2) Download agent checks for the update allowed condition (e.g., bit “b1” set in FOTA condition byte),
    • 3) Electronic device downloads applicable update package,
    • 4) Handoff agent retrieves FOTA credentials (e.g., verification string/validation string/signature data) from SIM and stores it to the non-volatile memory (e.g., flash memory), and triggers update agent,
    • 5) Update agent validates the update package against SIM credentials (verification string/validation string/signature data) stored in non-volatile memory (e.g., flash memory),
    • 6) Update agent installs approved update package,
    • 7) Electronic device responds with success status.


The following exemplary use-case illustrates a case where a non-secured update package is to be processed with a system operator A-secured FOTA SIM.


Pre-Condition:

    • 1) Electronic device is operating on an older revision of firmware,
    • 2) Non-secured update package for newer firmware version is already published to the update server,
    • 3) Electronic device is FOTA enabled with SIM security functionality,
    • 4) System operator SIM with FOTA security credentials (verification string/validation string/signature data) is being used,
    • 5) Electronic device has been bootstrapped with DM credentials.


Post-Condition:

    • 1) Electronic device rejects new update package,
    • 2) Electronic device is operating on older (original) revision of firmware.


Steps:

    • 1) Initiate update via update server by entering MSISDN,
    • 2) Download agent checks for the update allowed condition (e.g., bit “b1” set in FOTA condition byte),
    • 3) Electronic device downloads applicable update package,
    • 4) Handoff agent retrieves FOTA credentials (verification string/validation string/signature data) from SIM and stores it to the non-volatile memory (e.g., flash memory), and triggers update agent,
    • 5) Update agent validates update package against SIM credentials (verification string/validation string/signature data) stored in non-volatile memory (e.g., flash memory),
    • 6) Update agent rejects update package and terminates installation,
    • 7) Update agent produces a “Failed” status and returns to normal operation.


The following exemplary use-case illustrates a case where a system operator B-secured update package is to be processed with a system operator A-secured FOTA SIM.


Pre-Condition:

    • 1) Electronic device is operating on an older revision of firmware,
    • 2) SIM secured update package from system operator B for newer firmware version is already published to the update server (Note: This may be an unlikely scenario, but may be used to test extent of security protection. Credentials (verification string/validation string/signature data) are assumed different for system operator B),
    • 3) Electronic device is FOTA enabled with SIM security functionality,
    • 4) System operator A SIM with FOTA security credentials is being used,
    • 5) Electronic device has been bootstrapped with DM credentials.


Post-Condition:

    • 1) Electronic device rejects new update,
    • 2) Electronic device is operating on older (original) revision of firmware.


Steps:

    • 1) Initiate update via update server by entering MSISDN,
    • 2) Download agent checks for the update allowed condition (e.g., bit “b1” set in FOTA condition byte),
    • 3) Electronic device downloads applicable update package,
    • 4) Handoff agent retrieves FOTA credentials (verification string/validation string/signature data) from SIM and stores it to the non-volatile memory (e.g., flash memory), and triggers update agent,
    • 5) Update agent validates update package against SIM credentials (verification string/validation string/signature data) stored in non-volatile memory (e.g. flash memory),
    • 6) Update agent rejects update package and terminates installation,
    • 7) Update agent produces a “Failed” status and returns to normal operation.


The following exemplary use-case illustrates a case where a system operator B-approved update package is to be processed with a system operator A-not secured FOTA SIM.


Pre-Condition:

    • 8) Electronic device is operating on an older revision of firmware,
    • 9) System operator A SIM secured update package for newer firmware version is already published to the update server,
    • 10) Electronic device is FOTA enabled without SIM security functionality,
    • 11) System operator A SIM without FOTA security credentials is being used,
    • 12) Electronic device has been bootstrapped with DM credentials.


Post-Condition:

    • 1) Electronic device rejects new update,
    • 2) Electronic device is operating on older (original) revision of firmware.


Steps:

    • 1) Initiate update via update server by entering MSISDN,
    • 2) Download agent checks for the update allowed condition (e.g., bit “b1” set in FOTA condition byte) and/or EF_FOTA file presence on the SIM,
    • 3) If EF_FOTA file does not exist, download agent aborts update session,
    • 4) Download agent check for the update allowed condition (e.g., bit “b1” set in FOTA condition byte),
    • 5) Download agent retrieves FOTA credentials (verification string/validation string/signature data) from SIM and stores it to the non-volatile memory (e.g., flash memory),
    • 6) Electronic device downloads applicable update package and triggers update agent,
    • 7) Update agent validates update package header against SIM credentials (verification string/validation string/signature data) stored in non-volatile memory (e.g., flash memory),
    • 8) Update agent rejects update package and terminates installation,
    • 9) Update agent produces a “Failed” status and returns to normal operation.


The following exemplary use-case illustrates a case where a non-secured update package is to be processed with a system operator A-not secured FOTA SIM.


Pre-Condition:

    • 1) Electronic device is operating on an older revision of firmware,
    • 2) Non-secured update package for newer firmware version is already published to the update server,
    • 3) Electronic device is FOTA enabled without SIM security functionality,
    • 4) System operator A SIM without FOTA security credentials is being used,
    • 5) Electronic device has been bootstrapped with DM credentials.


Post-Condition:

    • 1) Electronic device rejects new update,
    • 2) Electronic device is operating on older (original) revision of firmware,


Steps:

    • 1) Initiate update via update server by entering MSISDN,
    • 2) Download agent checks for the update allowed condition (e.g., bit “b1” set in FOTA condition byte) and/or EF_FOTA file presence on the SIM,
    • 3) If EF_FOTA file does not exist, download agent aborts update session,
    • 4) Download agent checks for the update allowed condition (e.g., bit “b1” set in FOTA condition byte),
    • 5) Download agent retrieves FOTA credentials (verification string/validation string/signature data) from SIM and stores it to the non-volatile memory (e.g., flash memory),
    • 6) Electronic device downloads applicable update package and triggers update agent,
    • 7) Update agent validates update package header against SIM credentials (verification string/validation string/signature data) stored in non-volatile memory (e.g., flash memory),
    • 8) Update agent rejects update package and terminates installation,
    • 9) Update agent produces a “Failed” status and returns to normal operation.


The following exemplary use-case illustrates a case where a non-system operator B-secured update package is to be processed with a system operator A-not secured FOTA SIM.


Pre-Condition:

    • 1) Electronic device is operating on an older revision of firmware,
    • 2) SIM Secured Update Package from system operator B for newer firmware version is already published to the update server (Note: This may be an unlikely scenario, but may be used to test extent of security protection. Credentials (verification string/validation string/signature data) are assumed different for system operator B),
    • 3) Electronic device is FOTA enabled without SIM security functionality
    • 4) System operator A SIM without FOTA security credentials is being used,
    • 5) Electronic device has been bootstrapped with DM credentials.


Post-Condition:

    • 1) Electronic device rejects new update,
    • 2) Electronic device is operating on older (original) revision of firmware.


Steps:

    • 1) Initiate update via update server by entering MSISDN,
    • 2) Download agent checks for the update allowed condition (e.g., bit “b1” set in FOTA condition byte) and/or EF_FOTA file presence on the SIM,
    • 3) If EF_FOTA file does not exist, download agent aborts update session,
    • 4) Download agent checks for the update allowed condition (e.g., bit “b1” set in FOTA condition byte),
    • 5) Download agent retrieves FOTA credentials (verification string/validation string/signature data) from SIM and stores it to the non-volatile memory (e.g., flash memory),
    • 6) Electronic device downloads applicable update package and triggers update agent,
    • 7) Update agent validates update package header against SIM credentials (verification string/validation string/signature data) stored in non-volatile memory (e.g., flash memory),
    • 8) Update agent rejects update package and terminates installation,
    • 9) Update agent produces a “Failed” status and returns to normal operation.


The following exemplary use-case illustrates a case where a system operator A-approved update package is to be processed with a system operator A-secured FOTA SIM and FOTA update is not allowed (e.g., bit “b1” of FOTA condition byte=0).


Pre-Condition:

    • 1) Electronic device is operating on an older revision of firmware,
    • 2) System operator A SIM secured update package for newer firmware version is already published to the update server,
    • 3) Electronic device is FOTA enabled with SIM security functionality,
    • 4) System operator A SIM with FOTA security credentials (verification string/validation string/signature data) but FOTA Update Not Allowed is being used,
    • 5) Electronic device has been bootstrapped with DM credentials.


Post-Condition:

    • 1) Electronic device rejects new update,
    • 2) Electronic device is operating on older (original) revision of firmware.


Steps:

    • 1) Initiate update via update server by entering MSISDN,
    • 2) Download agent checks for the update allowed condition (e.g., bit “b1” set in FOTA condition byte),
    • 3) Download agent retrieves FOTA credentials (verification string/validation string/signature data) from SIM and stores it to the non-volatile memory (e.g., flash memory),
    • 4) Electronic device downloads applicable update package and triggers update agent,
    • 5) Update agent validates update package header against SIM credentials (verification string/validation string/signature data) stored in non-volatile memory (e.g., flash memory),
    • 6) Update agent rejects update package and terminates installation,
    • 7) Update agent produces a “Failed” status and returns to normal operation.


An update server in one representative embodiment of the present invention supports Operator specific prompting. Language preference may be passed as a field in a form that may be manually filled in by customer on web interface, or that may be passed as a URL parameter such as, for example, automatically passed by customer care agent application or by Operator Mobile portal. Region specific languages may be supported in a download descriptor portion of metadata that is associated with an update package. In order to support multiple languages, one representative embodiment of the present invention permits multiple download descriptors to be associated with each update package.


Some representative embodiments of the present invention support management (e.g., creation, deletion, modification, selection, and listing) of device tester groups. Specific software/firmware updates may be selectively published to specific groups of subscribers. Deployment managers may select available ‘Released’ updates and assign them to managed subscriber groups, or classes. This feature enables global operators to centrally test and validate updates while providing the flexibility of independent deployments for each geographic or operating unit. For example, an update may be only made available to a specific device testing group who have a software/firmware version of 2.x or higher because of certain electronic device (e.g., hardware limitations).



FIG. 9 shows an illustration of an exemplary user interface screen 900 that enables creation of download groups, in accordance with a representative embodiment of the present invention. As shown in FIG. 9, Some representative embodiments of the present invention permit the definition of a named download group of subscribers identified by, for example, the telephone number of each member of the download group. Such downloads groups may permit a subset of the subscriber base to be provided with particular versions of software/firmware that is not made available for distribution to the remaining subscribers of a system operator. This may, for example, permit special versions of firmware and software applications to be provided to special subscriber groups that have use for the features of such special versions, or to provide pre-release or “beta” versions of electronic device applications to be tested by controlled groups of users. Some representative embodiments of the present invention support the creation, deletion, and modification of special groups of subscribers. Some representative embodiments of the present invention also support the generation and exporting of statistics and reports related to special groups of subscribers.


Some representative embodiments of the present invention provide support for the distribution of multiple update packages in a single session of communication of an update server with an electronic device. During a rendezvous with the device, an update server in accordance with the present invention may determine that multiple updates are involved, and may accordingly fetch the relevant update packages and initiate multiple downloads to the affected electronic device. In a representative embodiment of the downloads may be initiated in the same device management session.


In some representative embodiments of the present invention, an update server may check whether further update packages are available for download, and if so, may initiate an OMA DM Replace/Exec command for a remaining update package, immediately. This may result in a daisy chain of updates, where the electronic device is updated until brought to the latest firmware/software version. Some representative embodiments of the present invention employ device-specific adapters that enable customization such as update with multiple update packages.


Some representative embodiments of the present invention support text prompting before a download of update package information. The language of such text prompts may be selected based upon the MSISDN of the electronic device to be updated. For example, one of English, German, French and Spanish may be selected depending upon the MSISDN of the electronic device to be updated. This may be supported for text prompting before both individual updates and bulk updates.


Some representative embodiments of the present invention support text prompting after a download of update package information. The language of such text prompts may be selected based upon the MSISDN of the electronic device to be updated. For example, one of English, German, French and Spanish may be selected depending upon the MSISDN of the electronic device to be updated. This may be supported for text prompting after both individual updates and bulk updates.


In a representative embodiment of the present invention, such text prompts may be picked out of a download descriptor associated with the update package to be downloaded to the electronic device. The electronic device may receive the download descriptor, extract the text prompt information, and display it to the user of the electronic device. The download descriptor may be, for example, a download descriptor such as the OMA download descriptor. The text prompt in the download descriptor may, for example, be automatically populated from release notes maintained in an update server system.


Some representative embodiments of the present invention support text prompting after download and before proceeding with an update of an electronic device. The language of such text prompts may be selected based upon the MSISDN of the electronic device to be updated. For example, one of English, German, French and Spanish may be selected depending upon the MSISDN of the electronic device to be updated. Such text prompts may be specified by a customer care representative. This feature may be supported for text prompting before updating of an electronic device for both individual updates and bulk updates.


Some representative embodiments of the present invention support text prompting after an update of an electronic device. The language of such text prompts may be selected based upon the MSISDN of the electronic device to be updated. For example, one of English, German, French and Spanish may be selected depending upon the MSISDN of the electronic device to be updated. Such text prompts may be specified by a customer care representative. This feature may be supported for text prompting after updating of an electronic device for both individual updates and bulk updates.


Some representative embodiments of the present invention support administrator creation and configuration of roles of different users of an update server. This configuration may include the setting of functional restrictions and user interface configuration for each user role. Configuration of the user interface for a particular user role may include the selection of the information fields available on the user interface for that role, and read/write access permissions to the information available for the role. This permits the update server administrator to streamline processes and minimize the chances of overloading a user of the system with excessive and/or meaningless information.


An update server in accordance with one representative embodiment of the present invention supports the generation of reports for specific device target groups. This report may be generated based upon, for example, MSISDN. Reports showing historical transactions for a single electronic device may be provided. Such a report may, for example, be generated for a specific electronic device, and may be viewed and exported.



FIG. 10 illustrates a exemplary job details screen 1000 that may be employed by a user of an update server during management of updates to multiple electronic devices that may correspond to, for example, the electronic device 107 of FIG. 1, in accordance with a representative embodiment of the present invention. As shown in the example illustrated in FIG. 10, query controls 1010 allow a user to filter the report by manufacturer, model, version, IMEI (or partial IMEI), MSISDN (or partial MSISDN), start date, end date, and task status. An export button 1030 allows the filtered report to be exported to a command separated values (CSV) file. Clicking on a view icon 1035 may bring up a task detail report, showing events that have occurred for the selected electronic device.


Further detail may be provided for each job indicating each electronic device and the state for that electronic device. These results may be filtered by a number of parameters to provide results for a specific group of electronic devices (e.g., handsets). For example, one might specify all failed updates for an electronic device such as a Nokia 3560. These reports may be exportable for offline analysis or for re-submission after problem resolution.



FIG. 11 illustrates an exemplary event level details screen 1100, in accordance with a representative embodiment of the present invention.


To help with troubleshooting for specific devices, an update server/download server may provide event level detail for each step of the update process. An internal state machine design may enable an operator to understand where in the process a problem is occurring to pinpoint the exact point of failure.


Some representative embodiments of the present invention support listing of available update packages, including those that may require special handling such as those that have been “created”, “rejected”, “tested” and “deactivated”. Filters may be provided that permit filtering list contents by manufacturer and model, for example. Filtering by update package state may also be provided.


Some representative embodiments of the present invention support a monitoring mechanism to provide warning conditions when a configurable failure threshold is met. One representative embodiment of the present invention may use SNMP traps programmatically. Another representative embodiment of the present invention may employ monitoring threads that watch for failed jobs and send email or an SNMP trap when a threshold level is read. A representative embodiment of the present invention allows a user to allocate monitoring parameters (e.g., for warning conditions). An update task may be given a threshold level for minimum successful updates within a given time period (e.g., set manually by appropriate user role). This threshold level may be modified at any time. The update task may also be given a threshold level for a maximum number of failed updates within a given time period (e.g., set manually by appropriate user role). This threshold level may also be modified at any time. Some representative embodiments of the present invention also automatically suspend an update task if special conditions are met.


Some representative embodiments of the present invention permit update task (re-)scheduling at any time. For example, such an embodiment may allow an authorized user to allocate and/or modify the (re-)start week, day and time; to allocate and/or modify the authorized week, day and time periods; to allocate and/or modify the non-authorized week, day and time periods; to allocate and/or modify the priority level. Such an embodiment may also allow an authorized user to allocate and/or modify the maximum number of download attempts with a device; to allocate and/or modify the restrictions on network(s) that can be used for the electronic device update; to allocate and/or modify the threshold level for minimum successful updates within a given time period; and to allocate and/or modify the threshold level for maximum failed updates within a given time period. Restart parameters and priority levels may involve stopping of a job, exporting outstanding records, re-importing of records and restarting under a new job. A warning that a minimum threshold level has not been met may also be provided. A warning that maximum thresholds are surpassed may be provided. A means of determining the meaning or description of standard and/or manufacturer-specific result/error codes may be provided, and details of the meanings/descriptions of such result/error codes may be placed on exported reports.


Some representative embodiments of the present invention comprise an update server for the generation and distribution of update packages. Update packages generated by such an update server may include the FOTA credentials (verification string/validation string/signature data) discussed previously, or the FOTA credentials (verification string/validation string/signature data) may be added to an update package using a post-processing tool, discussed earlier in this document.


Aspects of the present invention may be seen in a system supporting access via a communication network to device management information for a plurality of electronic devices. Such a system may comprise at least one database containing the device management information, the at least one database enabling access to the device management information using a first object-type software interface mechanism. Such a system may also comprise at least one device management server communicatively coupled to the plurality of electronic devices and to the at least one database, the at least one device management server employing a second object-type software interface mechanism to access the at least one database. In addition, such a system may comprise a plurality of application servers, each of the plurality of application servers employing the second object-type software interface mechanism to access the at least one database in parallel with access by the at least one device management server.


In a representative embodiment of the present invention, the at least one database may comprise one or more management objects specified by an Open Mobile Alliance (OMA) version 1.2 or earlier protocol specification. The first object-type software interface mechanism may comprise a java data objects interface, and the second object-type software interface mechanism may comprise a data access object (DAO) interface. The second object-type software interface mechanism may support one or more of a device capability object, a device instance object, and an object for managing information identifying one or more of a make, a model and/or a version of each of the plurality of electronic devices. The communication network may comprise a public wireless network, and the plurality of electronic devices may comprise a cellular handset. The plurality of application servers may comprise one or both of a server providing customer care services to users of the plurality of electronic devices and/or a server that provides firmware and/or software updates to the plurality of electronic devices. The at least one device management server may access memory of the plurality of electronic devices using device management commands compatible with an Open Mobile Alliance (OMA) device management (DM) version 1.2 or earlier protocol specification.


Further aspects of the present invention may be observed in an electronic device comprising at least one processor operable to communicate over a network, and non-volatile memory operably coupled to the at least one processor. The non-volatile memory may comprise code executable by the at least one processor to receive and process information for updating firmware and/or software in the electronic device. Such an electronic device may also comprise interface circuitry for operably coupling the at least one processor to a user interchangeable circuit card. The executable code may cause at least a portion of the information for updating firmware and/or software to be compared to a corresponding portion of information in the user interchangeable circuit card to determine whether processing of information for updating firmware and/or software stored in the non-volatile memory of the electronic device is allowed.


In a representative embodiment of the present invention, the network comprises a public wireless network, and the electronic device may comprise a cellular handset. The information for updating firmware and/or software in the electronic device may comprise a set of instructions executable by the code to transform a first version of firmware and/or software to an updated version, and the user interchangeable circuit card may comprise a subscriber identity module (SIM) card.


Additional aspects of the present invention may be found in a system supporting device management via a communication network for a plurality of electronic devices. Such a system may comprise at least one database comprising information for updating the plurality of electronic devices, and information identifying each of the plurality of electronic devices, and at least one server communicatively coupled to the plurality of electronic devices and to the at least one database. In such a system, the at least one server may automatically determine a language for use in communicating at least one prompt message to a user of one of the plurality of electronic devices based upon the information identifying the one of the plurality of electronic devices. The at least one prompt message may be displayed upon receipt of a download descriptor compatible with an Open Mobile Alliance (OMA) version 1.2 or earlier protocol specification. The communication network may comprise a wireless network, and the information identifying each of the plurality of electronic devices may comprise one of a mobile station integrated services digital network (MSISDN) number, information identifying a public land mobile network (PLMN), a device identifier, or a phone number. The plurality of electronic devices may comprise a cellular handset, and the at least one server may communicate the information for updating the plurality of electronic devices using device management commands compatible with an Open Mobile Alliance (OMA) device management (DM) version 1.2 or earlier protocol specification.


Still other aspects of the present invention may be seen in a method supporting device management for a plurality of electronic devices, via a communication network. Such a method may comprise accessing at least one database comprising information for updating the plurality of electronic devices, and information identifying each of the plurality of electronic devices, and automatically determining a language for use in communicating at least one prompt message to a user of one of the plurality of electronic devices, based upon the information identifying the one of the plurality of electronic devices. The method may also communicate the at least one prompt message to the user of the one of the plurality of electronic devices, wherein the communicating may comprise expressing the at least one prompt in the determined language.


In a representative embodiment of the present invention, the at least one prompt message may be displayed upon receipt of a download descriptor compatible with an Open Mobile Alliance (OMA) version 1.2 or earlier protocol specification, and the communication network comprises a wireless network. The information identifying each of the plurality of electronic devices may comprise one of a mobile station integrated services digital network (MSISDN) number, information identifying a public land mobile network (PLMN), a device identifier, or a phone number, and the plurality of electronic devices may comprise a handset. The information for updating the plurality of electronic devices may be communicated to the plurality of electronic devices using device management commands compatible with an Open Mobile Alliance (OMA) device management (DM) version 1.2 or earlier protocol specification.


Although a system and method according to the present invention has been described in connection with the preferred embodiment, it is not intended to be limited to the specific form set forth herein, but on the contrary, it is intended to cover such alternative, modifications, and equivalents, as can be reasonably included within the scope of the invention as defined by this disclosure and appended diagrams.


Accordingly, a representative embodiment of the present invention may be realized in hardware, software, or a combination of hardware and software. Representative embodiments of the present invention may be realized in a centralized fashion in at least one computer system, or in a distributed fashion where different elements are spread across several interconnected computer systems. Any kind of computer system or other apparatus adapted for carrying out the methods described herein is suited. A combination of hardware and software may be a general-purpose computer system with a computer program that, when being loaded and executed, controls the computer system such that it carries out the methods described herein.


A representative embodiment of the present invention may also be embedded in a computer program product, which comprises all the features enabling the implementation of the methods described herein, and which when loaded in a computer system is able to carry out these methods. Computer program in the present context means any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: a) conversion to another language, code or notation; b) reproduction in a different material form.


While aspects of the present invention have been described with reference to certain embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted without departing from the scope of the representative embodiments of the present invention. In addition, many modifications may be made to adapt a particular situation or material to the teachings of a representative embodiment of the present invention without departing from its scope. Therefore, it is intended that embodiments of the present invention not be limited to the particular embodiments disclosed herein, but that representative embodiments of the present invention include all embodiments falling within the scope of the appended claims.

Claims
  • 1. A method for updating an electronic device over a network comprising: sending information for updating the electronic device over the network;retrieving information from an interchangeable circuit card in the electronic device; anddetermining whether processing of information for updating the electronic device is allowed based on a comparison between a portion of the information for updating the electronic device and a corresponding portion of the information from the interchangeable circuit card, wherein the portion of the information for updating the electronic device includes a set of Firmware-Over-the-Air (FOTA) credentials and wherein the corresponding portion of the information from the interchangeable circuit card includes the set of FOTA credentials, and updating the electronic device if a condition flag in the set of FOTA credentials is set to allow.
  • 2. The method of claim 1, wherein retrieving information from the interchangeable circuit card in the electronic device includes retrieving information from a subscriber identity module (SIM) card.
  • 3. The method of claim 2, wherein the information from the SIM card includes an Firmware-Over-the-Air (FOTA) file and wherein the sending is allowed to begin if the FOTA update allowed bit is set.
  • 4. The method of claim 1, wherein the FOTA credentials in the information for updating an electronic device is located in a header of the information for updating an electronic device.
  • 5. A non-transitory computer-readable medium storing instructions for updating an electronic device over a network executable by a computer to cause the computer to: develop an update package for the electronic device;place a signature into the update package wherein the signature in the update package corresponds to a signature in an interchangeable circuit card in the electronic device, wherein the signature is unique to a system operator that operates the system on which the electronic device functions;store the update package in an update server; andsend the update package to the electronic device over the network, wherein the signature in the update package and the signature in the interchangeable circuit card are used to permit a secure update of the electronic device using the update package, wherein the signature in the update package and the signature in the interchangeable circuit card is validated by the system operator and the update packages is rejected if the validation fails.
  • 6. The medium of claim 5, wherein the signature in the update package and the signature in the interchangeable circuit card provide the system operator a control point for rejecting update packages that are not explicitly authorized by the system operator.
  • 7. The medium of claim 5, wherein the signature in the interchangeable circuit card is placed in the interchangeable circuit card during a manufacturing process and wherein the system operator provides the interchangeable circuit card.
  • 8. The medium of claim 5, wherein the signature is placed in the update packages in a post processing activity.
  • 9. An electronic device comprising: at least one processor operable to communicate over a network;non-volatile memory operably coupled to the at least one processor, wherein the non-volatile memory comprises code executable by the at least one processor to receive and process information for updating firmware and/or software in the electronic device;interface circuitry for operably coupling the at least one processor to a user interchangeable circuit card; andwherein the executable code causes at least a portion of the information for updating the firmware and/or software in the electronic device to be compared to a corresponding portion of information in the user interchangeable circuit card to determine whether processing of information for updating the firmware and/or software in the electronic device is allowed, wherein the at least a portion of the information for updating the firmware and/or software in the electronic device includes a set of Firmware-Over-the-Air (FOTA) credentials and wherein the corresponding portion of the information from the user interchangeable circuit card includes the set of FOTA credentials, and updating the firmware and/or software in the electronic device if a condition flag in the set of FOTA credentials is set to allow.
  • 10. The electronic device according to claim 9, wherein the network comprises a public wireless network.
  • 11. The electronic device according to claim 9, wherein the electronic device comprises a cellular handset.
  • 12. The electronic device according to claim 9, wherein the information for updating firmware and/or software in the electronic device comprises a set of instructions executable by the code to transform an first version of firmware and/or software to an updated version.
  • 13. The electronic device according to claim 9, wherein the user interchangeable circuit card comprises a subscriber identity module (SIM) card.
Parent Case Info

This application is a divisional of U.S. application Ser. No. 11/810,575, filed Jun. 6, 2007, entitled “Device Management in a Network,” now U.S. Pat. No. 8,209,676, which application claims priority to U.S. Provisional Application No. 60/812,376, entitled “Device Management in a Network,” filed Jun. 8, 2006. The specification of U.S. application Ser. No. 11/810,575 is incorporated herein by reference. The present application makes reference to U.S. Provisional Application Ser. No. 60/812,376 entitled “DEVICE MANAGEMENT IN A NETWORK” filed Jun. 8, 2006, the complete subject matter of which is hereby incorporated herein by reference, in its entirety. In addition, the present application makes reference to U.S. Provisional Patent Application Ser. No. 60/688,508. entitled “CUSTOMER CARE NETWORK WITH AUTOMATIC CALLBACK TO SUBSCRIBER”, filed Jun. 7, 2005, U.S. Provisional Patent Application Ser. No. 60/249,606, entitled “System and Method for Updating and Distributing Information,” filed Nov. 17, 2000, and International Patent Application Publication No. WO 02/41147 A1, entitled “System And Method For Updating And Distributing Information”, filed Nov. 19, 2001, and having publication date Mar. 23, 2002, the complete subject matter of each of which is hereby incorporated herein by reference, in its entirety.

US Referenced Citations (1193)
Number Name Date Kind
4337376 Gruenberg Jun 1982 A
4344091 Gardner et al. Aug 1982 A
4429387 Kaminski Jan 1984 A
4493083 Kinoshita Jan 1985 A
4645916 Raisleger Feb 1987 A
4783841 Crayson Nov 1988 A
4807182 Queen Feb 1989 A
4809170 Leblang et al. Feb 1989 A
5084816 Boese et al. Jan 1992 A
5155847 Kirouac et al. Oct 1992 A
5204960 Smith et al. Apr 1993 A
5261055 Moran et al. Nov 1993 A
5274823 Brenner et al. Dec 1993 A
5325531 McKeeman et al. Jun 1994 A
5333320 Seki Jul 1994 A
5392353 Morales Feb 1995 A
5394534 Kulakowski et al. Feb 1995 A
5410703 Nilsson et al. Apr 1995 A
5418837 Johansson et al. May 1995 A
5420616 Suemitsu et al. May 1995 A
5421006 Jablon et al. May 1995 A
5442771 Filepp et al. Aug 1995 A
5444765 Marui et al. Aug 1995 A
5450589 Maebayashi et al. Sep 1995 A
5455576 Clark, II et al. Oct 1995 A
5463766 Schieve et al. Oct 1995 A
5471592 Gove et al. Nov 1995 A
5479637 Lisimaque et al. Dec 1995 A
5479654 Squibb Dec 1995 A
5481713 Wetmore et al. Jan 1996 A
5491807 Freeman et al. Feb 1996 A
5491821 Kilis Feb 1996 A
5535357 Moran et al. Jul 1996 A
5537483 Stapleton et al. Jul 1996 A
5563931 Bishop et al. Oct 1996 A
5579522 Christeson et al. Nov 1996 A
5586304 Stupek, Jr. et al. Dec 1996 A
5586328 Caron et al. Dec 1996 A
5590277 Fuchs et al. Dec 1996 A
5594903 Bunnell et al. Jan 1997 A
5596738 Pope Jan 1997 A
5598531 Hill Jan 1997 A
5598534 Haas Jan 1997 A
5600844 Shaw et al. Feb 1997 A
5606693 Nilsen et al. Feb 1997 A
5608910 Shimakura Mar 1997 A
5623604 Russell et al. Apr 1997 A
5628016 Kukol May 1997 A
5638066 Horiuchi et al. Jun 1997 A
5649112 Yeager et al. Jul 1997 A
5649200 Leblang et al. Jul 1997 A
5666293 Metz et al. Sep 1997 A
5666364 Pierce et al. Sep 1997 A
5675628 Hokkanen Oct 1997 A
5677708 Matthews, III Oct 1997 A
5684944 Lubbers Nov 1997 A
5689712 Heisch Nov 1997 A
5694538 Okazaki et al. Dec 1997 A
5699275 Kennedy, III et al. Dec 1997 A
5699548 Choudhury et al. Dec 1997 A
5704031 Mikami et al. Dec 1997 A
5708709 Rose Jan 1998 A
5708776 Kikinis Jan 1998 A
5715462 Iwamoto et al. Feb 1998 A
5717737 Doviak et al. Feb 1998 A
5721824 Taylor Feb 1998 A
5724526 Kunita Mar 1998 A
5727202 Kucala Mar 1998 A
5729735 Meyering Mar 1998 A
5751231 Iverson May 1998 A
5752039 Tanimura May 1998 A
5752042 Cole et al. May 1998 A
5764658 Sekiguchi et al. Jun 1998 A
5765211 Luck Jun 1998 A
5768382 Schneier et al. Jun 1998 A
5774715 Madany et al. Jun 1998 A
5778440 Yiu et al. Jul 1998 A
5781921 Nichols Jul 1998 A
5790800 Gauvin et al. Aug 1998 A
5790860 Wetmore et al. Aug 1998 A
5790974 Tognazzini Aug 1998 A
5794254 McClain Aug 1998 A
5802338 Rechtschaffen et al. Sep 1998 A
5802554 Caceres et al. Sep 1998 A
5805899 Evans et al. Sep 1998 A
5809251 May et al. Sep 1998 A
5812753 Chiariotti Sep 1998 A
5812768 Page et al. Sep 1998 A
5815722 Kalwitz et al. Sep 1998 A
5822578 Frank et al. Oct 1998 A
5822692 Krishan et al. Oct 1998 A
5826012 Lettvin Oct 1998 A
5832000 Lin et al. Nov 1998 A
5832520 Miller Nov 1998 A
5835777 Staelin Nov 1998 A
5835911 Nakagawa et al. Nov 1998 A
5838981 Gotoh Nov 1998 A
5845077 Fawcett Dec 1998 A
5848064 Cowan Dec 1998 A
5864681 Proctor et al. Jan 1999 A
5875404 Messiet Feb 1999 A
5878124 Griesmer et al. Mar 1999 A
5878256 Bealkowski et al. Mar 1999 A
5881292 Sigal et al. Mar 1999 A
5887253 O'Neil et al. Mar 1999 A
5896566 Averbuch et al. Apr 1999 A
5901310 Rahman et al. May 1999 A
5901330 Sun et al. May 1999 A
5903669 Hirabayashi May 1999 A
5909581 Park Jun 1999 A
5913021 Masubuchi Jun 1999 A
5913027 Matsuda et al. Jun 1999 A
5919247 Van Hoff et al. Jul 1999 A
5930504 Gabel Jul 1999 A
5931909 Taylor Aug 1999 A
5933498 Schneck et al. Aug 1999 A
5933604 Inakoshi Aug 1999 A
5937019 Padovani Aug 1999 A
5943406 Leta et al. Aug 1999 A
5944839 Isenberg Aug 1999 A
5946686 Schmuck et al. Aug 1999 A
5950199 Schmuck et al. Sep 1999 A
5953653 Josenhans et al. Sep 1999 A
5954817 Janssen et al. Sep 1999 A
5960189 Stupek, Jr. et al. Sep 1999 A
5960445 Tamori et al. Sep 1999 A
5968182 Chen et al. Oct 1999 A
5973626 Berger et al. Oct 1999 A
5974179 Caklovic Oct 1999 A
5974250 Angelo et al. Oct 1999 A
5974311 Lipsit Oct 1999 A
5974312 Hayes, Jr. et al. Oct 1999 A
5974454 Apfel et al. Oct 1999 A
5974574 Lennie et al. Oct 1999 A
5983289 Ishikawa et al. Nov 1999 A
5987325 Tayloe Nov 1999 A
5987477 Schmuck et al. Nov 1999 A
5987506 Carter et al. Nov 1999 A
5999740 Rowley Dec 1999 A
5999978 Angal et al. Dec 1999 A
6006034 Heath et al. Dec 1999 A
6009274 Fletcher et al. Dec 1999 A
6009497 Wells et al. Dec 1999 A
6011973 Valentine et al. Jan 2000 A
6014561 Molne Jan 2000 A
6018747 Burns et al. Jan 2000 A
6021275 Horwat Feb 2000 A
6021415 Cannon et al. Feb 2000 A
6021428 Miloslavsky Feb 2000 A
6029004 Bortnikov et al. Feb 2000 A
6029065 Shah Feb 2000 A
6029196 Lenz Feb 2000 A
6031830 Cowan Feb 2000 A
6032044 Shannon et al. Feb 2000 A
6032216 Schmuck et al. Feb 2000 A
6038636 Brown, III et al. Mar 2000 A
6040781 Murray Mar 2000 A
6041333 Bretschneider et al. Mar 2000 A
6044270 Raith Mar 2000 A
6044403 Gerszberg Mar 2000 A
6047071 Shah Apr 2000 A
6047242 Benson Apr 2000 A
6047279 Barrack et al. Apr 2000 A
6052531 Waldin et al. Apr 2000 A
6052600 Fette et al. Apr 2000 A
6058435 Sassin et al. May 2000 A
6064814 Capriles et al. May 2000 A
6070012 Eitner et al. May 2000 A
6070142 McDonough et al. May 2000 A
6073206 Piwonka et al. Jun 2000 A
6073214 Fawcett Jun 2000 A
6077315 Greenbaum et al. Jun 2000 A
6080207 Kroening et al. Jun 2000 A
6081518 Bowman-Amuah Jun 2000 A
6081731 Boltz et al. Jun 2000 A
6088759 Hasbun et al. Jul 2000 A
6097942 Laiho Aug 2000 A
6097966 Hanley Aug 2000 A
6104506 Hirokawa Aug 2000 A
6105063 Hayes, Jr. Aug 2000 A
6106570 Mizuhara Aug 2000 A
6112024 Almond et al. Aug 2000 A
6112197 Chatterjee et al. Aug 2000 A
6115693 McDonough et al. Sep 2000 A
6115737 Ely et al. Sep 2000 A
6117187 Staelin Sep 2000 A
6123737 Sadowsky Sep 2000 A
6126327 Bi et al. Oct 2000 A
6128695 Estakhri et al. Oct 2000 A
6128713 Eisler et al. Oct 2000 A
6131096 Ng et al. Oct 2000 A
6134530 Bunting et al. Oct 2000 A
6138002 Alperovich et al. Oct 2000 A
6138239 Veil Oct 2000 A
6138249 Nolet Oct 2000 A
6141564 Bruner et al. Oct 2000 A
6144849 Nodoushani et al. Nov 2000 A
6145012 Small Nov 2000 A
6148192 Ahvenainen Nov 2000 A
6148441 Woodward Nov 2000 A
6151643 Cheng et al. Nov 2000 A
6157559 Yoo Dec 2000 A
6163274 Lindgren Dec 2000 A
6167567 Chiles et al. Dec 2000 A
6178452 Miyamoto Jan 2001 B1
6189096 Haverty Feb 2001 B1
6195546 Leung et al. Feb 2001 B1
6195946 Lott et al. Mar 2001 B1
6198946 Shin et al. Mar 2001 B1
6199203 Saboff Mar 2001 B1
6199204 Donohue Mar 2001 B1
6202207 Donohue Mar 2001 B1
6202208 Holiday Mar 2001 B1
6209111 Kadyk et al. Mar 2001 B1
6209127 Mori et al. Mar 2001 B1
6212281 Vanstone Apr 2001 B1
6212489 Klein et al. Apr 2001 B1
6212557 Oran Apr 2001 B1
6212659 Zehavi Apr 2001 B1
6223039 Holm et al. Apr 2001 B1
6223301 Santeler et al. Apr 2001 B1
6223343 Hopwood et al. Apr 2001 B1
6230190 Edmonds et al. May 2001 B1
6230319 Britt, Jr. et al. May 2001 B1
6233332 Anderson et al. May 2001 B1
6247168 Green Jun 2001 B1
6249817 Nakabayashi et al. Jun 2001 B1
6256497 Chambers Jul 2001 B1
6260156 Garvin et al. Jul 2001 B1
6262973 Shiraishi et al. Jul 2001 B1
6263214 Yazaki et al. Jul 2001 B1
6266513 Briancon Jul 2001 B1
6266809 Craig et al. Jul 2001 B1
6266810 Tanaka et al. Jul 2001 B1
6272333 Smith Aug 2001 B1
6272545 Flanagin et al. Aug 2001 B1
6278449 Sugiarto et al. Aug 2001 B1
6279153 Bi et al. Aug 2001 B1
6282709 Reha et al. Aug 2001 B1
6289509 Kryloff Sep 2001 B1
6292492 Bonomi et al. Sep 2001 B1
6292934 Davidson et al. Sep 2001 B1
6301710 Fujiwara Oct 2001 B1
6308061 Criss et al. Oct 2001 B1
6311322 Ikeda et al. Oct 2001 B1
6314425 Serbinis et al. Nov 2001 B1
6317872 Gee et al. Nov 2001 B1
6317880 Chamberlain et al. Nov 2001 B1
6321263 Luzzi et al. Nov 2001 B1
6321348 Kobata Nov 2001 B1
6324402 Waugh et al. Nov 2001 B1
6324693 Brodersen et al. Nov 2001 B1
6330715 Razzaghe Dec 2001 B1
6333980 Hollatz et al. Dec 2001 B1
6334212 Nakajima Dec 2001 B1
6343379 Ozawa et al. Jan 2002 B1
6345288 Reed et al. Feb 2002 B1
6347331 Dutcher et al. Feb 2002 B1
6349205 Fang et al. Feb 2002 B1
6353737 Herzog Mar 2002 B1
6357021 Kitagawa et al. Mar 2002 B1
6360362 Fichtner et al. Mar 2002 B1
6360366 Heath et al. Mar 2002 B1
6363524 Loy Mar 2002 B1
6366584 Gulliford et al. Apr 2002 B1
6366777 Uusitalo Apr 2002 B1
6367072 Justice et al. Apr 2002 B1
6374250 Ajtai et al. Apr 2002 B2
6381456 Ko Apr 2002 B1
6381740 Miller et al. Apr 2002 B1
6381742 Forbes et al. Apr 2002 B2
6389464 Krishnamurthy et al. May 2002 B1
6389592 Ayres et al. May 2002 B1
6393018 Miloslavsky May 2002 B2
6393585 Houha et al. May 2002 B1
6397385 Kravitz May 2002 B1
6400965 Phillips et al. Jun 2002 B1
6405364 Bowman-Amuah Jun 2002 B1
6408175 Park Jun 2002 B1
6408434 Fujiwara Jun 2002 B1
6412079 Edmonds et al. Jun 2002 B1
6418311 Chmaytelli et al. Jul 2002 B1
6421325 Kikinis Jul 2002 B1
6421776 Hillis et al. Jul 2002 B1
6424966 Meyerzon et al. Jul 2002 B1
6425125 Fries et al. Jul 2002 B1
6426955 Gossett-Dalton, Jr. et al. Jul 2002 B1
6434537 Grimes Aug 2002 B1
6434695 Esfahani et al. Aug 2002 B1
6438585 Mousseau et al. Aug 2002 B2
6442358 Regelsberger et al. Aug 2002 B1
6442660 Henerlau et al. Aug 2002 B1
6442754 Curtis Aug 2002 B1
6445914 Findikli et al. Sep 2002 B1
6446206 Feldbaum Sep 2002 B1
6449270 Miloslavsky Sep 2002 B1
6452602 Morein Sep 2002 B1
6456732 Kimbell et al. Sep 2002 B1
6456843 Daly Sep 2002 B1
6457175 Lerche Sep 2002 B1
6463300 Oshima Oct 2002 B1
6466999 Sliger et al. Oct 2002 B1
6467087 Yang Oct 2002 B1
6470496 Kato et al. Oct 2002 B1
6477531 Sullivan et al. Nov 2002 B1
6477703 Smith et al. Nov 2002 B1
6487403 Carroll Nov 2002 B2
6487717 Brunemann et al. Nov 2002 B1
6487723 MacInnis Nov 2002 B1
6493871 McGuire et al. Dec 2002 B1
6496875 Cheng et al. Dec 2002 B2
6496978 Ito Dec 2002 B1
6496979 Chen et al. Dec 2002 B1
6502193 Barber Dec 2002 B1
6504932 Vasnier et al. Jan 2003 B1
6505228 Schoening et al. Jan 2003 B1
6512919 Ogasawara Jan 2003 B2
6526574 Jones Feb 2003 B1
6529729 Nodoushani et al. Mar 2003 B1
6530036 Frey, Jr. Mar 2003 B1
6535894 Schmidt et al. Mar 2003 B1
6536038 Ewertz et al. Mar 2003 B1
6542504 Mahler et al. Apr 2003 B1
6542906 Korn Apr 2003 B2
6546243 Tiedemann, Jr. et al. Apr 2003 B2
6546419 Humpleman et al. Apr 2003 B1
6546492 Walker et al. Apr 2003 B1
6546552 Peleg Apr 2003 B1
6549770 Marran Apr 2003 B1
6553113 Dhir et al. Apr 2003 B1
6553375 Huang et al. Apr 2003 B1
6553490 Kottapurath et al. Apr 2003 B1
6556842 Ericsson Apr 2003 B1
6564055 Hronek et al. May 2003 B1
6564369 Hove et al. May 2003 B1
6564371 Goldman et al. May 2003 B1
6571244 Larson May 2003 B1
6574657 Dickinson Jun 2003 B1
6577229 Bonneau et al. Jun 2003 B1
6581105 Miloslavsky et al. Jun 2003 B2
6587684 Hsu et al. Jul 2003 B1
6587685 Mittal et al. Jul 2003 B2
6591095 Palaniswamy et al. Jul 2003 B1
6591098 Shieh et al. Jul 2003 B1
6594723 Chapman et al. Jul 2003 B1
6594822 Schweitz et al. Jul 2003 B1
6595856 Ginsburg et al. Jul 2003 B1
6601153 Engelbrecht et al. Jul 2003 B1
6601212 Guha et al. Jul 2003 B1
6603854 Judkins et al. Aug 2003 B1
6603968 Anvekar et al. Aug 2003 B2
6606744 Mikurak Aug 2003 B1
6615038 Moles et al. Sep 2003 B1
6615240 Sullivan et al. Sep 2003 B1
6615404 Garfunkel et al. Sep 2003 B1
6615405 Goldman et al. Sep 2003 B1
6622017 Hoffman Sep 2003 B1
6625451 La Medica et al. Sep 2003 B1
6625641 Hare et al. Sep 2003 B1
6636958 Abboud et al. Oct 2003 B2
6640334 Rasmussen Oct 2003 B1
6643506 Criss et al. Nov 2003 B1
6643697 Eves Nov 2003 B1
6647260 Dusse et al. Nov 2003 B2
6647480 Bolan et al. Nov 2003 B1
6651249 Waldin et al. Nov 2003 B2
6658090 Harjunen et al. Dec 2003 B1
6659345 Sukeda et al. Dec 2003 B2
6665376 Brown Dec 2003 B1
6665861 Francis et al. Dec 2003 B1
6668049 Koch et al. Dec 2003 B1
6668336 Lasser Dec 2003 B2
6671265 Hwang et al. Dec 2003 B1
6671703 Thompson et al. Dec 2003 B2
6671818 Mikurak Dec 2003 B1
6675201 Parkkinen Jan 2004 B1
6675382 Foster Jan 2004 B1
6683993 Mead Jan 2004 B1
6684396 Brittain et al. Jan 2004 B1
6687341 Koch et al. Feb 2004 B1
6687901 Imamatsu Feb 2004 B1
6690390 Walters et al. Feb 2004 B1
6690788 Bauer et al. Feb 2004 B1
6694314 Sullivan et al. Feb 2004 B1
6694336 Multer et al. Feb 2004 B1
6697808 Hurwood et al. Feb 2004 B1
6697969 Merriam Feb 2004 B1
6698013 Bertero et al. Feb 2004 B1
6701521 McLlroy et al. Mar 2004 B1
6704303 Bowman-Amuah Mar 2004 B1
6704864 Philyaw Mar 2004 B1
6711520 Arnaout et al. Mar 2004 B2
6714642 Dhir et al. Mar 2004 B2
6721713 Guheen et al. Apr 2004 B1
6721946 Fogarty et al. Apr 2004 B1
6725048 Mao et al. Apr 2004 B2
6725056 Moles et al. Apr 2004 B1
6725268 Jackel et al. Apr 2004 B1
6725392 Frey et al. Apr 2004 B1
6728531 Lee et al. Apr 2004 B1
6728950 Davis et al. Apr 2004 B2
6730027 Iliff May 2004 B2
6731932 Rune et al. May 2004 B1
6735434 Criss et al. May 2004 B2
6738803 Dodrill et al. May 2004 B1
6741848 Timonen et al. May 2004 B2
6741934 Chen et al. May 2004 B2
6741980 Langseth et al. May 2004 B1
6742025 Jennery et al. May 2004 B2
6748209 Lipsit Jun 2004 B2
6754181 Elliott et al. Jun 2004 B1
6754714 Chebrolu Jun 2004 B1
6754722 Herzi Jun 2004 B2
6754723 Kato Jun 2004 B2
6754894 Costello et al. Jun 2004 B1
6754895 Bartel et al. Jun 2004 B1
6754896 Mishra et al. Jun 2004 B2
6757263 Olds Jun 2004 B1
6757893 Haikin Jun 2004 B1
6760730 Kataoka Jul 2004 B1
6760908 Ren Jul 2004 B2
6763104 Judkins et al. Jul 2004 B1
6763403 Cheng et al. Jul 2004 B2
6772338 Hull Aug 2004 B1
6775267 Kung et al. Aug 2004 B1
6775423 Kulkarni et al. Aug 2004 B2
6779177 Bahrs et al. Aug 2004 B1
6785834 Chefalas et al. Aug 2004 B2
6789110 Short et al. Sep 2004 B1
6789158 Takahashi Sep 2004 B2
6789215 Rupp et al. Sep 2004 B1
6789255 Pedrizetti et al. Sep 2004 B1
6791877 Miura et al. Sep 2004 B2
6798876 Bala Sep 2004 B1
6799155 Lindemann et al. Sep 2004 B1
6802061 Parthasarathy et al. Oct 2004 B1
6807558 Hassett et al. Oct 2004 B1
6807574 Partovi et al. Oct 2004 B1
6813571 Lightbody et al. Nov 2004 B2
6816719 Heinonen et al. Nov 2004 B1
6820214 Cabrera et al. Nov 2004 B1
6820259 Kawamata et al. Nov 2004 B1
6823432 Ruffle et al. Nov 2004 B2
6832373 O'Neill Dec 2004 B2
6836657 Ji et al. Dec 2004 B2
6836859 Berg et al. Dec 2004 B2
6839841 Medvinsky et al. Jan 2005 B1
6842628 Arnold et al. Jan 2005 B1
6845370 Burkey et al. Jan 2005 B2
6845434 Lin Jan 2005 B2
6847970 Kar et al. Jan 2005 B2
6850533 Gerszberg et al. Feb 2005 B2
6850614 Collins Feb 2005 B1
6856676 Pirot et al. Feb 2005 B1
6865387 Bucknell et al. Mar 2005 B2
6873988 Herrmann et al. Mar 2005 B2
6879685 Peterson et al. Apr 2005 B1
6880051 Timpanaro-Perrotta Apr 2005 B2
6883168 James et al. Apr 2005 B1
6885862 Pearson Apr 2005 B1
6889054 Himmel et al. May 2005 B2
6892207 McKay et al. May 2005 B2
6895387 Roberts et al. May 2005 B1
6904405 Suominen Jun 2005 B2
6907478 Li et al. Jun 2005 B2
6912591 Lash Jun 2005 B2
6915265 Johnson Jul 2005 B1
6915325 Lee et al. Jul 2005 B1
6915452 Froehlich et al. Jul 2005 B2
6918112 Bourke-Dunphy et al. Jul 2005 B2
6922722 Mann et al. Jul 2005 B1
6925300 Horne Aug 2005 B2
6925467 Gu et al. Aug 2005 B2
6928108 Nelson et al. Aug 2005 B2
6928468 Leermakers Aug 2005 B2
6934028 Ho et al. Aug 2005 B2
6938076 Meyer et al. Aug 2005 B2
6938109 Sliger et al. Aug 2005 B1
6941129 Marce et al. Sep 2005 B2
6941136 Study et al. Sep 2005 B2
6941453 Rao Sep 2005 B2
6944621 Collart Sep 2005 B1
6948099 Tallam Sep 2005 B1
6948104 Herley et al. Sep 2005 B2
6950660 Hsu et al. Sep 2005 B1
6952823 Kryloff et al. Oct 2005 B2
6956846 Lewis et al. Oct 2005 B2
6957041 Christensen et al. Oct 2005 B2
6957062 Castrogiovanni et al. Oct 2005 B2
6957066 Stammers et al. Oct 2005 B1
6959436 Peng Oct 2005 B2
6961417 Koch Nov 2005 B2
6966058 Earl et al. Nov 2005 B2
6968179 De Vries Nov 2005 B1
6968184 Criss et al. Nov 2005 B2
6968543 Takahara et al. Nov 2005 B2
6970181 Fadel Nov 2005 B1
6970189 Bernstein et al. Nov 2005 B1
6970917 Kushwaha et al. Nov 2005 B1
6976058 Brown et al. Dec 2005 B1
6976251 Meyerson Dec 2005 B2
6978453 Rao et al. Dec 2005 B2
6979253 Thyssen Dec 2005 B2
6981020 Miloslavsky et al. Dec 2005 B2
6983458 Honda Jan 2006 B1
6986133 O'Brien et al. Jan 2006 B2
6988182 Teachman et al. Jan 2006 B2
6990656 Ersek et al. Jan 2006 B2
6990659 Imai Jan 2006 B1
6990660 Moshir et al. Jan 2006 B2
6996603 Srinivasan Feb 2006 B1
6996818 Jacobi et al. Feb 2006 B2
6999976 Abdallah et al. Feb 2006 B2
6999990 Sullivan et al. Feb 2006 B1
7002919 El-Sayed Feb 2006 B1
7003534 Peng Feb 2006 B2
7007049 Peng Feb 2006 B2
7007083 Chesley Feb 2006 B1
7010303 Lewis et al. Mar 2006 B2
7024557 Moles et al. Apr 2006 B1
7027586 Bushey et al. Apr 2006 B2
7031972 Ren et al. Apr 2006 B2
7032033 Ledoux et al. Apr 2006 B1
7039594 Gersting May 2006 B1
7039796 Ballard May 2006 B2
7047448 Rao et al. May 2006 B2
7050566 Becerra et al. May 2006 B2
7055098 Hull et al. May 2006 B2
7055148 Marsh et al. May 2006 B2
7058849 Erstad Jun 2006 B2
7058860 Miller et al. Jun 2006 B2
7058941 Venkatesan Jun 2006 B1
7058978 Feuerstein et al. Jun 2006 B2
7061891 Kilfoyle et al. Jun 2006 B1
7062031 Becerra et al. Jun 2006 B2
7065347 Vikse et al. Jun 2006 B1
7069452 Hind et al. Jun 2006 B1
7069545 Wang et al. Jun 2006 B2
7069578 Prus et al. Jun 2006 B1
7073017 Yamamoto Jul 2006 B2
7073172 Chamberlain Jul 2006 B2
7076051 Brown et al. Jul 2006 B2
7080371 Arnaiz et al. Jul 2006 B1
7080372 Cole Jul 2006 B1
7082549 Rao et al. Jul 2006 B2
7086049 Goodman Aug 2006 B2
7089036 Prise Aug 2006 B2
7089259 Kouznetsov et al. Aug 2006 B1
7089549 Venkiteswaran Aug 2006 B2
7089550 Bakke et al. Aug 2006 B2
7092734 Herle et al. Aug 2006 B2
7093244 Lajoie et al. Aug 2006 B2
7096311 Chiang Aug 2006 B2
7099896 Fields et al. Aug 2006 B2
7100083 Little et al. Aug 2006 B2
7103172 Brown et al. Sep 2006 B2
7103779 Kiehtreiber et al. Sep 2006 B2
7106843 Gainsboro et al. Sep 2006 B1
7107329 Schroder et al. Sep 2006 B1
7110525 Heller et al. Sep 2006 B1
7111201 Largman et al. Sep 2006 B2
7111292 Bonnett et al. Sep 2006 B2
7117172 Black Oct 2006 B1
7117195 Chantrain et al. Oct 2006 B2
7120909 Shibuya Oct 2006 B1
7127250 Gallagher et al. Oct 2006 B2
7130807 Mikurak Oct 2006 B1
7130896 Engel et al. Oct 2006 B2
7134050 Wenzel Nov 2006 B2
7136857 Chen et al. Nov 2006 B2
7137034 Largman et al. Nov 2006 B2
7143115 Jones et al. Nov 2006 B2
7143153 Black et al. Nov 2006 B1
7143405 Liu et al. Nov 2006 B2
7145898 Elliott Dec 2006 B1
7146002 Smith et al. Dec 2006 B1
7146609 Thurston et al. Dec 2006 B2
7149508 Herle Dec 2006 B2
7150015 Pace et al. Dec 2006 B2
7165109 Chiloyan et al. Jan 2007 B2
7165173 Herle Jan 2007 B1
7171660 McCaleb et al. Jan 2007 B2
7178141 Piazza Feb 2007 B2
7181731 Pace et al. Feb 2007 B2
7188214 Kasriel et al. Mar 2007 B1
7194728 Sirota et al. Mar 2007 B1
7200390 Henager et al. Apr 2007 B1
7203723 Ogawa Apr 2007 B2
7206576 Jain et al. Apr 2007 B2
7210010 Ogle Apr 2007 B2
7215961 Gallagher et al. May 2007 B2
7216343 Das et al. May 2007 B2
7222340 Willis, II May 2007 B2
7230951 Mizell et al. Jun 2007 B2
7231411 Lu Jun 2007 B1
7240102 Kouznetsov et al. Jul 2007 B1
7240356 Iki et al. Jul 2007 B2
7242929 Draluk et al. Jul 2007 B2
7247671 Overbeek et al. Jul 2007 B2
7251697 Piotrowski Jul 2007 B2
7263379 Parkulo et al. Aug 2007 B1
7266371 Amin et al. Sep 2007 B1
7269821 Sahinoja et al. Sep 2007 B2
7272711 Suda et al. Sep 2007 B2
7274911 Li Sep 2007 B2
7275243 Gibbons et al. Sep 2007 B2
7277529 Wuthnow et al. Oct 2007 B1
7287068 Eriksson et al. Oct 2007 B1
7292846 Mittal Nov 2007 B2
7293115 DaCosta et al. Nov 2007 B2
7310720 Cornett Dec 2007 B2
7310801 Burkhardt et al. Dec 2007 B2
7313791 Chen et al. Dec 2007 B1
7324514 Haq et al. Jan 2008 B1
7324815 Ross et al. Jan 2008 B2
7325233 Kuck et al. Jan 2008 B2
7346683 Inoue Mar 2008 B2
7349695 Oommen et al. Mar 2008 B2
7350205 Ji Mar 2008 B2
7353533 Wright et al. Apr 2008 B2
7367027 Chen et al. Apr 2008 B1
7369851 Okonnen et al. May 2008 B2
7373109 Pohja et al. May 2008 B2
7376711 Du et al. May 2008 B2
7376944 Crisan et al. May 2008 B2
7386846 Rajaram Jun 2008 B2
7405537 Hoffman et al. Jul 2008 B2
7409685 Chen et al. Aug 2008 B2
7415706 Raju et al. Aug 2008 B1
7433936 Zhu et al. Oct 2008 B2
7461294 Sano Dec 2008 B2
7469306 Ng Dec 2008 B2
7480907 Marolia et al. Jan 2009 B1
7493128 Tang et al. Feb 2009 B2
7500143 Buia et al. Mar 2009 B2
7509496 Skog et al. Mar 2009 B2
7509652 Niemi Mar 2009 B2
7518504 Peeters Apr 2009 B2
7523155 Hayes, Jr. Apr 2009 B2
7526563 Ingimundarson et al. Apr 2009 B2
7555750 Lilley Jun 2009 B1
7577722 Khandekar et al. Aug 2009 B1
7584466 Rao Sep 2009 B1
7644404 Rao et al. Jan 2010 B2
7657884 Okonnen et al. Feb 2010 B2
7657886 Chen et al. Feb 2010 B1
7664923 Kim et al. Feb 2010 B2
7673300 Herle et al. Mar 2010 B2
7673325 Vincent et al. Mar 2010 B2
7680828 Gorelik Mar 2010 B2
7689981 Gustafson Mar 2010 B1
7698698 Skan Apr 2010 B2
7707570 Yoshimura et al. Apr 2010 B2
7711782 Kim et al. May 2010 B2
7725889 Gustafson et al. May 2010 B2
7739679 Qumei Jun 2010 B2
7784065 Polivy et al. Aug 2010 B2
7797693 Gustafson et al. Sep 2010 B1
7797695 Motta Sep 2010 B2
7810088 Herle et al. Oct 2010 B2
7818556 Lima et al. Oct 2010 B2
7823148 Deshpande et al. Oct 2010 B2
7823155 Misra et al. Oct 2010 B2
7844964 Marolia Nov 2010 B2
7864700 Shepard et al. Jan 2011 B2
7873714 Kaappa et al. Jan 2011 B2
7889869 Ypya et al. Feb 2011 B2
8063929 Kurtz et al. Nov 2011 B2
8099078 Lazaridis Jan 2012 B2
8209676 Kapadekar et al. Jun 2012 B2
20010008024 Inaba Jul 2001 A1
20010018673 Goldband et al. Aug 2001 A1
20010029178 Criss et al. Oct 2001 A1
20010041556 Laursen et al. Nov 2001 A1
20010042112 Slivka et al. Nov 2001 A1
20010044934 Hirai et al. Nov 2001 A1
20010047363 Peng Nov 2001 A1
20010047441 Robertson Nov 2001 A1
20010048728 Peng Dec 2001 A1
20010049263 Zhang Dec 2001 A1
20010052052 Peng Dec 2001 A1
20010052066 Lee et al. Dec 2001 A1
20010053688 Rignell et al. Dec 2001 A1
20010055414 Thieme Dec 2001 A1
20010056348 Hyde-Thomson et al. Dec 2001 A1
20020010702 Ajtai et al. Jan 2002 A1
20020013831 Astala et al. Jan 2002 A1
20020023258 Elwahab et al. Feb 2002 A1
20020028673 Chang et al. Mar 2002 A1
20020030634 Noda et al. Mar 2002 A1
20020039394 Buchwald et al. Apr 2002 A1
20020046400 Burch Apr 2002 A1
20020052938 Kanemitsu May 2002 A1
20020053044 Gold et al. May 2002 A1
20020059526 Dillon et al. May 2002 A1
20020065950 Katz et al. May 2002 A1
20020069259 Kushwaha et al. Jun 2002 A1
20020072359 Moles et al. Jun 2002 A1
20020073304 Marsh et al. Jun 2002 A1
20020073309 Kurn et al. Jun 2002 A1
20020075824 Willekes et al. Jun 2002 A1
20020077094 Leppanen Jun 2002 A1
20020078142 Moore et al. Jun 2002 A1
20020078185 Swerup et al. Jun 2002 A1
20020078209 Peng Jun 2002 A1
20020085704 Shires Jul 2002 A1
20020087668 San Martin et al. Jul 2002 A1
20020090934 Mitchelmore Jul 2002 A1
20020091568 Kraft et al. Jul 2002 A1
20020091807 Goodman Jul 2002 A1
20020091815 Anderson et al. Jul 2002 A1
20020092008 Kehne et al. Jul 2002 A1
20020092010 Fiske Jul 2002 A1
20020092011 Liu et al. Jul 2002 A1
20020095501 Chiloyan et al. Jul 2002 A1
20020095615 Hastings et al. Jul 2002 A1
20020099726 Crudele et al. Jul 2002 A1
20020099950 Smith Jul 2002 A1
20020100028 Kosaka et al. Jul 2002 A1
20020100036 Moshir et al. Jul 2002 A1
20020107795 Minear et al. Aug 2002 A1
20020112046 Kushwaha et al. Aug 2002 A1
20020112047 Kushwaha et al. Aug 2002 A1
20020114384 Nelson et al. Aug 2002 A1
20020116261 Moskowitz et al. Aug 2002 A1
20020116665 Pickover et al. Aug 2002 A1
20020120776 Eggebraaten et al. Aug 2002 A1
20020120810 Brouwer Aug 2002 A1
20020123335 Luna et al. Sep 2002 A1
20020123359 Wei et al. Sep 2002 A1
20020123934 Tanaka et al. Sep 2002 A1
20020124007 Zhao Sep 2002 A1
20020124209 Faust et al. Sep 2002 A1
20020129355 Velten et al. Sep 2002 A1
20020131404 Mehta et al. Sep 2002 A1
20020138567 Ogawa Sep 2002 A1
20020144005 Mae et al. Oct 2002 A1
20020144254 Owada Oct 2002 A1
20020152005 Bagnordi Oct 2002 A1
20020156863 Peng Oct 2002 A1
20020157089 Patel Oct 2002 A1
20020157090 Anton, Jr. Oct 2002 A1
20020159479 Watanuki et al. Oct 2002 A1
20020161658 Sussman Oct 2002 A1
20020162098 Suzuki Oct 2002 A1
20020166001 Cheng et al. Nov 2002 A1
20020166027 Shirasawa et al. Nov 2002 A1
20020170052 Radatti Nov 2002 A1
20020174338 Tomita et al. Nov 2002 A1
20020174422 Kelley et al. Nov 2002 A1
20020178241 Eriksson Nov 2002 A1
20020184208 Kato Dec 2002 A1
20020184619 Meyerson Dec 2002 A1
20020188886 Liu et al. Dec 2002 A1
20020193100 Riffe et al. Dec 2002 A1
20020194532 Nagasawa Dec 2002 A1
20020197991 Anvekar et al. Dec 2002 A1
20020198971 Resnick et al. Dec 2002 A1
20020198976 Davenport Dec 2002 A1
20030005108 Bartley et al. Jan 2003 A1
20030005362 Miller et al. Jan 2003 A1
20030005426 Scholtens et al. Jan 2003 A1
20030009752 Gupta Jan 2003 A1
20030009753 Brodersen et al. Jan 2003 A1
20030013434 Rosenberg et al. Jan 2003 A1
20030018524 Fishman et al. Jan 2003 A1
20030018764 Shell et al. Jan 2003 A1
20030018810 Karagiannis et al. Jan 2003 A1
20030018889 Burnett et al. Jan 2003 A1
20030022657 Herschberg et al. Jan 2003 A1
20030022663 Rajaram et al. Jan 2003 A1
20030023573 Chan et al. Jan 2003 A1
20030023849 Martin, Jr. et al. Jan 2003 A1
20030023964 Rajaram et al. Jan 2003 A1
20030027563 Herle et al. Feb 2003 A1
20030027581 Jokinen et al. Feb 2003 A1
20030031306 Pederson et al. Feb 2003 A1
20030033358 Tran et al. Feb 2003 A1
20030033525 Rajaram Feb 2003 A1
20030033599 Rajaram et al. Feb 2003 A1
20030036919 Felt et al. Feb 2003 A1
20030037075 Hannigan et al. Feb 2003 A1
20030041125 Salomon Feb 2003 A1
20030041127 Turnbull Feb 2003 A1
20030043180 Gusler et al. Mar 2003 A1
20030044086 Jia et al. Mar 2003 A1
20030046485 Zitlaw Mar 2003 A1
20030046524 Zimmer et al. Mar 2003 A1
20030046680 Gentry Mar 2003 A1
20030054811 Han et al. Mar 2003 A1
20030055919 Fong et al. Mar 2003 A1
20030055931 Cravo De Almeida et al. Mar 2003 A1
20030061323 East et al. Mar 2003 A1
20030061384 Nakatani Mar 2003 A1
20030065738 Yang et al. Apr 2003 A1
20030066062 Brannock et al. Apr 2003 A1
20030068162 Tsai et al. Apr 2003 A1
20030074658 Kim Apr 2003 A1
20030074672 Daniels Apr 2003 A1
20030081557 Mettala et al. May 2003 A1
20030081786 Nakano et al. May 2003 A1
20030084138 Tavis et al. May 2003 A1
20030084177 Mulligan May 2003 A1
20030084283 Pixton May 2003 A1
20030084434 Ren et al. May 2003 A1
20030084435 Messer et al. May 2003 A1
20030088868 Chang et al. May 2003 A1
20030092438 Moore et al. May 2003 A1
20030093545 Liu et al. May 2003 A1
20030095648 Kaib et al. May 2003 A1
20030097431 Dill May 2003 A1
20030100303 Armbruster et al. May 2003 A1
20030101246 Lahti May 2003 A1
20030101446 McManus et al. May 2003 A1
20030103484 Oommen et al. Jun 2003 A1
20030110412 Neville Jun 2003 A1
20030110484 Famolari Jun 2003 A1
20030112752 Irifune et al. Jun 2003 A1
20030117956 Lee Jun 2003 A1
20030121032 Cho et al. Jun 2003 A1
20030131087 Shippy et al. Jul 2003 A1
20030131226 Spencer et al. Jul 2003 A1
20030133552 Pillai et al. Jul 2003 A1
20030143991 Minear et al. Jul 2003 A1
20030149735 Stark et al. Aug 2003 A1
20030154471 Teachman et al. Aug 2003 A1
20030156719 Cronce Aug 2003 A1
20030158973 Tsukada Aug 2003 A1
20030162533 Moles et al. Aug 2003 A1
20030163508 Goodman Aug 2003 A1
20030163551 Riordan Aug 2003 A1
20030163805 Hata et al. Aug 2003 A1
20030172094 Lauria et al. Sep 2003 A1
20030172138 McCormack et al. Sep 2003 A1
20030172175 McCormack et al. Sep 2003 A1
20030177255 Yun Sep 2003 A1
20030177485 Waldin et al. Sep 2003 A1
20030182414 O'Neill Sep 2003 A1
20030186689 Herle et al. Oct 2003 A1
20030186695 Bridges et al. Oct 2003 A1
20030186722 Weiner Oct 2003 A1
20030188120 Maeda Oct 2003 A1
20030188156 Yasala et al. Oct 2003 A1
20030191955 Wagner et al. Oct 2003 A1
20030194033 Tiedemann et al. Oct 2003 A1
20030195110 Moody et al. Oct 2003 A1
20030195753 Homuth Oct 2003 A1
20030195951 Wittel et al. Oct 2003 A1
20030196110 Lampson et al. Oct 2003 A1
20030198282 Tujkovic et al. Oct 2003 A1
20030204640 Sahinoja et al. Oct 2003 A1
20030212742 Hochmuth et al. Nov 2003 A1
20030214919 Kilfoyle et al. Nov 2003 A1
20030217193 Thurston et al. Nov 2003 A1
20030217358 Thurston et al. Nov 2003 A1
20030221190 Deshpande et al. Nov 2003 A1
20030224761 Goto Dec 2003 A1
20030226030 Hurst et al. Dec 2003 A1
20030226137 Nagao Dec 2003 A1
20030233649 Reimert Dec 2003 A1
20040002943 Merrill et al. Jan 2004 A1
20040003266 Moshir et al. Jan 2004 A1
20040005906 Okumura et al. Jan 2004 A1
20040006723 Erstad Jan 2004 A1
20040006760 Gove et al. Jan 2004 A1
20040008113 Pradhan et al. Jan 2004 A1
20040015521 Hudicka Jan 2004 A1
20040015857 Cornelius et al. Jan 2004 A1
20040015940 Heisey et al. Jan 2004 A1
20040015952 Lajoie et al. Jan 2004 A1
20040017831 Shen et al. Jan 2004 A1
20040018831 Majmundar et al. Jan 2004 A1
20040026008 Delisle Feb 2004 A1
20040031027 Hiltgen Feb 2004 A1
20040031029 Lee et al. Feb 2004 A1
20040031030 Kidder et al. Feb 2004 A1
20040031031 Rudelic Feb 2004 A1
20040034765 James Feb 2004 A1
20040034850 Burkhardt et al. Feb 2004 A1
20040034853 Gibbons et al. Feb 2004 A1
20040038692 Muzaffar Feb 2004 A1
20040039801 Srinivasan et al. Feb 2004 A9
20040040020 Yang Feb 2004 A1
20040041800 Daniels Mar 2004 A1
20040043788 Mittal Mar 2004 A1
20040049394 Burger et al. Mar 2004 A1
20040049609 Simonson et al. Mar 2004 A1
20040054764 Aderton et al. Mar 2004 A1
20040054995 Lee Mar 2004 A1
20040058651 Ross et al. Mar 2004 A1
20040058652 McGregor et al. Mar 2004 A1
20040059725 Sharangpani et al. Mar 2004 A1
20040062130 Chiang Apr 2004 A1
20040068363 Goto Apr 2004 A1
20040068721 O'Neill et al. Apr 2004 A1
20040068724 Gardner et al. Apr 2004 A1
20040072578 Keutmann et al. Apr 2004 A1
20040073901 Imamatsu Apr 2004 A1
20040073912 Meza Apr 2004 A1
20040078427 Gil et al. Apr 2004 A1
20040078455 Eide et al. Apr 2004 A1
20040082346 Skytt et al. Apr 2004 A1
20040083469 Chen et al. Apr 2004 A1
20040083472 Rao et al. Apr 2004 A1
20040088281 Matsuishi May 2004 A1
20040088473 Ogle May 2004 A1
20040088694 Ho May 2004 A1
20040092255 Ji et al. May 2004 A1
20040093342 Arbo et al. May 2004 A1
20040093421 Peng et al. May 2004 A1
20040093523 Matsuzaki et al. May 2004 A1
20040093557 Kawatani May 2004 A1
20040093597 Rao et al. May 2004 A1
20040095457 Pokorny et al. May 2004 A1
20040098413 Peng May 2004 A1
20040098421 Peng May 2004 A1
20040098427 Peng May 2004 A1
20040098715 Aghera et al. May 2004 A1
20040103214 Adwankar et al. May 2004 A1
20040103340 Sundareson et al. May 2004 A1
20040103347 Sneed et al. May 2004 A1
20040107416 Buban et al. Jun 2004 A1
20040110497 Little Jun 2004 A1
20040111582 Maeda et al. Jun 2004 A1
20040111702 Chan Jun 2004 A1
20040111723 Moles et al. Jun 2004 A1
20040117322 Bjorksten et al. Jun 2004 A1
20040117760 McFarling Jun 2004 A1
20040117785 Kincaid Jun 2004 A1
20040123153 Wright et al. Jun 2004 A1
20040123188 Srinivasan et al. Jun 2004 A1
20040123270 Zhuang et al. Jun 2004 A1
20040123282 Rao Jun 2004 A1
20040126803 Cash et al. Jul 2004 A1
20040133887 Herle et al. Jul 2004 A1
20040143573 Burkey et al. Jul 2004 A1
20040143828 Liu et al. Jul 2004 A1
20040143836 McCormack et al. Jul 2004 A1
20040148379 Ogura Jul 2004 A1
20040150519 Husain et al. Aug 2004 A1
20040152455 Herle et al. Aug 2004 A1
20040153327 Liu et al. Aug 2004 A1
20040153356 Lockwood et al. Aug 2004 A1
20040153549 Naito et al. Aug 2004 A1
20040158583 Kaappa Aug 2004 A1
20040158817 Okachi et al. Aug 2004 A1
20040158829 Beresin et al. Aug 2004 A1
20040166839 Okkonen et al. Aug 2004 A1
20040168165 Kokkinen Aug 2004 A1
20040174264 Reisman et al. Sep 2004 A1
20040180676 Haumont et al. Sep 2004 A1
20040190693 Beiermeister Sep 2004 A1
20040192280 Dalton et al. Sep 2004 A1
20040192299 Wilson et al. Sep 2004 A1
20040192306 Elkarat et al. Sep 2004 A1
20040194081 Qumei et al. Sep 2004 A1
20040198447 Larsson Oct 2004 A1
20040203593 Whelan et al. Oct 2004 A1
20040203655 Sinnarajah et al. Oct 2004 A1
20040204117 Weiner Oct 2004 A1
20040205709 Hiltgen et al. Oct 2004 A1
20040208182 Boles et al. Oct 2004 A1
20040210608 Lee et al. Oct 2004 A1
20040215702 Hamasaki et al. Oct 2004 A1
20040215755 O'Neill Oct 2004 A1
20040215830 Shenfield Oct 2004 A1
20040218034 Wang et al. Nov 2004 A1
20040224679 Okoro et al. Nov 2004 A1
20040226008 Jacobi et al. Nov 2004 A1
20040229684 Blackburn et al. Nov 2004 A1
20040230963 Rothman et al. Nov 2004 A1
20040230965 Okkonen Nov 2004 A1
20040237079 Cox et al. Nov 2004 A1
20040237081 Homiller Nov 2004 A1
20040237083 Alcazar et al. Nov 2004 A1
20040239975 Kawaura et al. Dec 2004 A1
20040242286 Benco et al. Dec 2004 A1
20040243991 Gustafson et al. Dec 2004 A1
20040243992 Gustafson et al. Dec 2004 A1
20040243993 Okonnen et al. Dec 2004 A1
20040244008 Lee Dec 2004 A1
20040250245 Rao et al. Dec 2004 A1
20040250294 Kim Dec 2004 A1
20040255191 Fox et al. Dec 2004 A1
20040255291 Sierer et al. Dec 2004 A1
20040257208 Huang et al. Dec 2004 A1
20040260734 Ren et al. Dec 2004 A1
20040261072 Herle et al. Dec 2004 A1
20040261073 Herle et al. Dec 2004 A1
20040267481 Resnick et al. Dec 2004 A1
20040267833 Meller et al. Dec 2004 A1
20040268041 Smith Dec 2004 A1
20050005268 Zilavy et al. Jan 2005 A1
20050010552 Kaappa et al. Jan 2005 A1
20050010576 Ren et al. Jan 2005 A1
20050010585 Sahinoja et al. Jan 2005 A1
20050022175 Sliger et al. Jan 2005 A1
20050027867 Mueller et al. Feb 2005 A1
20050033774 Brentano et al. Feb 2005 A1
20050033829 Oommen Feb 2005 A1
20050037762 Gurbani et al. Feb 2005 A1
20050038916 Nguyen Feb 2005 A1
20050038955 Chen Feb 2005 A1
20050039178 Marolia et al. Feb 2005 A1
20050050538 Kawamata et al. Mar 2005 A1
20050055397 Zhu et al. Mar 2005 A1
20050055453 Zhu Mar 2005 A1
20050055595 Frazer et al. Mar 2005 A1
20050055684 Rao et al. Mar 2005 A1
20050060361 Chatrath et al. Mar 2005 A1
20050060699 Kim et al. Mar 2005 A1
20050060711 Ericsson et al. Mar 2005 A1
20050063242 Ren Mar 2005 A1
20050066019 Egan et al. Mar 2005 A1
20050071385 Rao Mar 2005 A1
20050073438 Rodgers et al. Apr 2005 A1
20050079863 Macaluso Apr 2005 A1
20050084079 Lang Apr 2005 A1
20050086328 Landram et al. Apr 2005 A1
20050091367 Pyhalammi et al. Apr 2005 A1
20050091501 Osthoff et al. Apr 2005 A1
20050096025 Qumei et al. May 2005 A1
20050097544 Kim May 2005 A1
20050102615 Roman et al. May 2005 A1
20050102660 Chen et al. May 2005 A1
20050114493 Mandato et al. May 2005 A1
20050114504 Marolia et al. May 2005 A1
20050114852 Chen et al. May 2005 A1
20050132179 Glaum et al. Jun 2005 A1
20050132349 Roberts et al. Jun 2005 A1
20050132351 Randall et al. Jun 2005 A1
20050135286 Nurminen et al. Jun 2005 A1
20050136942 Timiri et al. Jun 2005 A1
20050138232 Tamura et al. Jun 2005 A1
20050144609 Rothman et al. Jun 2005 A1
20050144612 Wang et al. Jun 2005 A1
20050148323 Little et al. Jul 2005 A1
20050148359 Joeressen Jul 2005 A1
20050149335 Mesbah et al. Jul 2005 A1
20050153741 Chen et al. Jul 2005 A1
20050160195 Bruner et al. Jul 2005 A1
20050165706 Giacchetti Jul 2005 A1
20050170863 Shostak Aug 2005 A1
20050172117 Aura Aug 2005 A1
20050172141 Gayde et al. Aug 2005 A1
20050182697 Rao Aug 2005 A1
20050198062 Shapiro Sep 2005 A1
20050198379 Panasyuk et al. Sep 2005 A1
20050204068 Zhu et al. Sep 2005 A1
20050204353 Ji Sep 2005 A1
20050210458 Moriyama et al. Sep 2005 A1
20050216718 Rao Sep 2005 A1
20050216902 Schaefer Sep 2005 A1
20050216903 Schaefer Sep 2005 A1
20050220079 Asokan Oct 2005 A1
20050227677 Kallio Oct 2005 A1
20050227683 Draluk et al. Oct 2005 A1
20050228847 Hayes, Jr. Oct 2005 A1
20050228874 Edgett et al. Oct 2005 A1
20050233733 Roundtree et al. Oct 2005 A1
20050234967 Draluk et al. Oct 2005 A1
20050234997 Gu et al. Oct 2005 A1
20050239447 Holzman et al. Oct 2005 A1
20050246703 Ahonen Nov 2005 A1
20050251848 Al-Janabi Nov 2005 A1
20050257214 Moshir et al. Nov 2005 A1
20050264404 Franczyk et al. Dec 2005 A1
20050268296 Marolia et al. Dec 2005 A1
20050272455 Oommen Dec 2005 A1
20050278399 Herle et al. Dec 2005 A1
20050278715 Herle et al. Dec 2005 A1
20050282533 Draluk et al. Dec 2005 A1
20050289533 Wang et al. Dec 2005 A1
20060007901 Roskowski et al. Jan 2006 A1
20060010437 Marolia Jan 2006 A1
20060015626 Hallamaa et al. Jan 2006 A1
20060015860 Liu et al. Jan 2006 A1
20060020947 Hallamaa et al. Jan 2006 A1
20060026228 Kim Feb 2006 A1
20060031449 Hallamaa et al. Feb 2006 A1
20060036493 Aufricht et al. Feb 2006 A1
20060036874 Cockerille et al. Feb 2006 A1
20060036941 Neil Feb 2006 A1
20060039313 Chou et al. Feb 2006 A1
20060039561 Ypya et al. Feb 2006 A1
20060052089 Khurana et al. Mar 2006 A1
20060053066 Sherr et al. Mar 2006 A1
20060059481 Smith et al. Mar 2006 A1
20060068786 Florence Mar 2006 A1
20060072847 Chor et al. Apr 2006 A1
20060079224 Welnick et al. Apr 2006 A1
20060080635 Anwar et al. Apr 2006 A1
20060080650 Winters et al. Apr 2006 A1
20060080659 Ganji Apr 2006 A1
20060080681 Anwar et al. Apr 2006 A1
20060087982 Kuure et al. Apr 2006 A1
20060089999 Xiang et al. Apr 2006 A1
20060100928 Walczak et al. May 2006 A1
20060101040 Ren et al. May 2006 A1
20060106806 Sperling et al. May 2006 A1
20060106888 Iida et al. May 2006 A1
20060129414 Hallamaa et al. Jun 2006 A1
20060130046 O'Neill Jun 2006 A1
20060158510 Lia et al. Jul 2006 A1
20060160533 Chou et al. Jul 2006 A1
20060161599 Rosen Jul 2006 A1
20060172742 Chou et al. Aug 2006 A1
20060173976 Vincent et al. Aug 2006 A1
20060174242 Zhu et al. Aug 2006 A1
20060176397 Panabaker Aug 2006 A1
20060181553 Choe et al. Aug 2006 A1
20060190608 Sahinoja et al. Aug 2006 A1
20060190939 Chen et al. Aug 2006 A1
20060193337 Paila et al. Aug 2006 A1
20060200658 Penkethman Sep 2006 A1
20060200814 Kontinen et al. Sep 2006 A1
20060203722 Oommen Sep 2006 A1
20060203738 Fok et al. Sep 2006 A1
20060212561 Feng Sep 2006 A1
20060212937 Natarajan Sep 2006 A1
20060217111 Marolia et al. Sep 2006 A1
20060223528 Smith Oct 2006 A1
20060224712 Aho Oct 2006 A1
20060236325 Rao et al. Oct 2006 A1
20060242305 Alnas Oct 2006 A1
20060246922 Gasbarro et al. Nov 2006 A1
20060248172 Zurawka et al. Nov 2006 A1
20060258344 Chen Nov 2006 A1
20060271659 Mittal et al. Nov 2006 A1
20060277590 Limont et al. Dec 2006 A1
20060282834 Cheng et al. Dec 2006 A1
20070014243 Meyer et al. Jan 2007 A1
20070028226 Chen et al. Feb 2007 A1
20070036294 Chaudhuri et al. Feb 2007 A1
20070041545 Gainsboro Feb 2007 A1
20070043849 Lill et al. Feb 2007 A1
20070049265 Kaimal et al. Mar 2007 A1
20070067765 Motta et al. Mar 2007 A1
20070088701 Rao Apr 2007 A1
20070089108 Chen et al. Apr 2007 A1
20070093243 Kapadekar et al. Apr 2007 A1
20070100585 Dulberg et al. May 2007 A1
20070106806 Tu et al. May 2007 A1
20070132774 Fan et al. Jun 2007 A1
20070133484 Albal et al. Jun 2007 A1
20070150444 Chesnais et al. Jun 2007 A1
20070150524 Eker et al. Jun 2007 A1
20070169073 O'Neill et al. Jul 2007 A1
20070169075 Lill et al. Jul 2007 A1
20070169089 Bantz et al. Jul 2007 A1
20070169099 Rao et al. Jul 2007 A1
20070186108 Passarella et al. Aug 2007 A1
20070190939 Abel Aug 2007 A1
20070192158 Kim Aug 2007 A1
20070192453 Copeland et al. Aug 2007 A1
20070200713 Weber et al. Aug 2007 A1
20070220504 Eker Sep 2007 A1
20070226805 Jeal et al. Sep 2007 A1
20070259633 Rao Nov 2007 A1
20070277169 Rao et al. Nov 2007 A1
20070282621 Altman et al. Dec 2007 A1
20070283003 Broyles et al. Dec 2007 A1
20070294684 Kumashiro et al. Dec 2007 A1
20080032763 Giobbi Feb 2008 A1
20080043726 Herrero-Veron et al. Feb 2008 A1
20080046583 Rao Feb 2008 A1
20080062900 Rao Mar 2008 A1
20080062926 Oba Mar 2008 A1
20080108321 Taaghol et al. May 2008 A1
20080114925 Yang May 2008 A1
20080127320 De Lutiis et al. May 2008 A1
20080144590 Rantanen et al. Jun 2008 A1
20080154633 Ishibashi et al. Jun 2008 A1
20080160983 Poplett et al. Jul 2008 A1
20080184220 Chen et al. Jul 2008 A1
20080196019 Meller et al. Aug 2008 A1
20080205419 Shin et al. Aug 2008 A1
20080208928 Hernandez Aug 2008 A1
20080244049 Normark et al. Oct 2008 A1
20080271023 Bone et al. Oct 2008 A1
20090030965 Hayes, Jr. Jan 2009 A1
20090064341 Hartung et al. Mar 2009 A1
20090113386 Eker et al. Apr 2009 A1
20090190757 Chen et al. Jul 2009 A1
20090204845 Herscovitz et al. Aug 2009 A1
20090219848 Lohmar et al. Sep 2009 A1
20090328099 Praden et al. Dec 2009 A1
20100185727 Mittal Jul 2010 A1
20100275010 Ghirardi Oct 2010 A1
20100279733 Karsten et al. Nov 2010 A1
20100287308 Robbin et al. Nov 2010 A1
20110022948 Brown et al. Jan 2011 A1
20110209055 Plestid et al. Aug 2011 A1
Foreign Referenced Citations (135)
Number Date Country
2339923 Mar 2000 CA
2414281 May 2002 CA
1864429 Nov 2006 CN
1906574 Jan 2007 CN
101043372 Sep 2007 CN
101543016 Sep 2009 CN
101595469 Dec 2009 CN
101904105 Dec 2010 CN
10115729 Oct 2001 DE
112007002863 Oct 2009 DE
112008002767 Oct 2010 DE
0717353 Jun 1996 EP
0803812 Oct 1997 EP
0811942 Dec 1997 EP
1049346 Nov 2000 EP
1052571 Nov 2000 EP
1077407 Feb 2001 EP
1152338 Nov 2001 EP
1176840 Jan 2002 EP
1184785 Mar 2002 EP
1256865 Nov 2002 EP
1282989 Feb 2003 EP
1333375 Jun 2003 EP
1331833 Jul 2003 EP
1584005 Jul 2004 EP
1597668 Aug 2004 EP
1654640 Dec 2004 EP
1639435 Jan 2005 EP
1652100 Jan 2005 EP
1652075 Feb 2005 EP
1513317 Mar 2005 EP
1515571 Mar 2005 EP
1519600 Mar 2005 EP
1660996 Mar 2005 EP
1665041 Apr 2005 EP
1668951 Jun 2005 EP
1563436 Aug 2005 EP
1584016 Oct 2005 EP
1691282 Aug 2006 EP
1705832 Sep 2006 EP
1732037 Dec 2006 EP
2024850 Feb 2009 EP
2025095 Feb 2009 EP
2047420 Apr 2009 EP
2087644 Aug 2009 EP
2104992 Sep 2009 EP
1614034 Jan 2012 EP
2426151 Nov 2006 GB
2458047 Sep 2009 GB
2468225 Sep 2010 GB
61173360 Aug 1986 JP
07160490 Jun 1995 JP
07219780 Aug 1995 JP
08202626 Aug 1996 JP
11003223 Jan 1999 JP
11161479 Jun 1999 JP
11272454 Oct 1999 JP
11345127 Dec 1999 JP
2001233353 Feb 2003 JP
19990050594 Nov 1999 KR
20010046714 Jun 2001 KR
20010076555 Aug 2001 KR
20010100328 Nov 2001 KR
20020034228 May 2002 KR
100506785 Aug 2005 KR
1020050088193 Sep 2005 KR
1020080008425 Mar 2006 KR
1020060064660 Jun 2006 KR
1020060064663 Jun 2006 KR
1020060089229 Aug 2006 KR
20090035044 Apr 2009 KR
100986487 Oct 2010 KR
101085987 Nov 2011 KR
090107418 Jan 2003 TW
WO9632679 Oct 1996 WO
WO9838823 Sep 1998 WO
WO9856149 Dec 1998 WO
WO9921382 Apr 1999 WO
WO9957900 Nov 1999 WO
WO0001187 Jan 2000 WO
WO0002358 Jan 2000 WO
WO0022860 Apr 2000 WO
WO0106798 Jan 2001 WO
WO0186985 Nov 2001 WO
WO0223925 Mar 2002 WO
WO0225438 Mar 2002 WO
WO0241147 May 2002 WO
WO03010656 Feb 2003 WO
WO03012574 Feb 2003 WO
WO03025742 Mar 2003 WO
WO03034765 Apr 2003 WO
WO03049381 Jun 2003 WO
WO2004031889 Apr 2004 WO
WO2004038546 May 2004 WO
WO2004042538 May 2004 WO
2004049314 Jun 2004 WO
WO2004049104 Jun 2004 WO
WO2004049115 Jun 2004 WO
WO2004049314 Jun 2004 WO
WO2004059956 Jul 2004 WO
WO2004061551 Jul 2004 WO
WO2004061615 Jul 2004 WO
WO2004063899 Jul 2004 WO
WO2004066091 Aug 2004 WO
WO2004070571 Aug 2004 WO
WO2004072773 Aug 2004 WO
WO2004086196 Oct 2004 WO
WO2004095457 Nov 2004 WO
WO2004109510 Dec 2004 WO
2005008940 Jan 2005 WO
WO2005001665 Jan 2005 WO
WO2005004395 Jan 2005 WO
WO2005008940 Jan 2005 WO
WO2005013123 Feb 2005 WO
WO2005015343 Feb 2005 WO
WO2005024628 Mar 2005 WO
WO2005031570 Apr 2005 WO
WO2005036916 Apr 2005 WO
WO2005041459 May 2005 WO
WO2005079334 Sep 2005 WO
WO2006003254 Jan 2006 WO
WO2007112108 Oct 2007 WO
WO2007117514 Oct 2007 WO
WO2007146710 Dec 2007 WO
WO2008003081 Jan 2008 WO
WO2008008880 Jan 2008 WO
WO2008014454 Jan 2008 WO
WO2008022195 Feb 2008 WO
WO2008022198 Feb 2008 WO
WO2008028072 Mar 2008 WO
WO2008033962 Mar 2008 WO
WO2008045700 Apr 2008 WO
WO2008048905 Apr 2008 WO
WO2008067446 Jun 2008 WO
WO2009051760 Apr 2009 WO
Non-Patent Literature Citations (741)
Entry
Communication pursuant to Article 94(3) EPC received in EP Application No. 01991949.7, mailed May 7, 2013, 8 pg.
Final Office Action received in U.S. Appl. No. 10/411,835, mailed May 2, 2013, 165 pg.
Bettini, L., “Software Update via Mobile Agent Based Programming,” Proc. ACM SAC, Jan. 1, 2002, pp. 32-36.
Bitfone Corp., CA Office Action Jun. 8, 2007, CA App. No. 2,414,281, 4 p.
Bitfone Corp., CN Office Action Jun. 5, 2009, CN App. No. 200610067641.4, 12 p.
Bitfone Corp., CN Office Action Dec. 20, 2010, CN App. No. 200610067641.4, 3 p.
Bitfone Corp., EP Office Action Mar. 16, 2010, EP App. No. EP04777313.0, 8 p.
Bitfone Corp., EP Search Report Mar. 22, 2012, EP App. No. 06251423.7, 6 p.
Bitfone Corp., EP Office Action Mar. 26, 2010, EP App. No. 04785381.7, 5 p.
Bitfone Corp., EP Office Action May 11, 2012, EP App. No. 04777313.0, 9 p.
Bitfone Corp., EP Search Report Jan. 18, 2008, EP App No. 04759830.5, 5 p.
Bitfone Corp., EP Search Report Mar. 30, 2011, EP App. No. 06251423.7, 7 p.
Bitfone Corp., EP Search Report Jul. 1, 2011, EP App. No. 06251423.7, 11 p.
Bitfone Corp., EP Search Report Jul. 4, 2006, EP App. No. EP06250739.7, 7 p.
Bitfone Corp., EP Search Report Jul. 19, 2006, EP App. No. 06251512.7, 8 p.
Bitfone Corp., EP Search Report Nov. 26, 2009, EP App. No. EP04777313.0, 3 p.
Bitfone Corp., Int'l Prelim Rpt Jan. 9, 2006, PCT App. No. PCT/US2004/022598, 7 p.
Bitfone Corp., Int'l Prelim Rpt Jan. 30, 2006, PCT App. No. PCT/US2004/024876, 8 p.
Bitfone Corp., Int'l Prelim Rpt Mar. 6, 2006, PCT App. No. PCT/US2004/028433, 8 p.
Bitfone Corp., Int'l Prelim Rpt Mar. 13, 2006, PCT App. No. PCT/US2004/021037, 7 p.
Bitfone Corp., Int'l Prelim Rpt Mar. 27, 2006, PCT App. No. PCT/US2004/031547, 9 p.
Bitfone Corp., Int'l Prelim Rpt Aug. 5, 2005, PCT App No. PCT/US2004/002950, 6 p.
Bitfone Corp., Int'l Prelim Rpt Aug. 12, 2005, PCT App. No. PCT/US2004/002084, 4 p.
Bitfone Corp., Int'l Prelim Rpt Sep. 30, 2008, PCT App. No. PCT/US2007/007489, 4 p.
Bitfone Corp., Int'l Prelim Rpt Oct. 1, 2005, PCT App. No. PCT/US2004/008918, 4 p.
Bitfone Corp., Int'l Prelim Rpt Oct. 28, 2008, PCT App. No. PCT/US2004/000694, 4 p.
Bitfone Corp., Int'l Prelim Rpt Nov. 7, 2006, PCT App. No. PCT/US2005/004520, 4 p.
Bitfone Corp., Int'l Prelim Rpt Dec. 8, 2005, PCT App. No. PCT/US2004/017731, 8 p.
Bitfone Corp., Int'l Prelim Rpt Dec. 10, 2008, PCT App. No. PCT/US2007/070534, 9 p.
Bitfone Corp., Int'l Prelim Rpt, Apr. 3, 2006, PCT App. No. PCT/US2004/033071, 9 p.
Bitfone Corp., Int'l Search Report & Written Opinion Jan. 4, 2005, PCT App. No. PCT/US2004/002084, 8 p.
Bitfone Corp., Int'l Search Report & Written Opinion Jan. 14, 2005, PCT App. No. PCT/US2004/011219, 9 p.
Bitfone Corp., Int'l Search Report & Written Opinion Jul. 14, 2008, PCT App. No. PCT/US2004/001574, 16 p.
Bitfone Corp., lnt'l Search Report Jan. 10, 2005, PCT App. No. PCT/US2003/033241, 3 p.
Bitfone Corp., Int'l Search Report Jan. 19, 2005, PCT App. No. PCT/US2004/024876, 1 p.
Bitfone Corp., Int'l Search Report Jan. 25, 2005, PCT App. No. PCT/US2003/037265, 3 p.
Bitfone Corp., Int'l Search Report Jan. 25, 2005, PCT App. No. PCT/US2004/033071, 3 p.
Bitfone Corp., Int'l Search Report Jan. 30, 2006, PCT App. No. PCT/US2004/021037, 3 p.
Bitfone Corp., Int', Search Report Feb. 10, 2005, PCT App. No. PCT/US2004/031547, 3 p.
Bitfone Corp., Int'l Search Report Mar. 7, 2005, PCT App. No. PCT/US2004/002950, 4 p.
Bitfone Corp., Int'l Search Report Mar. 16, 2005, PCT App. No. PCT/US2004/008918, 3 p.
Bitfone Corp., Int'l Search Report Apr. 12, 2008, PCT App. No. PCT/US2004/063899, 3 p.
Bitfone Corp., Int'l Search Report Apr. 22, 2004, PCT App. No. PCT/US2003/027620, 4 p.
Bitfone Corp., Int'l Search Report Apr. 23, 2008, PCT App. No. PCT/US2007/007489, 3 p.
Bitfone Corp., Int'l Search Report May 26, 2005, PCT App. No. PCT/US2004/028433, 7 p.
Bitfone Corp., Int'l Search Report Jun. 22, 2005, PCT App. No. PCT/U52003/041555, 3 p.
Bitfone Corp., Int'l Search Report Jul. 20, 2005, PCT App. No. PCT/US2004/022598, 3 p.
Bitfone Corp., Int'l Search Report Jul. 27, 2005, PCT App No. PCT/US2003/035934, 3 p.
Bitfone Corp., Int'l Search Report Aug. 23, 2005, PCT App. No. PCT/US2004/017731, 6 p.
Bitfone Corp., Int'l Search Report Oct. 3, 2006, PCT App. No. PCT/US2005/004520, 3 p.
Bitfone Corp., Int'l Search Report Oct. 3, 2008, PCT App. No. PCT/US2004/000694, 3 p.
Bitfone Corp., Int'l Search Report Oct. 14, 2004, PCT App. No. PCT/US2003/035377, 4 p.
Bitfone Corp., Int'l Search Report Dec. 3, 2004, PCT App. No. PCT/US2003/036995, 4 p.
Bitfone Corp., Int'l Search Report,Jul. 20, 2006, PCT App. No. PCT/US2003/027727, 8 p.
Bitfone Corp., JP Final Office Action Jun. 6, 2006, Jap. App. No. 2002-543291, 10 p.
Bitfone Corp., JP Office Action Nov. 8, 2005, JP App. No. 2002-543291, 13 p.
Bitfone Corp., KR Office Action Feb. 16, 2011, KR App. No. KR-10-2006-7006350, 4 p.
Bitfone Corp., KR Office Action Apr. 10, 2008, KR App. No. KR10-2006-7004343, 7 p.
Bitfone Corp., KR Office Action May 21, 2008, KR App. No. KR10-2006-7004488, 8 p.
Bitfone Corp., KR Office Action Aug. 21, 2007, KR App. No. KR10-2006-7004343, 5 p.
Bitfone Corp., KR Office Action Aug. 21, 2007, KR App. No. KR10-2006-7004488, 5 p.
Bitfone Corp., Written Opinion Jan. 19, 2005, PCT App. No. PCT/US2004/017731, 7 p.
Bitfone Corp., Written Opinion Jan. 30, 2006, PCT App. No. PCT/US2004/021037, 6 p.
Bitfone Corp., Written Opinion Mar. 26, 2006, PCT App. No. PCT/US2004/031547, 8 p.
Bitfone Corp., Written Opinion Jul. 20, 2005, PCT App. No. PCT/US2004/022598, 6 p.
Bitfone Corp., Written Opinion Dec. 4, 2005, PCT App. No. PCT/US2004/017731, 7 p.
Burns et al., “In-Place Reconstruction of Version Differences,” IEEE Transactions on Knowledge and Data Engineering, Vo. 15. No. 4, Jul./Aug. 2003, pp. 973-984.
Ciancarini et al., “Using a Coordination Language to Specify and Analyze Systems Containing Modile Components,” ACM Transactions, vol. 9. No. 2, Apr. 2000, pp. 167-198.
Claise et al., “IPFIX Protocol Specification”, IPFIX Working Group, Jun. 2003, retrieved from: http://tools.ietf.org/html/draft-ietf-ipfix-protocol-00.
CRC Press LLC., “Overview of Cryptography,” Copyright 1997 CRC Press LLC, 48 p.
Fasbender et al., “Any Network, Any Terminal, Anywhere,” IEEE Personal Communications, Apr. 1999, pp. 22-30, IEEE Press. 1999.
Hadjiefthymiades et al., “ESW4: Enhanced Scheme for WWW Computing in Wireless Communication Environments,” ACM SIGCOMM Computer Communication Review, vol. 29, Issue 5, pp. 24-35, ACM Press, Oct. 1999.
Hoffmeyer et al., “Radio Software Download for Commercial Wireless Reconfigurable Devices,” IEEE Communications Magazine, IEEE Service Center, New York NY, US. vol. 42, No. 3, Mar. 2004, pp. S26-S32.
HPC, Int'l Search Report Sep. 5, 2007, PCT App. No. PCT/US2007/008415, 2 p.
HPDC, CN Office Action Sep. 22, 2011, CN App. No. 200780044370.3, 9 p.
HPDC, EP Office Action Jan. 22, 2010, EP App. No. 04701739.7, 7 p.
HPDC, EP Office Action Feb. 4, 2011, EP App. No. 07843502.1, 4 p.
HPDC, EP Office Action Feb. 9, 2011, EP App. No. 04759830.5, 3 p.
HPDC, EP Office Action Mar. 4, 2011, EP App. No. 07813468.1, 9 p.
HPDC, EP Office Action Mar. 23, 2010, EP App. No. 04705590.0, 10 p.
HPDC, EP Office Action Apr. 3, 2009, EP App. No. 04779823.6, 7 p.
HPDC, EP Office Action Apr. 11, 2008, EP App. No. 04759830.5, 5 p.
HPDC, EP Office Action Apr. 23, 2009, EP App. No. 04701739.7, 7 p.
HPDC, EP Office Action May 4, 2011, EP App. No. 04759830.5, 3 p.
HPDC, EP Office Action May 11, 2010, EP App. No. 03759224.3, 6 p.
HPDC, EP Office Action Jun. 3, 2009, EP App. No. 01991949.7, 7p.
HPDC, EP Office Action Jun. 30, 2009, EP App. No. 07798184.3, 5 p.
HPDC, EP Office Action Jul. 27, 2011, EP App. No. 07844241.5, 6 p.
HPDC, EP Office Action Aug. 12, 2011, Ep App. No. 04759830.5. 56 p.
HPDC, EP Office Action Aug. 30, 2011, EP App. No. 04779823.6, 6 p.
HPDC, EP Office Action Sep. 2, 2010, EP App. No. 04759830.5, 4 p.
HPDC, EP Office Action Sep. 7, 2009, EP App. No. 07844241.5, 3 p.
HPDC, EP Office Action Sep. 18, 2009, EP App. No. 07843502.1, 2 p.
HPDC, EP Office Action Oct. 15, 2009, EP App. No. 04785067.2, 6 p.
HPDC, EP Office Action Oct. 27, 2009, EP App. No. 04782849.6, 3 p.
HPDC, EP Office Action Nov. 10, 2009, EP App. No. 07798184.3, 4 p.
HPDC, EP Supp. Search Report Feb. 6, 2009, EP App. No. 04701739, 3 p.
HPDC, EP Search Report Feb. 23, 2010, EP App. No. 03789910.1, 5 p.
HPDC, EP Search Report Mar. 6, 2009, EP App. No. 01991949.7, 7 p.
HPDC, EP Search Report Jun. 3, 2009, EP App. No. 01991949.7, 7 p.
HPDC, EP Search Report Aug. 9, 2010, EP App. No. 03789910.1, 6 p.
HPDC, EP Search Report Oct. 19, 2009, EP App. No. 07813468.1, 10 p.
HPDC, EP Search Report Nov. 13, 2009, EP App. No. 04756990.0, 4 p.
HPDC, EP Search Report Nov. 24, 2008, EP App. No. 04779823.6, 3 p.
HPDC, EP Search Report Nov. 25, 2009, EP App. No. 04705590.0, 6 p.
HPDC, EP Supp. Search Report Feb. 6, 2009, EP App. No. 004701739.7, 3 p.
HPDC, EP Supp. Search Report Jan. 26, 2010, EP App. No. 03759224.3, 3 p.
HPDC, EP Supp. Search Report Dec. 22, 2009, EP App. No. 03789910.1, 7 p.
HPDC, GB Office Action Feb. 25, 2011, GB App. No. 0910190.8, 6 p.
HPDC, GB Office Action Jul. 26, 2011, GB App. No. 0910190.8, 1 p.
HPDC, GB Office Action Sep. 20, 2011, GB App. No. 1007372.4, 3 p.
HPDC, GB Office Action Dec. 22, 2011, GB App. No. 1007372.4, 2 p.
HPDC, Int'l Prelim Rpt Jan. 6, 2009, PCT App. No. PCT/US2007/072493, 8 p.
HPDC, Int'l Prelim Rpt Jan. 13, 2009, PCT App. No. PCT/US2007/073340, 8 p.
HPDC, Int'l Prelim Rpt Jan. 27, 2009, PCT App. No. PCT/US2007/074586, 5 p.
HPDC,,Int'l Prelim Rpt Feb. 17, 2009, PCT App. No. PCT/US2007/076001, 7 p.
HPDC, Int'l Prelim Rpt Feb. 17, 2009, PCT App. No. PCT/US2007/076006, 7 p.
HPDC, Int'l Prelim Rpt Mar. 3, 2009, PCT App. No. PCT/US2007/077288, 7 p.
HPDC, Int'l Prelim Rpt Mar. 17, 2009, PCT App. No. PCT/US2007/078326, 7 p.
HPDC, Int'l Prelim Rpt Apr. 7, 2009, PCT App. No. PCT/US2007/079920, 8 p.
HPDC, Int'l Prelim Rpt Apr. 20, 2010, PCT App. No. PCT/US2008/011824, 6 p.
HPDC, Int'l Prelim Rpt Apr. 22, 2009, PCT App. No. PCT/US2007/081273, 8 p.
HPDC, Int'l Prelim Rpt Jun. 3, 2009, PCT App. No. PCT/US2007/085903, 6 p.
HPDC, Int'l Prelim Rpt Sep. 30, 2008, PCT App. No. PCT/US2007/008415, 7 p.
HPDC, Int'l Search Report Jan. 3, 2008, PCT App. No. US2007/073340, 5 p.
HPDC, Int'l Search Report Jan. 31, 2008, PCT App. No. PCT/US2007/076001, 3 p.
HPDC, Int'l Search Report Feb. 14, 2008, PCT App. No. PCT/US2007/072493, 5 p.
HPDC, Int'l Search Report Mar. 5, 2008, PCT App. No. PCT/US2007/078326, 5 p.
HPDC, Int'l Search Report Mar. 25, 2009, PCT App. No. PCT/US2008/011824, 2p.
HPDC, Int'l Search Report Mar. 27, 2008, PCT App. No. PCT/US2007/079920, 3 p.
HPDC, Intel Search Report Apr. 10, 2008, PCT App No. PCT/US2007/070534, 7 p.
HPDC, Int'l Search Report Jun. 26, 2008, PCT App. No. PCT/US2007/076006, 5 p.
HPDC, Intel Search Report Jul. 18, 2008, PCT App. No. PCT/US2007/077288, 5 p.
HPDC, Int'l Search Report Aug. 13, 2008, PCT App. No. PCT/US2007/085903, 3 p.
HPDC, Int'l Search Report Sep. 2, 2008, PCT App. No. PCT/US2007/081273, 5 p.
HPDC, Int'l Search Report Oct. 24, 2008, PCT App. No. PCT/US2007/074586, 3 p.
HPDC, JP Office Action Nov. 8, 2005, JP App. No. 2002-543291, 13 p.
HPDC, KR Office Action May 6, 2010, KR App. No. 10-2009-7005363, 3 p.
HPDC, KR Office Action Nov. 11, 2009, KR App. No. 10-2009-7005363, 2 p.
HPDC, Written Opinion Apr. 17, 2010, PCT App. No. PCT/US2008/011824, 4 p.
IBM, “System Firmware Update Method Before Rebooting the Operating System,” Research Disclosure, Mason Publications, vol. 425, No. 86, Sep. 1, 1999, 2 p.
Jing et al., “Client Server Computing in Mobile Environments,” ACM Computing Surveys, vol. 31, No. 2, Jun. 1999, pp. 117-157.
Jones, F., “Jambala-Intelligence beyond digital wireless,” Ericsson Review No. 3, 1998, pp. 126-131.
Klein et al., “Compressed Delta Encoding for LZSS Encoded Files,” 2007 Data Compression Conference (DCC'07) IEEE Computer Society, 10 p.
Koenig et al., “Re: ext2—available+used not equal to total,” Dec. 31, 1998, accessed on Oct. 9, 2007 from <http://www.uwsgiu.edu/hypermail/linux/kerne1/9901.0/0270.html>, Linux Kernel Archive, 2 p.
Lindholm et al., “Fast and Simple XML Tree Dfferencing by Sequence Alignment,” DocEng '06, Oct. 10-13, 2006, Amsterdam, The Netherlands, Copyright 2006 ACM, pp. 75-84.
Memorymanagement.Org, http://web.archive.org/web/20020313115607/http://www.memorymanagement.org/glossary, 3 p. 2003.
Meng et al., “Schema-Guided Wrapper Maintenance for Web-Data Extraction,” WIDM'03, Nov. 7-8, 2003, pp. 1-8.
Meyers, W. J., “Design of a Microcode Link Editor,” Proceedings of the 13th Annual Workshop on Microprogramming, pp. 165-170.
Microsoft, “Computer Dictionary,” Microsoft Press, 2002, pp. 372, 373, 380, 423 and 565.
Oommen, P., “A Framework for Integrated Management of Mobile-Stations Over-the-Air,” Integrated Network Management Proceedings, 2001 IEEE/IFIP International Symposium on May 14-18, 2001, pp. 247-256.
Oommen, P., “Over the Air Handset Management,” Emerging Technologies Symposium; Broadband, Wireless Internet Access, 2000 IEEE Apr. 10-11, 2000, 4 p.
Open Mobile Alliance, “Device Management Protocol, Candidate,” Ver 1.2, Jun. 2, 2006.
Open Mobile Alliance, “Generic Content Download Over the Air Specification,” Version 1.0, Sep. 12, 2002, 42 p.
Pant et al., Software Reliability Predictions for Distributed Software, IEEE, 1998, pp. 11-21.
Park et al., “A Low-cost Memory Architecture with NAND XIP for Mobile Embedded Systems,” CODES+ISSS'03, Oct. 1-3, 2003, pp. 138-143.
Pedram, M., “Power Optimization and Management in Embedded Systems,” Jan. 2001, pp. 239-244.
Peymandoust et al., “Low Power Embedded Software Optimization Using Symbolic Algebra,” Mar. 2002, pp. 1-7.
Raskar et al., “Image Fusion for Context Enhancement and Video Surrealism,” Proceedings of the Third Int'l. Symposium on Non-Photorealistic Animation and Rendering (NPAR2004), Jun. 7-9, 2004, 9 p.
Satoh et al., Experiment of Component-Based Software Development on Multiple Distributed Object Environments, IEEE, 1998, 8 p.
Sevanto et al., “Introducing Quality-of-Service and Traffic Classes into Wireless Mobile Networks,” WOWMOM 98 Dallas, Texas, USA, Copyright ACM 1998 pp. 21-30.
Symborski, C. W., “Updating Softwaare and Configuration Data in a Distributed Communications Nev.'Vork”. 1988 Computer NetworKing Symposium, 8 p.
Varshney et al., “Emerging Mobile and Wireless Networks,” Communications of the ACM Jun. 2000, vol. 43, No. 6, pp. 73-81.
W3C, XML Signature Syntax and Processing, (2nd edition), Jun. 10, 2008, 1 p. [Online] http://www.w3.org/TR/xmldsig-core/.
White, Ron, “How Computers Work,” Millennium Ed., Que Corporation, Indianapolis, in, 1999, 284 p.
Yergeau, F., “UTF-8, a transformation format of ISO 10646,” Jan. 1998, Alis Technologies, 10 p.
Yoshimura et al., “Mobile Streaming Media CDN Enabled by Dynamic SMIL,” WWW2003, May 7-11, 2002, Honolulu, Hawaii, ACM, pp. 651-661.
Wheatley, Office Action Dec. 27, 2011, U.S. Appl. No. 12/057,044, filed Mar. 27, 2008, 6 p.
Rao, Office Action Nov. 14, 2008, U.S. Appl. No. 11/057,361, filed Feb. 14, 2005, 8 p.
Insun, Office Action Feb. 3, 2010, U.S. Appl. No. 11/111,276, filed Apr. 21, 2005, 10 p.
Insun, Office Action Jul. 12, 2010, U.S. Appl. No. 11/111,276, filed Apr. 21, 2005, 11 p.
Iyad, Office Action Jan. 28, 2008, U.S. Appl. No. 11/100,305, filed Apr. 6, 2005, 20 p.
Iyad, Final Office Action Jul. 22, 2008, U.S. Appl. No. 11/100,305, filed Apr. 6, 2005, 11 p.
Iyad, Office Action Jan. 21, 2009, U.S. Appl. No. 11/100,305, filed Apr. 6, 2005, 7 p.
Iyad, Final Office Action Jul. 8, 2009, U.S. Appl. No. 11/100,305, filed Apr. 6, 2005, 25 p.
Shao-Chun, Office Action Dec. 11, 2008, U.S. Appl. No. 11/120,556, filed May 3, 2005, 28 p.
Shao-Chun, Final Office Action May 26, 2009, U.S. Appl. No. 11/120,556, filed May 3, 2005, 30 p.
Shao-Chun, Office Action Oct. 28, 2009, U.S. Appl. No. 11/120,556, filed May 3, 2005, 31 p.
Shao-Chun, Final Office Action May 13, 2010, U.S. Appl. No. 11/120,556, filed May 3, 2005 32 p.
Shao-Chun, Office Action Nov. 29, 2010, U.S. Appl. No. 11/120,556, May 3, 2005, 26 p.
Shao-Chun, Office Action Oct. 29, 2008, U.S. Appl. No. 11/124,866, filed May 9, 2005, 13 p.
Shao-Chun, Office Action May 5, 2009, U.S. Appl. No. 11/124,866, filed May 9, 2005, 14 p.
Shao-Chun, Office Action Nov. 12, 2008, U.S. Appl. No. 11/144,537, filed Jun. 3, 2005, 16 p.
Shao-Chun, Final Office Action Apr. 29, 2009, U.S. Appl. No. 11/144,537, filed Jun. 3, 2005, 22 p.
Sunil, Office Action Aug. 20, 2008, U.S. Appl. No. 11/189,344, filed Jul. 26, 2005, 12 p.
Sunil, Final Office Action Feb. 19, 2009, U.S. Appl. No. 11/189,344, filed Jul. 26, 2005, 13 p.
Sunil, Office Action Aug. 19, 2009, U.S. Appl. No. 11/189,344, filed Jul. 26, 2005, 10 p.
Sunil, Office Action Sep. 4, 2008, U.S. Appl. No. 11/226,032, filed Sep. 14, 2005, 17 p.
Sunil, Final Office Action Jul. 6, 2009, U.S. Appl. No. 11/226,032, filed Sep. 14, 2005, 17 p.
Sunil, Office Action Dec. 14, 2009, U.S. Appl. No. 11/226,032, filed Sep. 14, 2005, 23 p.
Sunil, Final Office Action Apr. 29, 2010, U.S. Appl. No. 11/226,032, filed Sep. 14, 2005, 16 p.
Rao, Office Action Aug. 21, 2009, U.S. Appl. No. 11/247,463, filed Oct. 11, 2005, 18 p.
Rao, Final Office Action Jul. 13, 2010, U.S. Appl. No. 11/247,463, filed Oct. 11, 2005, 19 p.
Rao, Office Action Mar. 8, 2011, U.S. Appl. No. 11/247,463, filed Oct. 11, 2005, 20 p.
Rao, Final Office Action Aug. 30, 2011, U.S. Appl. No. 11/247,463, filed Oct. 11, 2005, 20 p.
Shao-Chun, Office Action Jul. 8, 2009, U.S. Appl. No. 11/316,291, filed Dec. 21, 2005, 18 p.
Shao-Chun, Final Office Action Dec. 2, 2009, U.S. Appl. No. 11/316,291, filed Dec. 21, 2005, 18 p.
Giovanni, Office Action Jul. 8, 2009, U.S. Appl. No. 11/316,292, filed Dec. 21, 2005, 8 p.
Giovanni, Office Action Jan. 25, 2010, U.S. Appl. No. 11/316,292, filed Dec. 21, 2005, 7 p.
Shao-Chun, Office Action May 27, 2009, U.S. Appl. No. 11/352,813, filed Feb. 13, 2006, 31 p.
Sunil, Office Action Jun. 10, 2008, U.S. Appl. No. 11/352,702, filed Feb. 13, 2006, 8 p.
Sunil, Final Office Action Mar. 30, 2009, U.S. Appl. No. 11/352,702, filed Feb. 13, 2006, 11 p.
Sunil, Office Action Sep. 28, 2009, U.S. Appl. No. 11/352,702, filed Feb. 13, 2006, 9 p.
Sunil, Final Office Action Mar. 16, 2010, U.S. Appl. No. 11/352,702, filed Feb. 13, 2006, 11 p.
Rao, Office Action Feb. 17, 2009, U.S. Appl. No. 11/374,481, filed Mar. 9, 2006, 17 p.
Rao, Final Office Action Jul. 21, 2009, U.S. Appl. No.11/374,481, filed Mar. 9, 2006, 18 p.
Rao, Office Action Jan. 4, 2010, U.S. Appl. No. 11/374,481, filed Mar. 9, 2006, 10 p.
Jason, Office Action Oct. 16, 2008, U.S. Appl. No. 11/369,561, filed Mar. 7, 2006, 13 p.
Jason, Final Office Action May 8, 2009, U.S. Appl. No. 11/369,561, filed Mar. 7, 2006, 14 p.
Rao, Office Action Mar. 12, 2009, U.S. Appl. No. 11/385,162, filed Mar. 21, 2006, 6 p.
Rao, Office Action Sep. 25, 2009, U.S. Appl. No. 11/385,162, filed Mar. 21, 2006, 8 p.
Rao, Final Office Action May 4, 2010, U.S. Appl. No. 11/385,162, filed Mar. 21, 2006, 8 p.
Sunil, Office Action Nov. 13, 2008, U.S. Appl. No. 11/189,944, filed Jul. 26, 2005, 19 p.
Sunil, Final Office Action Apr. 27, 2009, U.S. Appl. No. 11/189,944, filed Jul. 26, 2005, 21 p.
Glenn, Office Action May 29, 2009, U.S. Appl. No. 11/478,108, filed Jun. 28, 2006, 19 p.
Glenn, Office Action Dec. 18, 2009, U.S. Appl. No. 11/478,108, filed Jun. 28, 2006, 17 p.
Glenn, Final Office Action Apr. 27, 2010, U.S. Appl. No. 11/478,108, filed Jun. 28, 2006, 17 p.
Glenn, Office Action Sep. 2, 2010, U.S. Appl. No. 11/478,108, filed Jun. 28, 2006, 21 p.
Glenn, Office Action Dec. 29, 2010, U.S. Appl. No. 11/478,108, filed Jun. 28, 2006, 16 p.
Rao, Office Action Apr. 6, 2010, U.S. Appl. No. 11/397,187, filed Apr. 4, 2006, 12 p.
Giovanni, Office Action May 26, 2010, U.S. Appl. No. 11/500,754, filed Aug. 7, 2006, 12 p.
Giovanni, Final Office Action Sep. 2, 2010, U.S. Appl. No. 11/500,754, filed Aug. 7, 2006, 17 p.
Uma, Office Action Oct. 6, 2009, U.S. Appl. No. 11/707,505, filed Feb. 16, 2007, 16 p.
Uma, Final Office Action Mar. 8, 2010, U.S. Appl. No. 11/707,505, filed Feb. 16, 2007 17 p.
Uma, Office Action Dec. 10, 2010, U.S. Appl. No. 11/707,505, filed Feb. 16, 2007 12 p.
Sunil, Office Action Oct. 7, 2010, U.S. Appl. No. 11/824,344, filed Jun. 29, 2007, 7 p.
Marko, Office Action Apr. 6, 2009, U.S. Appl. No. 11/732,267, filed Apr. 2, 2007, 23 p.
Marko, Final Office Action Oct. 19, 2009, U.S. Appl. No. 11/732,267, filed Apr. 2, 2007, 10 p.
Rao, Office Action Oct. 19, 2009, U.S. Appl. No. 11/799,586, filed May 2, 2007, 18 p.
Rao, Final Office Action Mar. 8, 2010, U.S. Appl. No. 11/799,586, filed May 2, 2007, 18 p.
Rao, Office Action Aug. 18, 2010, U.S. Appl. No. 11/799,586, filed May 2, 2007, 19 p.
Rao, Office Action Mar. 21, 2008, U.S. Appl. No. 11/728,517, filed Mar. 26, 2007, 17 p.
Rao, Office Action Oct. 20, 2008, U.S. Appl. No. 11/728,517, filed Mar. 26, 2007, 21 p.
Rao, Office Action Apr. 13, 2009, U.S. Appl. No. 11/728,517, filed Mar. 26, 2007, 23 p.
Rao, Office Action Dec. 3, 2009, U.S. Appl. No. 11/728,517, filed Mar. 26, 2007, 19 p.
Rao, Final Office Action Jun. 24, 1970, U.S. Appl. No. 11/728,517, filed Mar. 26, 2007, 25 p.
Marolia, Office Action Jul. 28, 2009, U.S. Appl. No. 11/827,583, filed Jul. 12, 2007, 18 p.
Rao, Office Action Jun. 16, 2009, U.S. Appl. No. 11/839,143, filed Aug. 15, 2007, 11 p.
Rao, Final Office Action Jan. 8, 2010, U.S. Appl. No. 11/839,143, filed Aug. 15, 2007, 15 p.
Rao, Office Action Aug. 4, 2010, U.S. Appl. No. 11/839,143, filed Aug. 15, 2007, 16 p.
Rao, Final Office Action Oct. 5, 2011, U.S. Appl. No. 11/839,143, filed Aug. 15, 2007, 20 p.
Rao, Office Action May 13, 2011, U.S. Appl. No. 11/839,143, filed Aug. 15, 2007, 17 p.
Rao, Final Office Action Aug. 23, 2011, U.S. Appl. No. 11/839,143, filed Aug. 15, 2007, 17 p.
Rao, Office Action Sep. 17, 2009, U.S. Appl. No. 11/847,658, filed Aug. 30, 2007, 10 p.
Rao, Office Action Mar. 25, 2010, U.S. Appl. No. 11/847,658, filed Aug. 30, 2007, 11 p.
Rao, Office Action Aug. 25, 2010, U.S. Appl. No. 11/847,658, filed Aug. 30, 2007, 13 p.
Rao, Office Action Nov. 18, 2010, U.S. Appl. No. 11/847,658, filed Aug. 30, 2007, 11 p.
Rao, Office Action Aug. 24, 2010, U.S. Appl. No. 11/854,414, filed Sep. 12, 2007, 14 p.
Rao, Office Action Nov. 17, 2009, U.S. Appl. No. 11/947,322, filed Nov. 29, 2007, 15 p.
Rao, Final Office Action May 14, 2010, U.S. Appl. No. 11/947,322, filed Nov. 29, 2007, 22 p.
Rao, Office Action Dec. 27, 2010, U.S. Appl. No. 11/947,322, filed Nov. 29, 2007, 43 p.
Rao, Final Office Action May 26, 2011, U.S. Appl. No. 11/947,322, filed Nov. 29, 2007, 40 p.
Rao, Office Action Jan. 9, 2012, U.S. Appl. No. 11/947,322, filed Nov. 29, 2007, 40 p.
Brunet, Office Action Jan. 25, 2006, U.S. Appl. No. 10/822,092, filed Apr. 9, 2004, 14 p.
Brunet, Final Office Action Aug. 23, 2006, U.S. Appl. No. 10/822,092, filed Apr. 9, 2004, 13 p.
Brunet, Office Action Feb. 22, 2007, U.S. Appl. No. 10/822,092, filed Apr. 9, 2004, 19 p.
Brunet, Final Office Action Nov. 15, 2007, U.S. Appl. No. 10/822,092, filed Apr, 9, 2004, 22 p.
Brunet, Office Action Apr. 4, 2008, U.S. Appl. No. 10/822,092, filed Apr. 9, 2004, 27 p.
Brunet, Final Office Action Sep. 23, 2008, U.S. Appl. No. 10/822,092, filed Apr. 9, 2004, 28 p.
Brunet, Office Action Mar. 8, 2007, U.S. Appl. No. 10/889,693, filed Jul. 12, 2004, 17 p.
Brunet, Final Office Action Nov. 28, 2007, U.S. Appl. No. 10/889,693, filed Jul. 12, 2004, 19 p.
Brunet, Office Action Jun. 25, 2008, U.S. Appl. No. 10/889,693, filed Jul. 12, 2004, 69 p.
Brunet, Final Office Action Dec. 23, 2008, U.S. Appl. No. 10/889,693, filed Jul. 12, 2004, 23 p.
Brunet, Office Action Jun. 29, 2006, U.S. Appl. No. 10/999,606, filed Nov. 29, 2004, 9 p.
Brunet, Final Office Action Mar. 7, 2007, U.S. Appl. No. 10/999,606, filed Nov. 9, 2004, 10 p.
Brunet, Office Action Apr. 18, 2008, U.S. Appl. No. 10/999,606, filed Nov. 29, 2004, 6 p.
Brunet, Office Action Apr. 24, 2009, U.S. Appl. No. 10/999,606, filed Nov. 29, 2004, 12 p.
Brunet, Final Office Action Aug. 20, 2009, U.S. Appl. No. 10/999,606, filed Nov. 29, 2004, 16 p.
Brunet, Office Action Nov. 10, 2009, U.S. Appl. No. 10/999,606, filed Nov. 29, 2004, 16 p.
Brunet, Final Office Action Feb. 18, 2010, U.S. Appl. No. 10/999,606, filed Nov. 29, 2004, 16 p.
Shao-Chun, Office Action Jun. 6, 2007, U.S. Appl. No. 11/125,974, filed May 9, 2005, 9 p.
Shao-Chun, Office Action Jan. 17, 2008, U.S. Appl. No. 11/125,974, filed May 9, 2005, 9 p.
Shao-Chun, Final Office Action Aug. 18, 2008, U.S. Appl. No. 11/125,974, filed May 9, 2005, 13 p.
Jeffrey, Office Action Jul. 26, 2006, U.S. Appl. No. 11/247,459, filed Oct. 11, 2005, 9 p.
Jeffrey, Office Action May 15, 2007, U.S. Appl. No. 11/247,459, filed Oct. 11, 2005, 10 p.
Jeffrey, Office Action Oct. 31, 20707, U.S. Appl. No. 11/247,459, filed Oct. 11, 2005, 26 p.
O'Neill, Office Action Aug. 25, 2006, U.S. Appl. No. 10/311,462, filed May 13, 2003, 24 p.
O'Neill, Office Action Mar. 5, 2010, U.S. Appl. No. 10/311,462, filed May 13, 2003, 23 p.
O'Neill, Final Office Action Jul. 23, 2010, U.S. Appl. No. 10/311,462, filed May 13, 2003, 24 p.
O'Neill, Office Action Nov. 18, 2009, U.S. Appl. No. 11/335,312, filed Jan. 19, 2006, 12 p.
O'Neill, Office Action Mar. 12, 2004, U.S. Appl. No. 10/404,601, filed Apr. 1, 2003, 28 p.
Shao-Chun, Final Office Action Jul. 25, 2006, U.S. Appl. No. 10/411,784, filed Apr. 11, 2003, 22 p.
Shao-Chun, Office Action Mar. 27, 2007, U.S. Appl. No. 10/411,784, filed Apr. 11, 2003, 16 p.
Shao-Chun, Final Office Action Oct. 18, 2007, U.S. Appl. No. 10/411,784, filed Apr. 11, 2003, 15 p.
Rao, Examiner's Answer Dec. 6, 2011, U.S. Appl. No. 11/427,635, filed Jan. 24, 2005, 19 p.
Rao, Final Office Action Jun. 10, 2011, U.S. Appl. No. 11/427,635, filed Jan. 24, 2005, 18 p.
Rao, Office Action Dec. 27, 2010, U.S. Appl. No. 11/427,635 filed Jan. 24, 2005, 13 p.
Rao, Office Action Mar. 31, 2010, U.S. Appl. No. 11/427,635 filed Jan. 24, 2005, 14 p.
Rao, Office Action Oct. 15, 2009, U.S. Appl. No. 11/427,635, filed Jan. 24, 2005, 11 p.
Rao, Final Office Action Apr. 30, 2009, U.S. Appl. No. 11/427,635, filed Jan. 24, 2005, 13 p.
Rao, Office Action Nov. 26, 2008, U.S. Appl. No. 11/427,635, filed Jan. 24, 2005, 15 p.
Rao, Examiner's Answer Mar. 16, 2011, U.S. Appl. No. 11/043,813, filed Jan. 26, 2005, 16 p.
Rao, Final Office Action Aug. 20, 2010, U.S. Appl. No. 11/043,813, filed Jan. 26, 2005, 16 p.
Rao, Office Action Mar. 9, 2010, U.S. Appl. No. 11/043,813, filed Jan. 26, 2005, 14 p.
Rao, Final Office Action Nov. 13, 2009, U.S. Appl. No. 11/043,813, filed Jan. 26, 2005, 15 p.
Rao, Office Action Mar. 3, 2009, U.S. Appl. No. 11/043,813, filed Jan. 26, 2005, 11 p.
Rao, Office Action Oct. 3, 2008, U.S. Appl. No. 11/043,813, filed Jan. 26, 2005, 23 p.
Chen, Examiner's Answer Aug. 16, 2012, U.S. Appl. No. 11/099,870, filed Apr. 6, 2005, 12 p.
Chen, Final Office Action Dec. 23, 2011, U.S. Appl. No. 11/099,870, filed Apr. 6, 2005, 12 p.
Chen, Office Action Jul. 6, 2011, U.S. Appl. No. 11/099,870, filed Apr. 6, 2005, 13 p.
Chen, Final Office Action Nov. 26, 2010, U.S. Appl. No. 11/099,870, filed Apr. 6, 2005, 9 p.
Chen, Office Action Jun. 24, 2010, U.S. Appl. No. 11/099,870, filed Apr. 6, 2005, 7 p.
Chen, Office Action Nov. 30, 2009, U.S. Appl. No. 11/099,870, filed Apr. 6, 2005, 8 p.
Chen, Final Office Action Apr. 14, 2009, U.S. Appl. No. 11/099,870, filed Apr. 6, 2005, 19 p.
Chen, Office Action Sep. 24, 2008, U.S. Appl. No. 11/099,870, filed Apr. 6, 2005, 7 p.
Chen, Office Action Apr. 25, 2008, U.S. Appl. No. 11/099,870, filed Apr. 6, 2005, 5 p.
Chen, Final Office Action Oct. 11, 2007, U.S. Appl. No. 11/099,870, filed Apr. 6, 2005, 16 p.
Chen, Office Action Aug. 24, 2006, U.S. Appl. No. 11/099,870, filed Apr. 6, 2005, 15 p.
Zhu, Examiner's Answer Aug. 16, 2012, U.S. Appl. No. 11/386,560, filed Mar. 22, 2006, 9 p.
Zhu, Final Office Action Feb. 16, 2012, U.S. Appl. No. 11/386,560, filed Mar. 22, 2006, 23 p.
Zhu, Office Action Sep. 30, 2011, U.S. Appl. No. 11/386,560, filed Mar. 22, 2006, 19 p.
Zhu, Final Office Action Mar. 3, 2011, U.S. Appl. No. 11/386,560, filed Mar. 22, 2006, 24 p.
Zhu, Office Action Sep. 15, 2010, U.S. Appl. No. 11/386,560, filed Mar. 22, 2006, 21 p.
Zhu, Office Action Mar. 31, 2010, U.S. Appl. No. 11/386,560, filed Mar. 22, 2006, 17 p.
Chen, Decision on Appeal Jun. 29, 2012, U.S. Appl. No. 11/637,550, filed Dec. 12, 2006, 9 p.
Chen, Examiner's Answer Mar. 30, 2009, U.S. Appl. No. 11/637,550, filed Dec. 12, 2006, 18 p.
Chen, Final Office Action May 22, 2008, U.S. Appl. No. 11/637,550, filed Dec. 12, 2006, 18 p.
Chen, Office Action Oct. 5, 2007, U.S. Appl. No. 11/637,550, filed Dec. 12, 2006, 20 p.
Chen, Final Office Action Jul. 27, 2012, U.S. Appl. No. 12/057,067, filed Mar. 27, 2008, 20 p.
Chen, Office Action Feb. 2, 2012, U.S. Appl. No. 12/057,067, filed Mar. 27, 2008, 18 p.
Chen, Final Office Action Jul. 28, 2011, U.S. Appl. No. 12/057,067, filed Mar. 27, 2008, 17 p.
Chen, Office Action Feb. 16, 2011, U.S. Appl. No. 12/057,067, filed Mar. 27, 2008, 22 p.
O'Neill, Final Office Action Jul. 17, 2012, U.S. Appl. No. 10/411,835, filed Apr. 11, 2003, 32 p.
O'Neill, Office Action Feb. 10, 2012, U.S. Appl. No. 10/411,835, filed Apr. 11, 2003, 26 p.
O'Neill, Advisory Action Jul. 29, 2011, U.S. Appl. No. 10/411,835, filed Apr. 11, 2003, 3 p.
O'Neill, Advisory Action Jun. 28, 2011, U.S. Appl. No. 10/411,835, filed Apr. 11, 2003, 3 p.
O'Neill, Final Office Action Apr. 11, 2011, U.S. Appl. No. 10/411,835, filed Apr. 11, 2003, 29 p.
O'Neill, Office Action Nov. 8, 2010, U.S. Appl. No. 10/411,835, filed Apr. 11, 2003, 26 p.
O'Neill, Office Action Aug. 26, 2009, U.S. Appl. No. 10/411,835, filed Apr. 11, 2003, 25 p.
Chen, Notice of Allowance Aug. 31, 2012, U.S. Appl. No. 10/412,045, filed Apr. 11, 2003, 10 p.
Chen, Final Office Action Jan. 25, 2012, U.S. Appl. No. 10/412,045, filed Apr. 11, 2003, 18 p.
Chen, Office Action Aug. 3, 2011, U.S. Appl. No. 10/412,045, filed Apr. 11, 2003, 18 p.
Chen, Final Office Action Apr. 19, 2010, U.S. Appl. No. 10/412,045, filed Apr. 11, 2003, 25 p.
Chen, Office Action Aug. 26, 2009, U.S. Appl. No. 10/412,045, filed Apr. 11, 2003, 17 p.
O'Neill, Office Action Jul. 23, 2012, U.S. Appl. No. 12/636,600, filed Dec. 11, 2009, 17 p.
Rao, Examiner's Answer May 26, 2011, U.S. Appl. No. 11/637,435, filed Dec. 12, 2006, 20 p.
Rao, Office Action Sep. 10, 2009, U.S. Appl. No. 11/637,435, filed Dec. 12, 2006, 16 p.
Rao, Final Office Action Sep. 15, 2010, U.S. Appl. No. 11/637,435, filed Dec. 12, 2006, 15 p.
Rao, Final Office Action Mar. 17, 2009, U.S. Appl. No. 11/637,435, filed Dec. 12, 2006, 15 p.
Rao, Office Action Sep. 22, 2008, U.S. Appl. No. 11/637,435, filed Dec. 12, 2006, 14 p.
Rao, Decision on Appeal Jun. 29, 2012 , U.S. Appl. No. 10/706,362, filed Nov. 12, 2003, 6 p.
Rao, Examiner Answer Oct. 30, 2009 , U.S. Appl. No. 10/706,362, filed Nov. 12, 2003, 24 p.
Rao, Final Office Action Apr. 15, 2009, U.S. Appl. No. 10/706,362, filed Nov. 12, 2003, 20 p.
Rao, Office Action Oct. 1, 2008, U.S. Appl. No. 10/706,362, filed Nov. 12, 2003, 19 p.
Rao, Office Action Jan. 9, 2008, U.S. Appl. No. 10/706,362, filed Nov. 12, 2003, 16 p.
Rao, Office Action Jul. 31, 2007, U.S. Appl. No. 10/706,362, filed Nov. 12, 2003, 17 p.
Rao, Office Action Dec. 5, 2006, U.S. Appl. No. 10/706,362, filed Nov. 12, 2003, 15 p.
McGhee, Decision on Appeal Jun. 6, 2012, U.S. Appl. No. 10/774,027, filed Feb. 6, 2004, 8 p.
McGhee, Examiner's Answer Oct. 30, 09, U.S. Appl. No. 10/774,027, filed Feb. 6, 2004, 31 p.
McGhee, Final Office Action Apr. 24, 2009, U.S. Appl. No. 10/774,027, filed Feb. 6, 2004, 23 p.
McGhee, Office Action Oct. 15, 2008, U.S. Appl. No. 10/774,027, filed Feb. 6, 2004, 25 p.
McGhee, Office Action Mar. 4, 2008, U.S. Appl. No. 10/774,027, filed Feb. 6, 2004, 26 p.
Yang, Corrected Examiner's Answer Nov. 21, 2011, U.S. Appl. No. 12/030,757, filed Feb. 13, 2008, 2 p.
Yang, Examiner's Answer Nov. 10, 2011, U.S. Appl. No. 12/030,757, filed Feb. 13, 2008, 19 p.
Yang, Advisory Action Sep. 29, 2011, U.S. Appl. No. 12/030,757, filed Feb. 13, 2008, 3 p.
Yang, Final Office Action Jul. 14, 2011, U.S. Appl. No. 12/030,757, filed Feb. 13, 2008, 17 p.
Yang, Office Action Mar. 9, 2011, U.S. Appl. No. 12/030,757, filed Feb. 13, 2008, 33 p.
Rao, Final Office Action Nov. 20, 2012, U.S. Appl. No. 10/909,550, filed Aug. 2, 2004, 20 p.
Rao, Office Action Jun. 19, 2012, U.S. Appl. No. 10/909,550, filed Aug. 2, 2004, 24 p.
Rao, Advisory Action Oct. 8, 2010, U.S. Appl. No. 10/909,550, filed Aug. 2, 2004, 3 p.
Rao, Advisory Action Sep. 1, 2010, U.S. Appl. No. 10/909,550, filed Aug. 2, 2004, 3 p.
Rao, Final Office Action Jun. 3, 2010, U.S. Appl. No. 10/909,550, filed Aug. 2, 2004, 26 p.
Rao, Office Action Nov. 27, 2009, U.S. Appl. No. 10/909,550, filed Aug. 2, 2004, 17 p.
Rao, Office Action Jun. 23, 2009, U.S. Appl. No. 10/909,550, filed Aug. 2, 2004, 7 p.
Rao, Final Office Action Sep. 25, 2008, U.S. Appl. No. 10/909,550, filed Aug. 2, 2004, 19 p.
Rao, Office Action Apr. 23, 2008, U.S. Appl. No. 10/909,550, filed Aug. 2, 2004, 29 p.
Chia, Notice of Allowance May 31, 2012, U.S. Appl. No. 10/943,455, filed Sep. 17, 2004, 11 p.
Chia, Final Office Action Dec. 8, 2011, U.S. Appl. No. 10/943,455, filed Sep. 17, 2004, 23 p.
Chia, Office Action Jun. 22, 2010, U.S. Appl. No. 10/943,455, filed Sep. 17, 2004, 34 p.
Chia, Office Action Jan. 7, 2010, U.S. Appl. No. 10/943,455, filed Sep. 17, 2004, 21 p.
Chia, Office Action Jun. 11, 2009, U.S. Appl. No. 10/943,455, Sep. 17, 2004, 18 p.
Chia, Final Office Action Dec. 24, 2008, U.S. Appl. No. 10/943,455, Sep. 17, 2004, 17 p.
Chia, Office Action Mar. 21, 2008, U.S. Appl. No. 10/943,455, filed Sep. 17, 2004, 22 p.
Wang, Examiner's Answer Aug. 19, 2011, U.S. Appl. No. 11/183,199, filed Jul. 15, 2005, 23 p.
Wang, Advisory Action Feb. 23, 2011, U.S. Appl. No. 11/183,199, filed Jul. 15, 2005, 2 p.
Wang, Final Office Action Nov. 1, 2010, U.S. Appl. No. 11/183,199, Jul. 15, 2005, 19 p.
Wang, Office Action Apr. 28, 2010, U.S. Appl. No. 11/183,199, filed Jul. 15, 2005, 17 p.
Wang, Final Office Action Aug. 17, 2009, U.S. Appl. No. 11/183,199, filed Jul. 15, 2005, 16 p.
Wang, Office Action Feb. 13, 2009, U.S. Appl. No. 11/183,199, filed Jul. 15, 2005, 16 p.
Wang, Interview Summary Feb. 5, 2009, U.S. Appl. No. 11/183,199, filed Jul. 15, 2005, 2 p.
Wang, Final Office Action Oct. 28, 2008, U.S. Appl. No. 11/183,199, filed Jul. 15, 2005, 19 p.
Wang, Office Action Apr. 17, 2008, U.S. Appl. No. 11/183,199, filed Jul. 15, 2005, 41 p.
Wang, Final Office Action Oct. 9, 2007, U.S. Appl. No. 11/183,199, filed Jul. 15, 2005, 13 p.
Wang, Office Action Jan. 9, 2007, U.S. Appl. No. 11/183,199, filed Jul. 15, 2005, 15 p.
Randall, Examiner's Answer Jun. 9, 2010, U.S. Appl. No. 10/955,021, filed Sep. 30, 2004, 22 p.
Randall, Final Office Action Nov. 6, 2009, U.S. Appl. No. 10/955,021, filed Sep. 30, 2004, 25 p.
Randall, Office Action Apr. 1, 2009, U.S. Appl. No. 10/955,021, filed Sep. 30, 2004, 16 p.
Randall, Office Action Oct. 17, 2008, U.S. Appl. No. 10/955,021, filed Sep. 30, 2004, 16 p.
Randall, Office Action May 1, 2008, U.S. Appl. No. 10/955,021, filed Sep. 30, 2004, 18 p.
Daley, Corrected Examiner's Answer Nov. 1, 2011, U.S. Appl. No. 11/039,000, filed Jan. 18, 2005, 2 p.
Daley, Examiner's Answer Oct. 24, 2011, U.S. Appl. No. 11/039,000, filed Jan. 18, 2005, 20 p.
Daley, Final Office Action Feb. 17, 2011, U.S. Appl. No. 11/039,000, filed Jan. 18, 2005, 15 p.
Daley, Office Action Aug. 30, 2010, U.S. Appl. No. 11/039,000, filed Jan. 18, 2005, 15 p.
Daley, Final Office Action Nov. 27, 2009, U.S. Appl. No. 11/039,000, filed Jan. 18, 2005, 14 p.
Daley, Office Action May 28, 2009, U.S. Appl. No. 11/039,000, filed Jan. 18, 2005, 13 p.
Daley, Final Office Action Dec. 3, 2008, U.S. Appl. No. 11/039,000, filed Jan. 18, 2005, 15 p.
Daley, Office Action Jan. 5, 2008, U.S. Appl. No. 11/039,000, filed Jan. 18, 2005, 25 p.
Kapadekar, Examiner's Answer Mar. 2, 2011, U.S. Appl. No. 11/552,942, filed Oct. 25, 2006, 18 p.
Kapadekar, Final Office Action Jun. 11, 2010, U.S. Appl. No. 11/552,942, filed Oct. 25, 2006, 17 p.
Kapadekar, Office Action Oct. 30, 2009, U.S. Appl. No. 11/552,942, filed Oct. 25, 2006, 15 p.
Kapadekar, Final Office Action Jul. 24, 2009, U.S. Appl. No. 11/552,942, filed Oct. 25, 2006, 12 p.
Kapadekar, Office Action Jan. 14, 2009, U.S. Appl. No. 11/552,942, filed Oct. 25, 2006, 8 p.
Logan, Examiner's Answer Jul. 28, 2011, U.S. Appl. No. 11/500,734, filed Aug. 7, 2006, 2 p.
Logan, Examiner's Answer Jun. 28, 2011, U.S. Appl. No. 11/500,734, filed Aug. 7, 2006, 25 p.
Logan, Advisory Action Feb. 17, 2011, U.S. Appl. No. 11/500,734, filed Aug. 7, 2006, 2 p.
Logan, Office Action Sep. 29, 2010, U.S. Appl. No. 11/500,734, filed Aug. 7, 2006, 24 p.
Logan, Office Action Apr. 27, 2010, U.S. Appl. No. 11/500,734, filed Aug. 7, 2006, 23 p.
Logan, Final Office Action Dec. 14, 2009, U.S. Appl. No. 11/500,734, filed Aug. 7, 2006, 22 p.
Logan, Office Action Nov. 26, 2008, U.S. Appl. No. 11/500,734, filed Aug. 7, 2006, 20 p.
Rao, Examiner's Answer Jun. 28, 2011, U.S. Appl. No. 11/385,502, filed Mar. 21, 2006, 17 p.
Rao, Final Office Action Nov. 26, 2010, U.S. Appl. No. 11/385,502, filed Mar. 21, 2006, 11 p.
Rao, Office Action Jun. 25, 2010, U.S. Appl. No. 11/385,502, filed Mar. 21, 2006, 10 p.
Rao, Final Office Action Dec. 15, 2009, U.S. Appl. No. 11/385,502, filed Mar. 21, 2006, 10 p.
Rao, Office Action May 12, 2009, U.S. Appl. No. 11/385,502, filed Mar. 21, 2006, 9 p.
Motta, Final Office Action Nov. 19, 2012, U.S. Appl. No. 11/449,259, filed Jun. 7, 2006, 25 p.
Motta, Office Action Jul. 26, 2012, U.S. Appl. No. 11/449,259, filed Jun. 7, 2006, 20 p.
Motta, Decision on Appeal Jun. 20, 2012, U.S. Appl. No. 11/449,259, filed Jun. 7, 2006, 7 p.
Motta, Examiner's Answer Jul. 23, 2009, U.S. Appl. No. 11/449,259, filed Jun. 7, 2006, 28 p.
Motta, Interview Summary Feb. 12, 2009, U.S. Appl. No. 11/449,259, filed Jun. 7, 2006, 4 p.
Motta, Advisory Action Jan. 27, 2009, U.S. Appl. No. U.S. Appl. No. 11/449,259, filed Jun. 7, 2006, 3 p.
Motta, Final Office Action Nov. 13, 2008, U.S. Appl. No. 11/449,259, filed Jun. 7, 2006, 18 p.
Motta, Office Action Jul. 10, 2008, U.S. Appl. No. 11/449,259, filed Jun. 7, 2006, 22 p.
Motta, Examiner's Answer Nov. 25, 2011, U.S. Appl. No. 11/590,137, filed Oct. 30, 2006, 11 p.
Motta, Final Office Action Jul. 19, 2011, U.S. Appl. No. 11/590,137, filed Oct. 30, 2006, 11 p.
Motta, Office Action Mar. 11, 2011, U.S. Appl. No. 11/590,137, filed Oct. 30, 2006, 12 p.
Daley, Final Office Action Mar. 17, 2011, U.S. Appl. No. 11/676,997, filed Feb. 20, 2007, 34 p.
Daley, Office Action Aug. 17, 2010, U.S. Appl. No. 11/676,997, filed Feb. 20, 2007, 31 p.
Daley, Office Action Feb. 22, 2010, U.S. Appl. No. 11/676,997, filed Feb. 20, 2007, 27 p.
Motta, Interview Summary Apr. 12, 2012, U.S. Appl. No. 11/829,520, filed Jul. 27, 2007, 3 p.
Motta, Final Office Action Jan. 13, 2012, U.S. Appl. No. 11/829,520, filed Jul. 27, 2007, 27 p.
Motta, Interview Summary Nov. 29, 2011, U.S. Appl. No. 11/829,520, filed Jul. 27, 2007, 3 p.
Motta, Office Action Sep. 1, 2011, U.S. Appl. No. 11/829,520, filed Jul. 27, 2007, 14 p.
Daley, Examiner's Answer Nov. 2, 2010, U.S. Appl. No. 11/839,396, filed Aug. 15, 2007, 15 p.
Daley, Final Office Action May 25, 2010, U.S. Appl. No. 11/839,396, filed Aug. 15, 2007, 16 p.
Daley, Interview Summary Feb. 25, 2010, U.S. Appl. No. 11/839,396, filed Aug. 15, 2007, 3 p.
Daley, Office Action Dec. 21, 2009, U.S. Appl. No. 11/839,396, filed Aug. 15, 2007, 14 p.
Daley, Office Action Jul. 29, 2009, U.S. Appl. No. 11/839,396, filed Aug. 15, 2007, 23 p.
Rao, Final Office Action Sep. 21, 2012, U.S. Appl. No. 11/867,370, filed Oct. 4, 2007, 14 p.
Rao, Office Action May 3, 2012, U.S. Appl. No. 11/867,370, filed Oct. 4, 2007, 13 p.
Rao, Final Office Action Dec. 22, 2010, U.S. Appl. No. 11/867,370, filed Oct. 4, 2007, 10 p.
Rao, Office Action Sep. 3, 2010, U.S. Appl. No. 11/867,370, filed Oct. 4, 2007, 11 p.
Rao, Examiner's Answer Apr. 12, 2012, U.S. Appl. No. 11/871,867, filed Oct. 12, 2007, 14 p.
Rao, Final Office Action Oct. 11, 2011, U.S. Appl. No. 11/871,867, filed Oct. 12, 2007, 14 p.
Rao, Interview Summary Aug. 5, 2011, U.S. Appl. No. 11/871,867, filed Oct. 12, 2007, 4 p.
Rao, Office Action Apr. 29, 2011, U.S. Appl. No. 11/871,867, filed Oct. 12, 2007, 13 p.
Rao, Final Office Action Sep. 30, 2010, U.S. Appl. No. 11/871,867, filed Oct. 12, 2007, 14 p.
Rao, Office Action Mar. 25, 2010, U.S. Appl. No. 11/871,867, filed Oct. 12, 2007, 11 p.
Rao, Office Action Aug. 10, 2009, U.S. Appl. No. 11/871,867, filed Oct. 12, 2007, 14 p.
Chowdhary, Decision on Appeal Nov. 1, 2012, U.S. Appl. No. 11/005,312, Dec. 6, 2004, 8 p.
Chowdhary, Order Apr. 27, 2009, U.S. Appl. No. 11/005,312, filed Dec. 6, 2004, 3 p.
Chowdhary, Examiner's Answer Aug. 20, 2008, U.S. Appl. No. 11/005,312, filed Dec. 6, 2004, 28 p.
Chowdhary, Office Action Sep. 5, 2006, Nov. 1, 2012, U.S. Appl. No. 11/005,312, filed Dec. 6, 2004, 29 p.
Chowdhary, Final Office Action Mar. 21, 2007, U.S. Appl. No. 11/005,312, filed Dec. 6, 2004, 27 p.
Chowdhary, Office Action Jan. 11, 2008, U.S. Appl. No. 11/005,312, filed Dec. 6, 2004, 24 p.
Rao, Final Office Action Oct. 16, 2012, U.S. Appl. No. 13/350,355, filed Jan. 13, 2012, 18 p.
Rao, Office Action May 16, 2012, U.S. Appl. No. 13/350,355, filed Jan. 13, 2012, 28 p.
Okkonen, Office Action Dec. 28, 2005, U.S. Appl. No. 10/417,285, filed Apr. 15, 2003, 21 p.
Okkonen, Final Office Action May 1, 2006, U.S. Appl. No. 10/417,285, filed Apr. 15, 2003, 41 p.
Okkonen, Office Action Jan. 29, 2007, U.S. Appl. No. 10/417,285, filed Apr. 15, 2003, 41 p.
Okkonen, Office Action Aug. 6, 2007, U.S. Appl. No. 10/417,285, filed Apr. 15, 2003, 6 p.
Okkonen, Office Action Dec. 9, 2009, U.S. Appl. No. 11/650,777, filed Jan. 8, 2007, 17 p.
Okkonen, Final Office Action May 13, 2010, U.S. Appl. No. 11/650,777, filed Jan. 8, 2007, 24 p.
O'Neill, Office Action Jun. 26, 2006, U.S. Appl. No. 10/631,567, filed Jul. 31, 2003, 18 p.
O'Neill, Final Office Action Apr. 10, 2007, U.S. Appl. No. 10/631,567, filed Jul. 31, 2003, 31 p.
O'Neill, Office Action Jan. 14, 2008, U.S. Appl. No. 10/631,567, filed Jul. 31, 2003, 41 p.
O'Neill, Office Action Jul. 9, 2008, U.S. Appl. No. 10/631,567, filed Jul. 31, 2003, 14 p.
O'Neill, Final Office Action Jan. 22, 2009, U.S. Appl. No. 10/631,567, filed Jul. 31, 2003, 14 p.
Chen, Office Action Jan. 8, 2007, U.S. Appl. No. 10/646,324, filed Aug. 22, 2003, 9 p.
Chen, Office Action May 13, 2011, U.S. Appl. No. 11/923,383, filed Oct. 24, 2007, 22 p.
Chen, Final Office Action Nov. 10, 2011, U.S. Appl. No. 11/923,383, filed Oct. 24, 2007, 27 p.
O'Neill, Office Action Oct. 23, 2006, U.S. Appl. No. 10/654,149, filed Sep. 3, 2003, 13 p.
O'Neill, Office Action May 31, 2007, U.S. Appl. No. 10/654,149, filed Sep. 3, 2003, 13 p.
O'Neill, Final Office Action Dec. 13, 2007, U.S. Appl. No. 10/654,149, filed Sep. 3, 2003, 15 p.
O'Neill, Office Action Dec. 4, 2008, U.S. Appl. No. 10/654,149, filed Sep. 3, 2003, 14 p.
O'Neill, Final Office Action May 26, 2009, U.S. Appl. No. 10/654,149, filed Sep. 3, 2003, 15 p.
Rao, Office Action Feb. 7, 2007, U.S. Appl. No. 10/654,412, filed Sep. 3, 2003, 9 p.
Rao, Final Office Action Aug. 24, 2007, U.S. Appl. No. 10/654,412, filed Sep. 3, 2003, 13 p.
Rao, Office Action Mar. 5, 2008, U.S. Appl. No. 10/654,412, filed Sep. 3, 2003, 15 p.
Chen, Office Action Nov. 20, 2006, U.S. Appl. No. 10/646,319, filed Aug. 22, 2003, 8 p.
Chen, Office Action Aug. 16, 2011, U.S. Appl. No. 12/032,809, filed Feb. 18, 2008, 20 p.
Chen, Final Office Action Jan. 19, 2012, U.S. Appl. No. 12/032,809, filed Feb. 18, 2008, 24 p.
Rao, Office Action Aug. 16, 2006, U.S. Appl. No. 10/695,713, filed Oct. 29, 2003, 12 p.
Rao, Final Office Action Dec. 20, 2006, U.S. Appl. No. 10/695,713, filed Oct. 29, 2003, 13 p.
Rao, Office Action Oct. 21, 2009, U.S. Appl. No. 11/688,820, filed Mar. 20, 2007, 10 p.
Rao, Final Office Action May 3, 2010, U.S. Appl. No. 11/688,820, filed Mar. 20, 2007, 14 p.
Rao, Office Action Dec. 30, 2004, U.S. Appl. No. 10/689,309, filed Oct. 20, 2003, 5 p.
Rao, Office Action Jun. 24, 2009, U.S. Appl. No. 11/251,046, filed Oct. 14, 2005, 8 p.
Lilley, Office Action Oct. 24, 2006, U.S. Appl. No. 10/681,861, filed Oct. 8, 2003, 24 p.
Lilley, Final Office Action Jul. 23, 2007, U.S. Appl. No. 10/681,861, filed Oct. 8, 2003, 18 p.
Lilley, Office Action Nov. 16, 2007, U.S. Appl. No. 10/681,861, filed Oct. 8, 2003, 18 p.
Lilley, Final Office Action Jun. 16, 2008, U.S. Appl. No. 10/681,861, filed Oct. 8, 2003, 24 p.
O'Neill, Office Action Mar. 22, 2007, U.S. Appl. No. 10/721,658, filed Nov. 25, 2003, 14 p.
O'Neill, Final Office Action Sep. 25, 2007, U.S. Appl. No. 10/721,658, filed Nov. 25, 2003, 9 p.
O'Neill, Final Office Action Feb. 20, 2008, U.S. Appl. No. 10/721,658, filed Nov. 25, 2003, 13 p.
Rao, Office Action Oct. 5, 2004, U.S. Appl. No. 10/701,848, filed Nov. 5, 2003, 12 p.
Rao, Final Office Action May 5, 2005, U.S. Appl. No. 10/701,848, filed Nov. 5, 2003, 14 p.
Rao, Office Action Nov. 23, 2005, U.S. Appl. No. 10/701,848, filed Nov. 5, 2003, 13 p.
Rao, Final Office Action Aug. 15, 2006, U.S. Appl. No. 10/701,848, filed Nov. 5, 2003, 16 p.
Rao, Office Action Nov. 14, 2006, U.S. Appl. No. 10/706,219, filed Nov. 12, 2003, 12 p.
Rao, Final Office Action May 2, 2007, U.S. Appl. No. 10/706,219, filed Nov. 12, 2003, 17 p.
Rao, Office Action Dec. 13, 2007, U.S. Appl. No. 10/706,219, filed Nov. 12, 2003, 13 p.
Rao, Office Action Jun. 25, 2008, U.S. Appl. No. 10/706,219, filed Nov. 12, 2003, 10 p.
Rao, Final Office Action Jan. 6, 2009, U.S. Appl. No. 10/706,219, filed Nov. 12, 2003, 16 p.
Rao, Office Action Jul. 22, 2009, U.S. Appl. No. 10/706,219, filed Nov. 12, 2003, 6 p.
Rao, Office Action Mar. 26, 2009, U.S. Appl. No. 11/401,708, filed Apr. 11, 2006, 20 p.
Rao, Office Action Aug. 9, 2005, U.S. Appl. No. 10/695,524, filed Oct. 28, 2003, 19 p.
Chia, Office Action May 28, 2008, U.S. Appl. No. 10/719,114, filed Nov. 21, 2003, 10 p.
Chia, Final Office Action Dec. 2, 2008, U.S. Appl. No. 10/719,114, filed Nov. 21, 2003, 8 p.
Chia, Final Office Action May 4, 2009, U.S. Appl. No. 10/719,114, filed Nov. 21, 2003, 11 p.
Chia, Office Action Aug. 19, 2009, U.S. Appl. No. 10/719,114, filed Nov. 21, 2003, 8 p.
Chia, Final Office Action Mar. 17, 2010, U.S. Appl. No. 10/719,114, filed Nov. 21, 2003, 9 p.
Jacobi, Office Action Dec. 10, 2004 U.S. Appl. No. 10/697,458, filed Oct. 30, 2003, 16 p.
Jacobi, Final Office Action Jun. 14, 2005, U.S. Appl. No. 10/697,458, filed Oct. 30, 2003, 16 p.
Gustafson, Office Action Mar. 4, 2008, U.S. Appl. No. 10/761,735, filed Jan. 20, 2004, 25 p.
Gustafson, Office Action Sep. 8, 2008, U.S. Appl. No. 10/761,735, filed Jan. 20, 2004, 25 p.
Gustafson, Final Office Action Mar. 20, 2009, U.S. Appl. No. 10/761,735, filed Jan. 20, 2004, 27 p.
Rao, Office Action Sep. 25, 2008, U.S. Appl. No. 11/083,596, filed Mar. 18, 2005, 7 p.
Rao, Office Action Oct. 19, 2004, U.S. Appl. No. 10/765,817, filed Jan. 27, 2004, 8 p.
Rao, Office Action Feb. 4, 2008, U.S. Appl. No. 10/782083, filed Feb. 19, 2004, 21 p.
Rao, Final Office Action Jul. 15, 2008, U.S. Appl. No. 10/782,083, filed Feb. 19, 2004, 25 p.
Gustafson, Office Action Jul. 24, 2007, U.S. Appl. No. 10/790,340, filed Mar. 1, 2004, 21 p.
Gustafson, Office Action Jun. 12, 2008, U.S. Appl. No. 10/790,340, filed Mar. 1, 2004, 20 p.
Gustafson, Office Action Dec. 23, 2008, U.S. Appl. No. 10/790,340, filed Mar. 1, 2004, 21 p.
Gustafson, Final Office Action Jul. 6, 2009, U.S. Appl. No. 10/790,340, filed Mar. 1, 2004, 21 p.
Lilley, Final Office Action Jul. 25, 2007, U.S. Appl. No. 10/646,975, filed Aug. 22, 2003, 13 p.
Lilley, Office Action Oct. 31, 2007, U.S. Appl. No. 10/646,975, filed Aug. 22, 2003, 15 p.
Lilley, Final Office Action Apr. 16, 2008, U.S. Appl. No. 10/646,975, filed Aug. 22, 2003, 14 p.
Rao, Office Action Jun. 30, 2006, U.S. Appl. No. 10/797,176, filed Mar. 10, 2004, 15 p.
Rao, Final Office Action Jul. 17, 2007, U.S. Appl. No. 10/797,176, filed Mar. 10, 2004, 26 p.
Rao, Final Office Action Oct. 31, 2007, U.S. Appl. No. 10/797,176, filed Mar. 10, 2004, 29 p.
Rao, Office Action Apr. 14, 2008, U.S. Appl. No. 10/797,176, filed Mar. 10, 2004, 31p.
Rao, Office Action Oct. 16, 2008, U.S. Appl. No. 10/797,176, filed Mar. 10, 2004, 33 p.
Rao, Final Office Action Nov. 25, 2009, U.S. Appl. No. 10/797,176, filed Mar. 10, 2004, 41 p.
Rao, Final Office Action Aug. 19, 2010, U.S. Appl. No. 10/797,176, filed Mar. 10, 2004, 5 p.
Okkonnen, Office Action Feb. 28, 2005, U.S. Appl. No. 10/807,694, filed Mar. 24, 2004, 18 p.
Okkonnen, Final Office Action Aug. 10, 2005, U.S. Appl. No. 10/807,694, filed Mar. 24, 2004, 17 p.
Okkonen, Office Action Mar. 14, 2006, U.S. Appl. No. 10/807,694, filed Mar. 24, 2004, 21 p.
Okkonen, Office Action Oct. 24, 2006, U.S. Appl. No. 10/807,694, filed Mar. 24, 2004, 16 p.
Okkonen, Office Action Jul. 10, 2007, U.S. Appl. No. 10/807,694, Mar. 24, 2004, 19 p.
Okkonen, Final Office Action Dec. 18, 2007, U.S. Appl. No. 10/807,694, Mar. 24, 2004, 22 p.
Okkonen, Office Action May 12, 2008, U.S. Appl. No. 10/807,694, filed Mar. 24, 2004, 22 p.
Okkonen, Final Office Action Nov. 20, 2008, U.S. Appl. No. 10/807,694, filed Mar. 24, 2004, 22 p.
Okkonen, Office Action Jun. 25, 2009, U.S. Appl. No. 10/807,694, filed Mar. 24, 2004, 34 p.
Mcghee, Office Action Sep. 27, 2006, U.S. Appl. No. 10/797,825, filed Mar. 10, 2004, 7 p.
Mcghee, Final Office Action Jun. 25, 2007, U.S. Appl. No. 10/797,825, filed Mar. 10, 2004, 6 p.
Yang, Office Action Jan. 28, 2008, U.S. Appl. No. 10/802,191, filed Mar. 17, 2004, 18 p.
Yang, Final Office Action Jun. 6, 2008, U.S. Appl. No. 10/802,191, filed Mar. 17, 2004, 19 p.
Yang, Office Action Sep. 5, 2008, U.S. Appl. No. 10/802,191, filed Mar. 17, 2004, 16 p.
Qumei, Final Office Action Nov. 23, 2007, U.S. Appl. No. 10/813,212, filed Mar. 30, 2004, 11 p.
Yang, Office Action Sep. 21, 2006, U.S. Appl. No. 10/635,991, filed Aug. 7, 2003, 10 p.
Yang, Office Action Jun. 2, 2010, U.S. Appl. No. 12/014,549, filed Jan. 15, 2008, 8 p.
Yang, Final Office Action Sep. 16, 2010, U.S. Appl. No. 12/014,549, filed Jan. 15, 2008, 7 p.
Yang, Office Action Nov. 2, 2006, U.S. Appl. No. 10/887,490, filed Jul. 8, 2004, 12 p.
Yang, Final Office Action Apr. 17, 2007, U.S. Appl. No. 10/887,490, filed Jul. 8, 2004, 13 p.
Marolia, Final Office Action Jan. 30, 23, 2008, U.S. Appl. No. 10/852,396, filed May 24, 2004, 17 p.
Marolia, Office Action May 28, 2008, U.S. Appl. No. 10/852,396, filed May 24, 2004, 20 p.
Marolia, Office Action Dec. 8, 2008, U.S. Appl. No. 10/852,396, filed May 24, 2004, 19 p.
Marolia, Final Office Action Jun. 17, 2009, U.S. Appl. No. 10/852,396, filed May 24, 2004, 24 p.
Marolia, Office Action Dec. 14, 2009, U.S. Appl. No. 10/852396, filed May 24, 2004, 19 p.
Marolia, Office Action Jun. 3, 2005, U.S. Appl. No. 10/888841, filed Jul. 9, 2004, 8 p.
Marolia, Final Office Action Dec. 6, 2005, U.S. Appl. No. 10/888,841, filed Jul. 9, 2004, 10 p.
Marolia, Office Action May 4, 2006, U.S. Appl. No. 10/888,841, filed Jul. 9, 2004, 13 p.
Marolia, Final Office Action Jan. 12, 2007, U.S. Appl. No. 10/888,841, filed Jul. 9, 2004, 15 p.
Marolia, Office Action Jun. 18, 2007, U.S. Appl. No. 10/888,841, filed Jul. 9, 2004, 16 p.
Marolia, Final Office Action Nov. 27, 2007, U.S. Appl. No. 10/888,841, filed Jul. 9, 2004, 17 p.
Marolia, Office Action Apr. 28, 2009, U.S. Appl. No. 10/888,841, filed Jul. 9, 2004, 15 p.
Qumei, Office Action Apr. 21, 2008, U.S. Appl. No. 10/864,095, filed Jun. 9, 2004, 15 p.
Marolia, Office Action Dec. 11, 2007, U.S. Appl. No. 10/879,869, filed Jun. 28, 2004, 10 p.
Marolia, Final Office Action May 30, 2008, U.S. Appl. No. 10/879,869, filed Jun. 28, 2004, 15 p.
Marolia, Office Action Aug. 18, 2008, U.S. Appl. No. 10/879,869, filed Jun. 28, 2004, 17 p.
Marolia, Final Office Action Jan. 28, 2009, U.S. Appl. No. 10/879,869, filed Jun. 28, 2004, 18 p.
Rao, Office Action Jul. 25, 2007, U.S. Appl. No. 10/860,964, filed Jun. 4, 2004, 22 p.
Rao, Final Office Action Jan. 7, 2008, U.S. Appl. No. 10/860,964, filed Jun. 4, 2004, 26 p.
Rao, Office Action Apr. 30, 2008, U.S. Appl. No. 10/860,964, filed Jun. 4, 2004, 23 p.
Rao, Final Office Action Oct. 28, 2008, U.S. Appl. No. 10/860,964, filed Jun. 4, 2004, 29 p.
Yang, Office Action Jun. 27, 2007, U.S. Appl. No. 10/860,978, filed Jun. 4, 2004, 14 p.
Yang, Final Office Action Dec. 7, 2007, U.S. Appl. No. 10/860,978, filed Jun. 4, 2004, 16 p.
Yang, Office Action Jun. 20, 2008, U.S. Appl. No. 10/860,978, filed Jun. 4, 2004, 13 p.
Yang, Office Action Dec. 23, 2008, U.S. Appl. No. 10/860,978, filed Jun. 4, 2004, 13 p.
Yang, Final Office Action Jun. 19, 2009, U.S. Appl. No. 10/860,978, filed Jun. 4, 2004, 16 p.
Rao, Office Action Aug. 24, 2007, U.S. Appl. No. 10/868,050, filed Jun. 15, 2004, 15 p.
Rao, Office Action Feb. 7, 2008, U.S. Appl. No. 10/868,050, filed Jun. 15, 2004, 16 p.
Rao, Final Office Action Aug. 6, 2008, U.S. Appl. No. 10/868,050, filed Jun. 15, 2004, 18 p.
Rao, Office Action Apr. 15, 2008, U.S. Appl. No. 10/899,513, filed Jul. 26, 2004, 14 p.
Rao, Final Office Action Oct. 24, 2008, U.S. Appl. No. 10/899,513, filed Jul. 26, 2004, 16 p.
Rao, Office Action Jun. 11, 2007, U.S. Appl. No. 10/902,452, filed Jul. 29, 2004, 13 p.
Rao, Final Office Action Dec. 20, 2007, U.S. Appl. No. 10/902,452, filed Jul. 29, 2004, 10 p.
Rao, Final Office Action Jun. 23, 2008, U.S. Appl. No. 10/902,425, filed Jul. 29, 2004, 14 p.
Rao, Office Action Jan. 5, 2009, U.S. Appl. No. 10/902,452, filed Jul. 29, 2004, 16 p.
Rao, Final Office Action Jul. 20, 2009, U.S. Appl. No. 10/902,452, filed Jul. 29, 2004, 16 p.
Rao, Office Action May 13, 2010, U.S. Appl. No. 10/902,452, filed Jul. 29, 2004, 16 p.
Qumei, Office Action Jul. 12 2007, U.S. Appl. No. 10/909,519, filed Aug. 2, 2004, 17 p.
Qumei, Final Office Action Dec. 20, 2007, U.S. Appl. No. 10/909,519, filed Aug. 2, 2004, 11 p.
Qumei, Office Action May 29, 2008, U.S. Appl. No. 10/909,519, filed Aug. 2, 2004, 21 p.
Qumei, Final Office Action Aug. 17, 2008, U.S. Appl. No. 10/909,519, filed Aug. 2, 2004, 24 p.
Qumei, Office Action Aug. 28, 2009, U.S. Appl. No. 10/909,519, filed Aug. 2, 2004, 23 p.
Chen, Office Action May 14, 2008, U.S. Appl. No. 10/932,175, filed Sep. 1, 2004, 18 p.
Chen, Final Office Action Feb. 6, 2009, U.S. Appl. No. 10/932,175, filed Sep. 1, 2004, 15 p.
Chen, Office Action Mar. 1, 2010, U.S. Appl. No. 10/932,175, filed Sep. 1, 2004, 16 p.
Chen, Final Office Action Sep. 21, 2010, U.S. Appl. No. 10/932,175, filed Sep. 1, 2004, 17 p.
Okkonen, Office Action Jan. 5, 2007, U.S. Appl. No. 10/945,466, filed Sep. 20, 2004, 5 p.
Okkonen, Office Action Aug. 10, 2007, U.S. Appl. No. 10/945,466, filed Sep. 20, 2004, 5 p.
Okkonen, Final Office Action Jan. 9, 2008, U.S. Appl. No. 10/945,466, filed Sep. 20, 2004, 7 p.
Okkonen, Office Action May 12, 2008, U.S. Appl. No. 10/945,466, filed Sep. 20, 2004, 6 p.
Okkonen, Office Action Nov. 12, 2008, U.S. Appl. No. 10/945,466, filed Sep. 20, 2004, 5 p.
Okkonen, Office Action Apr. 14, 2009, U.S. Appl. No. 10/945,466, filed Sep. 20, 2004, 5 p.
Rao, Office Action Aug. 27, 2007, U.S. Appl. No. 10/950,764, filed Sep. 27, 2004, 14 p.
Rao, Final Office Action Mar. 4, 2008, U.S. Appl. No. 10/950,746, filed Sep. 27, 2004, 17 p.
Rao, Office Action Nov. 3, 2008, U.S. Appl. No. 10/950,764, filed Sep. 27, 2004, 12 p.
Rao, Final Office Action Jun. 30, 2009, U.S. Appl. No. 10/950,764, filed Sep. 27, 2004, 15 p.
Chen, Office Action Jan. 29, 2008, U.S. Appl. No. 10/958,148, filed Oct. 4, 2004, 16 p.
Chen, Final Office Action Aug. 20, 2008, U.S. Appl. No. 10/958,148, filed Oct. 4, 2004, 19 p.
Chen, Office Action Apr. 14, 2009, U.S. Appl. No. 10/958,148, filed Oct. 4, 2004, 11 p.
Chen, Final Office Action Nov. 25, 2009, U.S. Appl. No. 10/958,148, filed Oct. 4, 2004, 12 p.
Chen, Office Action Apr. 1, 2010, U.S. Appl. No. 10/958,148, filed Oct. 4, 2004, 13 p.
Gustafson, Office Action Sep. 11, 2007, U.S. Appl. No. 11/010,913, filed Dec. 13, 2004, 27 p.
Gustafson, Office Action Feb. 1, 2008, U.S. Appl. No. 11/010,913, filed Dec. 13, 2004, 29 p.
Gustafson, Final Office Action Feb. 18, 2010, U.S. Appl. No. 11/010,913, filed Dec. 13, 2004, 31 p.
Ren, Office Action Jan. 22, 2008, U.S. Appl. No. 10/989,628, filed Nov. 16, 2004, 8 p.
Ren, Office Action Aug. 18, 2008, U.S. Appl. No. 10/989,628, filed Nov. 16, 2004, 7 p.
Ren, Final Office Action Nov. 24, 2009, U.S. Appl. No. 10/989,628, filed Nov. 16, 2004, 9 p.
Slyz, Office Action Mar. 1, 2010, U.S. Appl. No. 11/874,102, filed Oct. 17, 2007, 13 p.
Qumei, Office Action Apr. 9, 2007, U.S. Appl. No. 10/698,665, filed Oct. 30, 2003, 22 p.
Qumei, Office Action Jul. 29, 2010, U.S. Appl. No. 11/852,933, filed Sep. 10, 2007, 14 p.
Qumei, Final Office Action Feb. 17, 2011, U.S. Appl. No. 11/852,933, filed Sep. 10, 2007, 19 p.
Chen, Office Action Apr. 19, 2007, U.S. Appl. No. 10/903,394, filed Jul. 30, 2004, 31 p.
Chen, Final Office Action Oct. 18, 2007, U.S. Appl. No. 10/903,394, filed Jul. 30, 2004, 34 p.
Chen, Office Action May 13, 2008, U.S. Appl. No. 10/903,394, filed Jul. 30, 2004, 14 p.
Chen, Office Action Nov. 26, 2008, U.S. Appl. No. 10/903,394, filed Jul. 30, 2004, 14 p.
Chen, Final Office Action Apr. 21, 2009, U.S. Appl. No. 10/903,394, filed Jul. 30, 2004, 21 p.
Chen, Office Action Oct. 30, 2009, U.S. Appl. No. 10/903,394, filed Jul. 30, 2004, 19 p.
Chen, Final Office Action Apr. 29, 2010, U.S. Appl. No. 10/903,394, filed Jul. 30, 2004, 24 p.
Rao, Office Action Feb. 4, 2008, U.S. Appl. No. 11/047,212, filed Jan. 31, 2005, 9 p.
Rao, Final Office Action Sep. 3, 2008, U.S. Appl. No. 11/047,212, filed Jan. 31, 2005, 8 p.
Rao, Office Action Feb. 2, 2009, U.S. Appl. No. 11/047,212, filed Jan. 31, 2005, 8 p.
Rao, Final Office Action Sep. 25, 2009, U.S. Appl. No. 11/047,212, filed Jan. 31, 2005, 9 p.
Rao, Office Action Jan. 22, 2010, U.S. Appl. No. 11/047,212, filed Jan. 31, 2005, 9 p.
Rao, Final Office Action Jun. 10, 2010, U.S. Appl. No. 11/047,212, filed Jan. 31, 2005, 11 p.
Rao, Office Action Jan. 14, 2011, U.S. Appl. No. 11/047,212, filed Jan. 31, 2005, 9 p.
Kokkinen, Office Action Feb. 23, 2007, U.S. Appl. No. 10/688,640, filed Oct. 17, 2003, 23 p.
Kokkinen, Office Action Aug. 21, 2007, U.S. Appl. No. 10/688,640, filed Oct. 17, 2003, 23 p.
Kokkinen, Office Action Jul. 18, 2008, U.S. Appl. No. 10/688,640, filed Oct. 17, 2003, 28 p.
Kokkinen, Office Action Dec. 30, 2008, U.S. Appl. No. 10/688,640, filed Oct. 17, 2003, 29 p.
Kokkinen, Office Action Jul. 21, 2009, U.S. Appl. No. 10/688,640, filed Oct. 17, 2003, 30 p.
Kokkinen, Office Action Feb. 24, 2010, U.S. Appl. No. 10/688,640, filed Oct. 17, 2003, 33 p.
Kokkinen, Office Action Aug. 6, 2010, U.S. Appl. No. 10/688,640, filed Oct. 17, 2003, 26 p.
Okkonen, Office Action Apr. 19, 2007, U.S. Appl. No. 10/788,768, filed Feb. 27, 2004, 14 p.
Okkonen, Final Office Action Oct. 2, 2007, U.S. Appl. No. 10/788,768, filed Feb. 27, 2004, 18 p.
Okkonen, Office Action Mar. 20, 2008, U.S. Appl. No. 10/788,768, filed Feb. 27, 2004, 16 p.
Okkonen, Office Action Oct. 2, 2008, U.S. Appl. No. 10/788,768, filed Feb. 27, 2004, 17 p.
Okkonen, Final Office Action Apr. 14, 2009, U.S. Appl. No. 10/788,768, filed Feb. 27, 2004, 18 p.
Qumei, Final Office Action Sep. 7, 2007, U.S. Appl. No. 10/770,983, filed Feb. 3, 2004, 15 p.
Qumei, Office Action Jan. 25, 2008, U.S. Appl. No. 10/770,983, filed Feb. 3, 2004, 18 p.
Qumei, Office Action Jul. 3, 2008, U.S. Appl. No. 10/770,983, filed Feb. 3, 2004, 22 p.
Qumei, Office Action Dec. 19, 2008, U.S. Appl. No. 10/770,983, filed Feb. 3, 2004, 19 p.
Qumei, Final Office Action Jun. 11, 2009, U.S. Appl. No. 10/770,983, filed Feb. 3, 2004, 21 p.
Hamasaki, Office Action Jan. 9, 2008, U.S. Appl. No. 10/748,053, filed Dec. 30 2003, 18 p.
Hamasaki, Final Office Action Aug. 20, 2008, U.S. Appl. No. 10/748,053, filed Dec. 30, 2003, 21 p.
Hamasaki, Office Action Feb. 27, 2009, U.S. Appl. No. 10/748,053, filed Dec. 30, 2003, 19 p.
Hamasaki, Final Office Action Sep. 11, 2009, U.S. Appl. No. 10/748,053, filed Dec. 30, 2003, 19 p.
Hamasaki, Final Office Action May 17, 2010, U.S. Appl. No. 10/748,053, filed Dec. 30, 2003, 21 p.
Rao, Office Action Feb. 6, 2009, U.S. Appl. No. 10/754,378, filed Jan. 9, 2004, 14 p.
Rao, Final Office Action Jul. 13, 2009, U.S. Appl. No. 10/754,378, filed Jan. 9, 2004, 25 p.
Rao, Office Action May 17, 2010, U.S. Appl. No. 10/754,378, filed Jan. 9, 2004, 43 p.
Marolia, Office Action Oct. 17, 2006, U.S. Appl. No. 10/754,313, filed Jan. 9, 2004, 16 p.
Marolia, Office Action Feb. 20, 2008, U.S. Appl. No. 10/754,313, filed Jan. 9, 2004, 11 p.
Gustafson, Office Action Jan. 4, 2007, U.S. Appl. No. 10/756,103, filed Jan. 13, 2004, 10 p.
Gustafson, Office Action Aug. 10, 2007, U.S. Appl. No. 10/756,103, filed Jan. 13, 2004, 11 p.
Gustafson, Office Action Jan. 22, 2008, U.S. Appl. No. 10/756,103, filed Jan. 13, 2004, 11 p.
Gustafson, Office Action Jul. 8, 2009, U.S. Appl. No. 10/756,103, filed Jan. 13, 2004, 21 p.
Gustafson, Final Office Action Dec. 18, 2009, U.S. Appl. No. 10/756,103, filed Jan. 13, 2004, 22 p.
Chen, Office Action Jul. 23, 2007, U.S. Appl. No. 10/646,230, filed Aug. 22, 2003, 14 p.
Chen, Final Office Action Dec. 28, 2007, U.S. Appl. No. 10/646,230, filed Aug. 22, 2003, 14 p.
Chen, Office Action Dec. 23, 2008, U.S. Appl. No. 10/646,230, filed Aug. 22, 2003, 25 p.
Chen, Final Office Action May 27, 2009, U.S. Appl. No. 10/646,230, filed Aug. 22, 2003, 28 p.
Chen, Office Action Dec. 2, 2009, U.S. Appl. No. 10/646,230, filed Aug. 22, 2003, 15 p.
Chen, Office Action May 27, 2010, U.S. Appl. No. 10/646,230, filed Aug. 22, 2003, 17 p.
Chen, Final Office Action Nov. 10, 2010, U.S. Appl. No. 10/646,230, filed Aug. 22, 2003, 17 p.
Chen, Office Action Aug. 23, 2011, U.S. Appl. No. 10/646,230, filed Aug. 22, 2003, 6 p.
Marolia, Office Action Aug. 17, 2007, U.S. Appl. No. 10/852,396, filed May 24, 2004, 17 p.
Qumei, Office Action Jun. 20, 2007, U.S. Appl. No. 10/813,212, filed Mar. 30, 2004, 10 p.
Chen, Office Action Jun. 12, 2008, U.S. Appl. No. 10/646,230, filed Aug. 22, 2003, 14 p.
Chen, Office Action Dec. 7, 2005, U.S. Appl. No. 10/411,784, filed Apr. 11, 2003, 15 p.
Chen, Final Office Action Nov. 6, 2007, U.S. Appl. No. 11/125,974, filed May 9, 2005, 10 p.
Gustafson, Office Action Jan. 22, 2009, U.S. Appl. No. 10/756,103, filed Jan. 13, 2004, 15.p.
Qumei, Office Action, Apr. 13, 2007, U.S. Appl. No. 10/770,983, filed Feb. 3, 2004, 11 .p.
Muller, N. J., “Focus on OpenView a guide to Hewlett—Packard's Network and Systems Management Platform,” pp. 1-291, CBM Books, published 1995.
Ilog, “Ilog Jrules—Complete business rule management,” [Online] <http://www.ilog.com/products/jrules/datasheet> (May 2003).
Verbauwhede et al., “Low power DSP's for wireless communications (embedded tutorial session)”, Aug. 2000, pp. 303-310. [Online] 21 http://delivery.acm.org/10.1145/350000/34464 7/p303-verbauwhede. pdf>.
“Over the Air User Initiated Provisioning Recommended Practice for the Mobile Information Device Profile”, Version 1.0, May 7, 2001.
Oma, “SyncML Device Management Tree and Description, Version 1.1.2,” Dec. 2, 2003, pp. 1-44.
Lucent Technologies, “Wireless Intelligent Network Over-the-Air Service Provisioning,” Technical Brochure, [Online] <http://www.lucent.com/livelink/146175-Brochure.pdf>, 1997.
3GPP2 C:R1001-A 2.0: Administration of Parameter Value Assignments for cdma2000 Spread Spectrum Standards, Release A: Jul. 14, 2000.
Albright, Brian, “Managing the force: Planning makes the difference,” Frontline Solutions, Jan. 2001, retrieved from scholar.google.com search Jun. 15, 2006.
Bailey, E. C., “Maximum RPM: Taking the Red Hat Package Manager to the Limit,” Copyright 2000 by Red Hat, Inc., 14 p.
Baker et al., “Compressing Differences of Executable Code,” Apr. 22, 1999.
Bokun et al. (Active Badges—The Next Generation, Linux Journa, Oct. 1998, Issue 54).
Brown, Michael et al., PGP in Constrined Wireless Devices, 1-23, 9th USENIX Security Symposium Paper 2000, retrieved Apr. 16, 2007.
Burns et al., “In-Place Reconstruction of Delta Compressed Files,” Univ of California, Santa Cruz, darre11@cs.scsc.edu; 12 pgs.
Ortiz, C. Enrique, “Introduction to OTA Application Provisioning,” Nov. 2002, [Online] http://developers.sun.com/techtopics/mobility/midparticles/ota/ retrieved on Mar. 29, 2007.
Microsoft, “Computer Dictionary,” Microsoft Press Third Edition, pp. 88, 190, 1997.
Deitel & Deitel, “C How to Program,” 1994, Prentice-Hall, Inc., Second Edition, Chapter 5.
Digital Cellular Telecomminications System (Phase 2+) At Command Set for GSM Mobile Equipment (ME) (GSM 07.07 version 7.4.0 Release 1998), ETSI TS 100 916 V7.4.0 (Nov. 1999), 126 p.
Engstrom, Don, “Two Clicks to a Rejuvenated Mac: A Review of UpdateAgent—CD Edition,” Feb. 20, 2002, pp. 1-3.
Eppstein, D., “Fast Hierarchical Clustering and Other Applications of Dynamic Closest Pairs,” Jan. 31, 2001, pp. 1-10. [Online] http://www.ics.uci.edu/-eppstein/projects/pairs/Papers/ Epp-SODA-98.pdf>.
Euroloader, “Technical Specification” Dec. 2001, ECCA Euroloader Specificaion, pp. 1-60.
Fowler et al., “Lossless Compression ofVolumne Data,” 1995, IEEE, pp. 43-50.
Funambol Inc., “Funambol DM Server Developer's Guide Version 3.0,” Sep. 2006.
Guanluca, Moro, “On the Event Coordination in Multi-Component Systems,” published 2002, pp. 315-322.
Hicks et al., Dynamic Software Updating, Jun. 2001. [Online] <citeseer.ist.psu.edu/336947.html>.
IEEE Lan Man Standards Committee, “Draft Amendment to IEEE Standard for Local and Metropolitan Area Networks; Part 16: Air Interface for Fixed and Mobile Broadband Wireless Access Systems—Amendment to IEE Standards for Local and Metorpolitian Area Networks—Management Plane Procedures and Services,” IEEE Draft Standards, No. 802. 16g-04/03, Dec. 2004, pp. 1-8, XP002469853.
Jansen et al., “Approx 2000, LNCS 1913,” pp. 84-95, 2000, Springer-Verlag, Berlin Heidelberg 2000.
Luculli, Gabriele, “Efficient and Effective Simulation of Memory Maps for System-on-Chip,” 11th IEEE Int'l. Conference and Workshop on the Engineering of Computer Baseed Systems, May 24-27, 2004, pp. 242-247.
Open Mobile Alliance, “Firmware Update Management Object,” 2006.
Open Mobile Alliance, “OMA Device Management Security,” Jul. 2005, Candidate Version 1.2.
Open Mobile Alliance, “SyncML Device Management Bootstrap,” 2003.
Open Mobile Alliance, “Firmware Update Management Object,” OMA-DM-V0—14-20040ct28-D.
Open Mobile Alliance, “OMA Device Management Tree and Description—ver 1.2,” Jun. 15, 2005 (OMA-TS-DM-TND-V1—2-20050615-C).
Paila et al. “FLUTE—File Delivery Over Unidirectional Transport,” Network Working Group Request for Comments; 3926 Category; Experimental; Oct. 2004.
“Part 16: Air Interface for Fixed Broadband Wireless Access Systems,” Sep. 22, 2005, pp. 1-257, XP007904329.
“Problem Tracking Task Reference,” Continuus Software Corporation, Whole Manual, Part No. PTTR-041-011, 1996.
Riel, “Object-Oriented Design Heuristics,” Apr. 30, 1996, Addison-Wesley Professional, Section 10.1.
Rodriguez et al., “TCP/IP Tutorial and Technical Overview,” Copyright 2002, pp. 489-490.
Shapira et al., “In Place Differential File Compression,” The Author 2005; Published by Oxford University Press on behalf of the British Computer Society; Advance Access published on Aug 26, 2005; 15 p.
Starlin, Mark, UpdateAgent 8, Nov. 19, 2002, pp. 1-2.
Symbian, “Symbian OS powered Sony Ericsson P800 Smartphone to ship in Q32003” Mar. 2002 pp. 1-2.
Tansley, “Linux and Unix Shell Programming,” Dec. 27, 1999, Addison-Wesley Professional, 2 p.
The Mac Observer, Update Agent Scouts Out an Update for Itself, May 9, 2000, pp. 1-3.
TIA/EIA/IS-683-A: Over-the-Air Service Provisioning of Mobile Stations in Spread Spectrum Systems: May 1998.
Veeraraghavan et al., “A distributed control strategy for wireless ATM networks,” pp. 323.339, Wireless Networks 1995, retrieved from ACM database search Jun. 15, 2006.
Yang et al. , “Reuse Linux Device Drivers in Embedded Systems,” 1998 International Computer Symposium Workshop on Software Engineering and Database Systems Dec. 17-19, 1998.
Yau et al., “An approach to distributed component-based real-time application software development,” 1998, pp. 275-283.
Douglas B. Terry et al., “Managing Update Conflicts in Bayou, a Weakly Connected Replicated Storage System,” Proceedings of the 15th ACM Symposium on Operating Systems Principles, 1995, pp. 172-182, Available at: <dl.acm.org/citation.cfm?id=224070>.
Hewlett-Packard Development Company, L.P., Office Action, European Application No. 04754355.8, Date: Jul. 5, 2013, pp. 1-11.
Hewlett-Packard Development Company, L.P., Office Action, European Application No. 04782849.6, Date: Jul. 3, 2013, pp. 1-5.
Jonathan P. Munson and Prasun Dewan, “Sync: A Java Framework for Mobile Collaborative Applications,” IEEE, Jun. 1997, pp. 59-66, Available at: <ieeexplore.ieee.org/stamp/stamp.jsp? tp=&arnumber=587549>.
Teck Chia et al., U.S. Appl. No. 10/943,455, Notice of Allowance, Date Mailed: May 2013, pp. 1-69.
Tim Farnham et 3., “IST-TRUST: A Perspective on the Reconfiguration of Future Mobile—Terminals using Software Download,” The 11th IEEE International Symposium on Personal, Indoor and Mobile Radio Communications, 2000, pp. 1054-1059, Available at: <ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=881582>.
“International Search Report/Written Opinion” for PCT Application No. PCT/US20071070534, dated Feb. 7, 2008, 8 pages.
“International Search Report/Written Opinion” for PCT Application PCT/US2007/070534, dated Apr. 10, 2008, 17 pages.
Patrick O'Neill, Non-Final Office Action, U.S. Appl. No. 12/636,600, Notification Date: Sep. 20, 2013, pp. 1-8.
Related Publications (1)
Number Date Country
20120210315 A1 Aug 2012 US
Provisional Applications (1)
Number Date Country
60812376 Jun 2006 US
Divisions (1)
Number Date Country
Parent 11810575 Jun 2007 US
Child 13456752 US