US 7,542,999 B2
Extended file system
Vivek P. Kamath, Redmond, Wash. (US); Craig S. Brown, Bothell, Wash. (US); John B. Pence, Renton, Wash. (US); M. Chandra Shekaran, Woodinville, Wash. (US); Thomas G. Lorimor, Redmond, Wash. (US); Thomas R. Firman, Bellevue, Wash. (US); Elizabeth J. Gentile, Seattle, Wash. (US); and Keith M. Toussaint, Seattle, Wash. (US)
Assigned to Microsoft Corporation, Redmond, Wash. (US)
Filed on Apr. 07, 2004, as Appl. No. 10/819,624.
Application 10/819624 is a continuation of application No. 09/535058, filed on Mar. 24, 2000, granted, now 6,754,696.
Claims priority of provisional application 60/126094, filed on Mar. 25, 1999.
Claims priority of provisional application 60/171995, filed on Dec. 23, 1999.
Prior Publication US 2005/0060316 A1, Mar. 17, 2005
Int. Cl. G06F 12/00 (2006.01); G06F 17/30 (2006.01); G06F 17/20 (2006.01)
U.S. Cl. 707—201  [707/203; 707/204] 11 Claims
OG exemplary drawing
 
1. A method for maintaining data, comprising:
in a file system maintained by a client, marking the data as synchronize-always or local-always;
when the data is marked as synchronize-always, obtaining a portion of the data from a server in response to a process that requests the data, the process executing on the client, the process originating the request, wherein synchronize-always indicates the data has a size larger than an available storage size of a store local to the client such that the data is not maintained on the store local to the client;
when the data is marked as local-always, obtaining the data from the store local to the client in response to the process requesting the data, wherein data marked as local-always indicates the data cannot be removed from the store local to the client, wherein the client determines where the data is obtained based on the marking of the data;
when the data is not marked synchronize-always and is not marked local-always, evaluating a local/remote attribute associated with the data;
when the local/remote attribute is set to local to indicate the data is stored at the client, obtaining the data from the store local to the client;
when the local/remote attribute is set to remote to indicate the data is stored at the server, obtaining the data from the server.