Claims Analysis
Total Claims: 23
Claim 1
Independent Claim
173 words
A token manager for a computer system wherein data blocks are represented by respective tokens, and an award of a token to a client represents access by the client to the respective block, said manager comprising: means for receiving a request for at least one of multiple consecutive data blocks; and means, responsive to the request, for (a) awarding the token for a first data block specified in the request without interference due to contention for said first data block by a current owner of the token for said first data block; and (b) awarding tokens for all other consecutive blocks following said first block of said multiple blocks held by a client who also holds the token for said first block, except if another client currently holds a contending token for one of said consecutive blocks other than said first block but does not also hold the token for said first block, then awarding only the tokens for said first block and all blocks between said first block and said one block.
Claim 2
Dependent Claim
173 words
A token manager for a computer system wherein data blocks are represented by respective tokens, and an award of a token to a client represents access by the client to the respective block, said manager comprising: means for receiving a request for at least one of multiple consecutive data blocks; and means, responsive to the request, for (a) awarding the token for a first data block specified in the request without interference due to contention for said first data block by a current owner of the token for said first data block; and (b) awarding tokens for all other consecutive blocks following said first block of said multiple blocks held by a client who also holds the token for said first block, except if another client currently holds a contending token for one of said consecutive blocks other than said first block but does not also hold the token for said first block, then awarding only the tokens for said first block and all blocks between said first block and said one block.
Claim 3
Dependent Claim
37 words
A token manager as set forth in claim 1 wherein the awarding means awards the tokens for all of said multiple consecutive blocks if there is no contention for said all of said multiple consecutive data blocks.
Claim 4
Dependent Claim
37 words
A token manager as set forth in claim 1 wherein the contending token is write mode but not read mode for a read request and the contending token is read or write mode for a write request.
Claim 5
Dependent Claim
21 words
A token manager as set forth in claim 1 wherein said request is to write to said multiplicity of data blocks.
Claim 6
Dependent Claim
33 words
A token manager as set forth in claim 1 wherein said request is to read said multiplicity of data blocks, and said other client currently holds a write token for said one block.
Claim 7
Dependent Claim
39 words
A token manager as set forth in claim 1 wherein the awarding means comprises means for calling back tokens from all other clients which currently hold tokens which are awarded pursuant to said request and contend with said request.
Claim 8
Dependent Claim
46 words
A token manager as set forth in claim 6 wherein, pursuant to said call backs, said all other clients return any updates that they have made and relinquish control of said blocks, after said all other clients complete their current atomic operations involving the respective blocks.
Claim 9
Dependent Claim
44 words
A token manager as set forth in claim 7 wherein the awarding means does not award a token for any contending block for which another client holds the token if said other client does not also hold the token for said first data block.
Claim 10
Dependent Claim
23 words
A token manager as set forth in claim 1 wherein the request was sent from a client for said multiple consecutive data blocks.
Claim 11
Dependent Claim
59 words
A token manager as set forth in claim 9 wherein an application in said client initiated a request for data contained within a first N of said multiplicity of blocks, wherein N is less than the number of blocks in said multiplicity, and said client generated said request for said multiplicity of blocks in response to the application request.
Claim 12
Dependent Claim
49 words
A token manager as set forth in claim 1 wherein, pursuant to said request, the awarding means issues a call back for said one block to any client which holds the token for said one block, and said one block is a first block of said multiple consecutive blocks.
Claim 13
Dependent Claim
48 words
A token manager as set forth in claim 1 wherein the awarding means does not award a token for another of said blocks in said multiple data blocks if yet another client holds a token for said other block and said first block but not all intervening blocks.
Claim 14
Dependent Claim
156 words
A server computer system for managing shared files, said system comprising: a token manager comprising means for receiving a request for multiple blocks of data; and means, responsive to the request, for (a) awarding the token for a first data block specified in the request and (b) awarding tokens for all other consecutive blocks following said first block of said multiple blocks held by a client who also holds the token for said first block, except if another client currently holds a contending token for one of said consecutive blocks other than said first block but does not also hold the token for said first block, then awarding only the tokens for said first block and all blocks between said first block and said one block; and a file block manager which sends for read requests and receives for write requests all data blocks corresponding to the awarded tokens to the client which made the request.
Claim 15
Dependent Claim
156 words
A server computer system for managing shared files, said system comprising: a token manager comprising means for receiving a request for multiple blocks of data; and means, responsive to the request, for (a) awarding the token for a first data block specified in the request and (b) awarding tokens for all other consecutive blocks following said first block of said multiple blocks held by a client who also holds the token for said first block, except if another client currently holds a contending token for one of said consecutive blocks other than said first block but does not also hold the token for said first block, then awarding only the tokens for said first block and all blocks between said first block and said one block; and a file block manager which sends for read requests and receives for write requests all data blocks corresponding to the awarded tokens to the client which made the request.
Claim 16
Dependent Claim
228 words
A client/server computer system for managing shared files, said system comprising: a token manager comprising means for receiving a request for multiple blocks of data; and means, responsive to the request, for (a) awarding the token for a first data block specified in the request without interference due to contention for said first data block by a current owner of the token for said first data block; and (b) awarding tokens for all other consecutive blocks following said first block of said multiple blocks held by a client who also holds the token for said first block, except if another client currently holds a contending token for one of said consecutive blocks other than said first block but does not also hold the token for said first block, then awarding only the tokens for said first block and all blocks between said first block and said one block; and at least one client comprising: means for executing a client application that requests data from a shared file; a data buffer; means, pursuant to said request, for determining if said data is currently stored in said data buffer, and if so, granting said client access to said data in said buffer, and if not sending said request for multiple blocks of data, said multiple blocks of data including said data requested by said one client from said shared file.
Claim 17
Dependent Claim
228 words
A client/server computer system for managing shared files, said system comprising: a token manager comprising means for receiving a request for multiple blocks of data; and means, responsive to the request, for (a) awarding the token for a first data block specified in the request without interference due to contention for said first data block by a current owner of the token for said first data block; and (b) awarding tokens for all other consecutive blocks following said first block of said multiple blocks held by a client who also holds the token for said first block, except if another client currently holds a contending token for one of said consecutive blocks other than said first block but does not also hold the token for said first block, then awarding only the tokens for said first block and all blocks between said first block and said one block; and at least one client comprising: means for executing a client application that requests data from a shared file; a data buffer; means, pursuant to said request, for determining if said data is currently stored in said data buffer, and if so, granting said client access to said data in said buffer, and if not sending said request for multiple blocks of data, said multiple blocks of data including said data requested by said one client from said shared file.
Claim 18
Independent Claim
123 words
A method for managing tokens in a computer system wherein data blocks are represented by respective tokens, and an award of a token to a client represents access by the client to the respective block, said manager comprising: receiving a request for at least one of multiple consecutive data blocks; and in response to the request, awarding the token for a first data block specified in the request, determining if another client currently holds a contending token for said first data blocks, and if so, identifying consecutive contending tokens held by said other client; and awarding tokens for other consecutive blocks following said first block of said multiple blocks held by said other client who also holds the token for said first block.
Claim 19
Independent Claim
123 words
A method for managing tokens in a computer system wherein data blocks are represented by respective tokens, and an award of a token to a client represents access by the client to the respective block, said manager comprising: receiving a request for at least one of multiple consecutive data blocks; and in response to the request, awarding the token for a first data block specified in the request, determining if another client currently holds a contending token for said first data blocks, and if so, identifying consecutive contending tokens held by said other client; and awarding tokens for other consecutive blocks following said first block of said multiple blocks held by said other client who also holds the token for said first block.
Claim 20
Dependent Claim
46 words
A method as set forth in claim 15 wherein the award of tokens for said other consecutive blocks does not include or continue beyond another contending token of another client who also holds a contending token for said first block but not for all intervening blocks.
Claim 21
Dependent Claim
40 words
A method as set forth in claim 15 wherein the award of tokens for said other consecutive blocks does not include or continue beyond another contending token of another client who does not hold a token for said first block.
Claim 22
Dependent Claim
33 words
A method as set forth in claim 15 wherein outstanding read and write tokens contend with a write request, and a write token but not a read token contends with a read request.
Claim 23
Dependent Claim
56 words
A method as set forth in claim 15 wherein a client requests said multiple consecutive blocks but does not currently need all of said multiple consecutive blocks, and store the blocks which are not currently needed in a cache buffer with the expectation that the client will next need said blocks which are not currently needed.