IP Library Granted Patent US 10,055,368
Granted Patent B2
US 10,055,368 · App. 15/059,000 · Granted Aug 21, 2018

Mobile device and method for synchronizing use of the mobile device's communications port among a plurality of applications

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 10,055,368
App. No.
15/059,000
Granted
Aug 21, 2018
Kind
B2
Abstract

A mobile device and method for synchronizing use of the mobile device's communications port among a plurality of applications are provided. In one embodiment, a mobile device is provided comprising a communications port configured to connect with a mobile device accessory and a processor. The processor is configured to synchronize requests from a plurality of applications running on the mobile device to prevent application(s) from sending a request that would interrupt an ongoing data transfer between the mobile device accessory and another application. Other embodiments are possible, and each of the embodiments can be used alone or together in combination.

Claims (34)

1. A mobile device comprising:

a communications port configured to connect with a mobile device accessory; and

a processor in communication with the communications port and configured to synchronize requests from a plurality of applications running on the mobile device to prevent one or more applications from sending a request that would interrupt an ongoing data transfer between the mobile device accessory and another application.

2. The mobile device of claim 1 , wherein the plurality of applications cannot directly communicate with each other regarding use of the communications port, and wherein the plurality of applications indirectly communicate with each other regarding use of the communications port via an operating system level application program interface of the mobile device.

3. The mobile device of claim 1 , wherein the processor is further configured to synchronize requests using an application layer queue running on each of the plurality of applications.

4. The mobile device of claim 1 , wherein the mobile device accessory comprises an external storage device.

5. The mobile device of claim 1 , wherein the mobile device accessory comprises at three-dimensional memory.

6. The mobile device of claim 1 , wherein the mobile device comprises a smart phone.

7. The mobile device of claim 1 , wherein the communications port is a wired port.

8. The mobile device of claim 1 , wherein the communications port is a wireless port.

9. A method for synchronizing use of a mobile device's communications port among a plurality of applications, the method comprising:

performing the following in a mobile device comprising a communications port, wherein the communications port is configured to be used by only one application at a time:

queuing requests from a plurality of applications running on the mobile device to use the communications port;

notifying one of the plurality of applications that it can use the communications port; and

after the one of the plurality of applications is done using the communications port, notifying another one of the plurality of applications that it can use the communications port.

10. The method of claim 9 , wherein each application has its own instance of a queue, and wherein queue logic running in each application collects responses from all the other applications to provide arbitration of the requests.

11. The method of claim 9 , wherein the plurality of applications cannot directly communicate with each other, and wherein the plurality of applications indirectly communicate with each other via a notification center.

12. The method of claim 9 , wherein the mobile device comprises a smart phone.

13. A method for synchronizing use of a mobile device's communications port among a plurality of applications, the method comprising:

performing the following in a mobile device comprising a communications port and running a plurality of applications:

sending a message from a first application to all of the other applications to request a response indicating whether any of the other applications are using the communications port;

in response to the first application not receiving any responses, moving the first application to a ready state in which it can use the communications port; and

in response to the first application receiving a response that a second application is using the communications port:

moving the first application to a wait state; and

after the second application releases the use of the communications port, moving the first application from the wait state to the ready state in which it can use the communications port.

14. The method of claim 13 , wherein the plurality of applications cannot directly communicate with each other, and wherein the plurality of applications indirectly send messages and responses to one another via an operating system level application program interface.

15. The method of claim 13 , wherein the first application is moved to the ready state in response to the first application not receiving any responses after a timeout period has expired.

16. The method of claim 13 , wherein the mobile device comprises a smart phone.

17. A mobile device comprising:

a communications port configured to connect with a mobile device accessory; and

means for synchronizing requests from a plurality of applications running on the mobile device to prevent one or more applications from sending a request that would interrupt an ongoing data transfer between the mobile device accessory and another application.

18. The mobile device of claim 17 , wherein the mobile device accessory comprises an external storage device.

19. The mobile device of claim 17 , wherein the mobile device accessory comprises at three-dimensional memory.

20. The mobile device of claim 17 , wherein the mobile device comprises a smart phone.

Assignments (5)
PARTIAL RELEASE OF SECURITY INTERESTS Recorded Apr 25, 2025
From: JPMORGAN CHASE BANK, N.A., AS AGENT
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 071382/0001 →
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2024
From: SANDISK TECHNOLOGIES LLC
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 069796/0423 →
CHANGE OF NAME Recorded May 25, 2016
From: SANDISK TECHNOLOGIES INC
To: SANDISK TECHNOLOGIES LLC
Reel/Frame 038812/0954 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 3, 2016
From: MURALEEDHARAN, ANURAG CHELAMCHIRAYIL; HAKOUN, EYAL
To: SANDISK TECHNOLOGIES INC.
Reel/Frame 037886/0399 →