Method and system for tracking software licenses and usage
First Claim
1. A method for tracking usage of a software product, the method comprising the steps of:
- (a) receiving a request for permission to use the software product;
(b) referencing a portable security device to determine a current balance of usage tokens, the portable security device being moveable between a plurality of locations and allowing monitored usage of the software product at any of the locations where the portable security device is located;
(c) determining a number of usage tokens corresponding to the requested use in accordance with one or more usage rules;
(d) determining whether the current balance is at least equal to the number of usage tokens corresponding to the requested use and if so then;
(1) decrementing the current balance of usage tokens by the number of usage tokens corresponding to the requested use; and
(2) authorizing the request for permission to use the software product;
else, (e) denying the request for permission to use the software product.
1 Assignment
0 Petitions
Accused Products
Abstract
Method and system for discrete soft handoff of a mobile terminal in a wireless CDMA network. A plurality of mobile terminal-base station channels used for soft handoff are reserved to perform soft handoff of a mobile terminal. Soft handoff of the mobile terminal is then performed in a discrete fashion by first predicting which of the reserved channels will be “strong” and “weak” channels for transmission of the next CDMA data frame. At least one of the strong channels is included in the active set of handoff legs used to transmit the next CDMA data frame. The next data frame is then transmitted via only those channels within the active set. This process repeats, wherein the strong and weak channels are predicted prior to the transmission of each CDMA data frame, at least one strong channel is included in the active set for each CDMA data frame, and each CDMA data frame is transmitted via those channels in the active set. Soft handoff occurs because those channels used to communicate each CDMA data frame will change based on the predicted channel strength for each reserved handoff leg. Because weak channels are not used for soft handoff, additional processing complexity, power consumption, and network architecture difficulties associated with prior art soft handoff methods are avoided. Yet there is no substantial loss in performance, because those CDMA data frames that would have been communicated over weak channels are insignificant when a best CDMA data frame is obtained by either CDMA frame aggregation or selection techniques. Thus, the present invention reduces processing requirements, power consumption, and architectural difficulties associated with soft handoff at substantially no performance loss.
60 Citations
24 Claims
-
1. A method for tracking usage of a software product, the method comprising the steps of:
-
(a) receiving a request for permission to use the software product;
(b) referencing a portable security device to determine a current balance of usage tokens, the portable security device being moveable between a plurality of locations and allowing monitored usage of the software product at any of the locations where the portable security device is located;
(c) determining a number of usage tokens corresponding to the requested use in accordance with one or more usage rules;
(d) determining whether the current balance is at least equal to the number of usage tokens corresponding to the requested use and if so then;
(1) decrementing the current balance of usage tokens by the number of usage tokens corresponding to the requested use; and
(2) authorizing the request for permission to use the software product;
else, (e) denying the request for permission to use the software product. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A method for tracking usage of a software product, the method comprising the steps of:
-
(a) receiving a request for permission to use the software product;
(b) referencing a portable security device to determine a current balance of usage tokens and a number of allocated tokens, the portable security device being moveable between a plurality of locations and allowing monitored usage of the software product at any of the locations where the portable security device is located;
(c) determining a number of usage tokens corresponding to the requested use in accordance with one or more usage rules;
(d) determining whether the number of allocated tokens is at least equal to the sum of the current balance and the number of usage tokens corresponding to the requested use and if so then;
(1) incrementing the current balance of usage tokens by the number of usage tokens corresponding to the requested use; and
(2) authorizing the request for permission to use the software product;
else, (e) denying the request for permission to use the software product.
-
-
18. A system for automated licensing of a software product subject to a license agreement, the system comprising:
-
a portable security device containing a balance of tokens and information including one or more license terms based on the license agreement; and
a server module for interfacing between the portable security device and the software product, wherein the server module operates to determine whether operation of the software product is permitted in accordance with the balance of tokens and the information in the portable security device and update the balance of tokens in the portable security device when the software product is operated.
-
-
19. A system for tracking usage of a software product operable on a plurality of user computers, the system comprising:
-
a portable security device moveable between said plurality of user computers, said device containing at least a balance of tokens;
a server module for interfacing between the portable security device and the software product, wherein the server module operates to detect a request for operation of the software product, determine a number of tokens corresponding to the request, determine whether such operation of the software product is permitted in accordance with the balance of tokens in the portable security device, and adjust the balance of tokens in the portable security device by the number of tokens corresponding to the request when the software product is operated.
-
-
20. A system for tracking usage of a software product, comprising a processor, and a memory storing processing instructions for controlling the processor, the processor operative with the processing instructions for:
-
(a) receiving a request for permission to use the software product;
(b) referencing a portable security device to determine a current balance of usage tokens, the portable security device being moveable between a plurality of locations and allowing monitored usage of the software product at any of the locations where the portable security device is located;
(c) determining a number of usage tokens corresponding to the requested use in accordance with one or more usage rules;
(d) determining whether the current balance is at least equal to the number of usage tokens corresponding to the requested use and if so then;
(1) decrementing the current balance of usage tokens by the number of usage tokens corresponding to the requested use; and
(2) authorizing the request for permission to use the software product;
else, (e) denying the request for permission to use the software product.
-
-
21. A system for tracking usage of a software product, comprising a processor, and a memory storing processing instructions for controlling the processor, the processor operative with the processing instructions for:
-
(a) receiving a request for permission to use the software product;
(b) referencing a portable security device to determine a current balance of usage tokens and a number of allocated tokens, the portable security device being moveable between a plurality of locations and allowing monitored usage of the software product at any of the locations where the portable security device is located;
(c) determining a number of usage tokens corresponding to the requested use in accordance with one or more usage rules;
(d) determining whether the number of allocated tokens is at least equal to the sum of the current balance and the number of usage tokens corresponding to the requested use and if so then;
(1) incrementing the current balance of usage tokens by the number of usage tokens corresponding to the requested use; and
(2) authorizing the request for permission to use the software product;
else, (e) denying the request for permission to use the software product.
-
-
22. A computer readable medium encoded with processing instructions for implementing a method for tracking usage of a software product, the method comprising:
-
maintaining balance of tokens stored on a portable security device;
detecting a request for operation of the software product;
determining a number of tokens corresponding to the request;
determining whether such operation of the software product is permitted in accordance with the balance of tokens in the portable security device; and
adjusting the balance of tokens in the portable security device by the number of tokens corresponding to the request when the software product is operated.
-
-
23. A computer readable medium encoded with processing instructions for implementing a method for tracking usage of a software product, the method comprising:
-
(a) receiving a request for permission to use the software product;
(b) referencing a portable security device to determine a current balance of usage tokens, the portable security device being moveable between a plurality of locations and allowing monitored usage of the software product at any of the locations where the portable security device is located;
(c) determining a number of usage tokens corresponding to the requested use in accordance with one or more usage rules;
(d) determining whether the current balance is at least equal to the number of usage tokens corresponding to the requested use and if so then;
(1) decrementing the current balance of usage tokens by the number of usage tokens corresponding to the requested use; and
(2) authorizing the request for permission to use the software product;
else, (e) denying the request for permission to use the software product.
-
-
24. A computer readable medium encoded with processing instructions for implementing a method for tracking usage of a software product, the method comprising:
-
(a) receiving a request for permission to use the software product;
(b) referencing a portable security device to determine a current balance of usage tokens and a number of allocated tokens, the portable security device being moveable between a plurality of locations and allowing monitored usage of the software product at any of the locations where the portable security device is located;
(c) determining a number of usage tokens corresponding to the requested use in accordance with one or more usage rules;
(d) determining whether the number of allocated tokens is at least equal to the sum of the current balance and the number of usage tokens corresponding to the requested use and if so then;
(1) incrementing the current balance of usage tokens by the number of usage tokens corresponding to the requested use; and
(2) authorizing the request for permission to use the software product;
else, (e) denying the request for permission to use the software product.
-
Specification