IP Library Granted Patent US 9,032,186
Granted Patent B2
US 9,032,186 · App. 13/178,961 · Granted May 12, 2015

Utilization of a microcode interpreter built in to a processor

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

Augmented processor hardware contains a microcode interpreter. When encrypted microcode is included in a message from a service, the microcode may be passed to the microcode interpreter. Based on decryption and execution of the microcode taking place at the processor hardware, extended functionality may be realized.

Claims (63)

1. A method of responding to a query, said method comprising:

at a processor containing a microcode interpreter, receiving, from a location determination device, a query, said query including a block of microcode and an indication of a destination for a response, where said destination comprises said location determination device;

passing said block of microcode to the microcode interpreter;

receiving a result of execution of said microcode;

based on said result, generating said response; and

transmitting, to said location determination device, said response.

2. The method as claimed in claim 1 wherein said block of microcode comprises encrypted microcode.

3. The method as claimed in claim 1 further comprising encrypting said response.

4. The method as claimed in claim 1 wherein said microcode functions to determine an indication of a location of a device that has received the query.

5. The method as claimed in claim 1 wherein said indication of said location of said device comprises latitude and longitude coordinates.

6. The method as claimed in claim 1 wherein said indication of said location of said device comprises a digital image.

7. A processor containing a microcode interpreter, the processor configured to:

receive, from a location determination device, a query, said query including a block of microcode and an indication of a destination for a response, where said destination comprises said location determination device;

pass said block of microcode to the microcode interpreter;

receive a result of execution of said microcode;

generate said response; and

transmit, to said location determination device, said response.

8. A non-transitory computer readable medium containing computer-executable instructions that, when performed by a processor containing a microcode interpreter, cause said processor to:

receive, from a location determination device, a query, said query including a block of microcode and an indication of a destination for a response, where said destination comprises said location determination device;

pass said block of microcode to the microcode interpreter;

receive a result of execution of said microcode;

generate said response; and

transmit, to said location determination device, said response.

9. A method of responding to a control message, said method comprising:

at a processor containing a microcode interpreter, receiving, from a privacy control device, a control message, said control message including a block of microcode and an indication of a destination for a response, where said destination comprises said privacy control device;

passing said block of microcode to the microcode interpreter;

receiving a result of execution of said microcode;

based on said result, generating said response; and

transmitting, to said privacy control device, said response.

10. The method as claimed in claim 9 wherein said microcode functions to put into place controls to limit a manner in which responses are generated to received queries.

11. The method as claimed in claim 9 wherein said microcode functions to disable the device that has received the control message.

12. The method as claimed in claim 11 wherein said microcode functions to instruct a processor to blow a fuse.

13. A processor containing a microcode interpreter, the processor configured to:

receive, from a privacy control device, a control message, said control message including a block of microcode and an indication of a destination for a response, where said destination comprises said privacy control device;

pass said block of microcode to the microcode interpreter;

receive a result of execution of said microcode;

generate said response; and

transmit, to said privacy control device, said response.

14. A non-transitory computer readable medium containing computer-executable instructions that, when performed by a processor containing a microcode interpreter, cause said processor to:

receive, from a privacy control device, a control message, said control message including a block of microcode and an indication of a destination for a response, where said destination comprises said privacy control device;

pass said block of microcode to the microcode interpreter;

receive a result of execution of said microcode;

generate said response; and

transmit, to said privacy control device, said response.

15. A method of responding to a historical data retrieval message, said method comprising:

at a processor containing a microcode interpreter, receiving, from a historical data retrieval device, a historical data retrieval message, said historical data retrieval message including a block of microcode and an indication of a destination for a response, where said destination comprises said historical data retrieval device;

passing said block of microcode to the microcode interpreter;

receiving a result of execution of said microcode;

based on said result, generating said response; and

transmitting, to said historical data retrieval device, said response.

16. The method as claimed in claim 15 wherein said historical data comprises data related to the operation of a device that has received the historical data retrieval message.

17. A processor containing a microcode interpreter, the processor configured to:

receive, from a historical data retrieval device, a historical data retrieval message, said historical data retrieval message including a block of microcode and an indication of a destination for a response, where said destination comprises said historical data retrieval device;

pass said block of microcode to the microcode interpreter;

receive a result of execution of said microcode;

generate said response; and

transmit, to said historical data retrieval device, said response.

18. A non-transitory computer readable medium containing computer-executable instructions that, when performed by processor containing a microcode interpreter, cause said processor to:

receive, from a historical data retrieval device, a historical data retrieval message, said historical data retrieval message including a block of microcode and an indication of a destination for a response, where said destination comprises said historical data retrieval device;

pass said block of microcode to the microcode interpreter;

receive a result of execution of said microcode;

generate said response; and

transmit, to said historical data retrieval device, said response.

Assignments (4)
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064270/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
CHANGE OF NAME Recorded Feb 18, 2015
From: RESEARCH IN MOTION LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 035021/0768 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 22, 2011
From: ROBERTSON, IAN; BOWMAN, ROGER; WOOD, ROBERT
To: RESEARCH IN MOTION LIMITED
Reel/Frame 026947/0780 →