摘要:
Administering digital security is disclosed. Data and method items are stored on a computer system in a volume. The volume is divided up into non-overlapping security zones. Each item exists in a security zone. Security rules are granted to principals where the security rules apply to items in a particular zone. The security rules specify what principals have what rights; such as read, write delete and execute; to what items. Administrative rights can be delegated by principals by splitting a security zone to form two security zones. Principals who have administrative rights to the security zone assign additional principals to one of the security zones while maintaining all administrative rights to the other zone. Thus principals can retain certain administrative rights to certain items exclusively to themselves while delegating administrative rights to other items to other principals.
摘要:
Several embodiments of the present invention employ synchronization adapters for synchronizing information between “WinFS” and non-“WinFS” data sources. Examples of adapters include an adapter that synchronizes address book information between a “WinFS” contacts folder and a non-WinFS mailbox. In these instances, adapter developers might use the “WinFS” synchronization core services API described herein for accessing services provided by the “WinFS” synchronization platform in order to develop schema transformation code between the “WinFS” schema and the non-“WinFS” data source schema. Additionally, the adapter developer provides protocol support for communicating changes with the non-“WinFS” data source. A synchronization adapter is invoked and controlled by using the synchronization controller API and reports progress and errors using this API.
摘要:
Various embodiments of the present invention are directed to conflict handling for conflicts that occur in a peer-to-peer synchronization system, where the ability to correctly and efficiently handle conflicts minimizes data loss while retaining good usability and reduces the need for user intervention during synchronization. Conflict handling in the synchronization service is divided into three stages: (1) conflict detection; (2) automatic conflict resolution and logging; and (3) conflict inspection and resolution. Certain embodiments are directed to a conflict handling schema comprising one or more of the follow conflict handling elements: (a) schematized representation of conflicts; (b) detection of conflicts; (c) logging of conflicts into a durable store; (d) automatic resolution of conflicts according to a flexible and configurable azqsxqxwdconflict resolution policy; (e) composable and extensible conflict handlers to filter and resolve conflicts; (f) automatic detection and removal of obsolete conflicts; and (g) programmatic conflict resolutions.
摘要:
A protocol for replicating replicas in a sync community. Each replica maintains a knowledge that represents changes that the replica is aware of. Each replica does not typically maintain knowledge about other replicas. The protocol includes messages that include knowledge about changes on the various replicas. Using the knowledge, the replicas can enumerate changes and send the changes using asynchronous messages that do not need to be received in any particular order. The protocol enables filters to ensure that a valid replication is possible using a minimum knowledge argument. The protocol also enables replicas to partially replicate using filtered knowledge.
摘要:
Various embodiments of the present invention are directed to systems and method for detecting conflicts and applying conflict resolutions during manual and automatic conflict resolution operations. Several embodiments are directed to preventing both: (a) non-convergence of conflict resolutions, where partners can end up in a divergent steady state (i.e. have different data in the absence of outstanding conflicts); and (b) a non-terminating ping-pong of conflict resolutions between partners (which can occur with certain inefficient solutions that continuously update metadata for each conflict resolution without end). Certain specific embodiments of the present invention are directed to a method for maintaining knowledge that guarantees convergence of data, even when different partners apply different conflict resolutions.
摘要:
Direction based pointing services are enabled for a portable electronic device including a positional component for receiving positional information as a function of a location of the portable electronic device, a directional component that outputs direction information as a function of an orientation of the portable electronic device and a location based engine that processes the positional information and the direction information to determine points of interest relative to the portable electronic device as a function of at least the positional information and the direction information. A set of scenarios with respect to movable endpoints of interest in the system emerge.
摘要:
Various embodiments of the present invention are directed to systems and method for detecting conflicts and applying conflict resolutions during manual and automatic conflict resolution operations. Several embodiments are directed to preventing both: (a) non-convergence of conflict resolutions, where partners can end up in a divergent steady state (i.e. have different data in the absence of outstanding conflicts); and (b) a non-terminating ping-pong of conflict resolutions between partners (which can occur with certain inefficient solutions that continuously update metadata for each conflict resolution without end). Certain specific embodiments of the present invention are directed to a method for maintaining knowledge that guarantees convergence of data, even when different partners apply different conflict resolutions.
摘要:
Various embodiments of the present invention are directed to systems and methods for synchronizing mixed elements (MEs) comprising structure data and unstructured filestreams between peer computer systems in a hardware/software interface system environment that does not permit snapshotting of large unstructured ME filestreams during synchronization. For several such embodiments, the method comprises synchronizing the ME in two steps, one for snapshotting the structured data component of the ME (as well as the cv of the filestream but not the filestream itself) and one for locking and transmitting the filestream to the receiving sync peer if and only if, after being locked, it is determined that the filestream is unchanged from the time of the ME data component snapshot.
摘要:
Systems and methods for reporting the occurrence of events in a computer system to event subscriber software. A computer system includes a central repository wherein event subscribers register the types or classes of events for which they require notification and event providers register the types or classes of events they are capable of detecting and for which they will provide notifications. The registrations, both by providers and subscribers, are made according to a standardized hierarchical classification of event classes and are preferably expressed in the form of queries. The computer system also includes an event-filtering component that receives notification of the occurrence of events, filters the events, and reports selected events to the subscriber software. The event-filtering component can expose standardized interfaces to the event providers that report events and to the subscriber software to which events are reported. Filtering can be facilitated by event-filtering definitions written in a query language and associated with the subscriber software. The definitions are processed in the context of an object-oriented, hierarchical classification of event classes that comprehend any possible events that can be reported by the event providers. When reported events satisfy one or more query-based filtering definitions, the events are passed to the appropriate subscriber software. Otherwise, the events are discarded. Events can be filtered and grouped according to the time of their occurrence. Filtering can be further simplified by registering event-reporting definitions defining the scope of events to be reported by particular event providers.
摘要:
Systems and methods for constructing and using filtering trees to compare events, data, or other instances of objects defined in an object-oriented schema against one or more query-based definitions. The filtering trees correspond to the logical expressions of one or more query-based definitions, and represent the structure of the computer-executable instructions for comparing events with the definitions. The filtering trees can be traversed so as to simultaneously compare the parameters of an event against multiple logical expressions. The filtering tree is traversed in a top to bottom cascading fashion until a leaf node is encountered in a process that is conceptually equivalent to processing the logical operations associated with the nodes. When a leaf node is encountered, an ordered set of logical values associated with the leaf node indicates which, if any, of the definitions are satisfied by the event. The filtering definitions can be conveniently used to filter events detected by event providers in a computer system so as to identify the event that are to be reported to event subscribers.