Resource yielding in a multiple application environment
First Claim
1. A method for allowing multiple applications to cooperatively access the same hardware resource, said method comprising:
- a) registering a callback instruction for a first application that is using said hardware resource;
b) invoking said callback instruction automatically in response to a request from a second application for the same said hardware resource, wherein said callback instruction notifies said first application of said request; and
c) yielding said hardware resource to said second application provided said first application grants said request.
5 Assignments
0 Petitions
Accused Products
Abstract
A method and system for allowing a single resource (e.g., a serial port) to be shared by multiple applications in a cooperative manner. The first application to use the resource defines a yield callback that is invoked when a second application makes a request for the serial port. The callback allows the first application to decide whether or not it will yield the resource to the second application. If the first application grants the request, the second application is allowed to use the resource; otherwise, the first application continues to use the resource and the second application receives an error message. The first application can be notified when the second application is finished with the resource so that the resource can be returned to the first application for use.
12 Citations
21 Claims
-
1. A method for allowing multiple applications to cooperatively access the same hardware resource, said method comprising:
-
a) registering a callback instruction for a first application that is using said hardware resource;
b) invoking said callback instruction automatically in response to a request from a second application for the same said hardware resource, wherein said callback instruction notifies said first application of said request; and
c) yielding said hardware resource to said second application provided said first application grants said request. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for allowing multiple applications to cooperatively access a same serial port, said method comprising:
-
a) opening said serial port for a first application, wherein said opening comprises registering a callback instruction for said first application;
b) receiving a request for the same said serial port from a second application;
c) invoking said callback instruction automatically in response to said request from said second application, wherein said invoking comprises;
c1) sending notice to said first application of said request; and
c2) receiving from said first application a response to said notice; and
d) yielding the same said serial port to said second application provided said response from said first application grants said request and otherwise maintaining said serial port for said first application. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A portable computer system comprising:
-
a bus;
a serial port coupled to said bus;
a processor coupled to said bus; and
a memory coupled to said bus, said memory comprising instructions for implementing a method for allowing multiple applications residing on said computer system to cooperatively access the same said serial port, said method comprising;
a) opening said serial port for a first application, wherein said opening comprises registering a callback instruction for said first application;
b) receiving a request for the same said serial port from a second application;
c);
invoking said callback instruction in response to said request from said second application, wherein said invoking comprises;
c1) sending notice to said first application of said request; and
c2) receiving from said first application a response to said notice; and
d) yielding said serial port to said second application provided said response from said first application grants said request and otherwise maintaining said serial port for said first application. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification