Patents Assigned to Microsoft
  • Publication number: 20100100688
    Abstract: A low-overhead conditional synchronization instruction operates on a synchronization variable which includes a lock bit, a state specification, and bits for user-defined data. The instruction specifies the memory address of the synchronization variable and a condition. During the synchronization instruction the condition is compared to the state specification within an atomic region. The match succeeds if the condition matches the state specification and the lock bit is clear. The synchronization instruction may operate with a cache under a cache coherency protocol, or without a cache, and may include a timeout operand.
    Type: Application
    Filed: October 16, 2008
    Publication date: April 22, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: David Harper, Burton Smith
  • Publication number: 20100100885
    Abstract: A processing system includes a transactional memory, first and second resource managers, and a transaction manager for a concurrent program having a thread including an atomic transaction having a side-effecting action. The first resource manager is configured to enlist in the atomic transaction and manage a resource related to the side effecting action. The second resource manager is configured to enlist in the atomic transaction and manage the transaction memory. The transaction manager is coupled to the first and second resource managers and manager is configured to receive a vote from the first and second resource managers as to whether to commit the transaction. The side-effecting action is postponed until after the transaction commits or applied along with a compensating action to the side-effecting action.
    Type: Application
    Filed: October 20, 2008
    Publication date: April 22, 2010
    Applicant: Microsoft Corporation
    Inventors: Dana Groff, Alexander Dadiomov, Yossi Levanoni
  • Publication number: 20100100890
    Abstract: In one embodiment, a computer system instantiates a queue manager configured to process a plurality of existing queue manager commands on messages in a message queue. The computer system instantiates a virtualized instance of a queue manager in a virtual layer associated with the queue manager in the computing system. The a virtualized queue manager instance provides supplemental queue manager commands usable in addition to existing queue manager commands, such that the queue manager can be used to implement the supplemental commands without substantial modification. The computer system receives an indication that a message in a message queue is to be accessed according to a specified command provided by the instantiated virtualized queue manager instance that is not natively supported by the queue manager and the virtualized queue manager performs the specified supplemental command as indicated by the received indication by performing one or more existing queue manager commands.
    Type: Application
    Filed: October 22, 2008
    Publication date: April 22, 2010
    Applicant: Microsoft Corporation
    Inventors: Affan Arshad Dar, James E. Johnson
  • Publication number: 20100100637
    Abstract: A media experience policy engine includes three components: an information manager, a policy evaluator, and an enforcement module. The information manager collects information regarding the current state of a media delivery system, such as, for example, usage of a CPU, memory, hard disk, (I/O) interface, and a network. This collected data is then verified by the policy evaluator to see if resource contention is, or is close to, occurring. If so, existing or potential conflicts are dealt with by the enforcement module, which applies corrections, such as, for example, limiting the access of later chronologic users, or degrading the user experience of all users, in accordance with a desired policy in order to vitiate the resource contention and maintain a user experience consistent with the desired policy.
    Type: Application
    Filed: December 24, 2009
    Publication date: April 22, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: Todd Bowra, Jeffrey Davis, Gurpratap Virdi, Nicholas Fang
  • Publication number: 20100100838
    Abstract: A data cell included in a document supporting cell structured data is conditionally formatted according to data that is stored in a separate location from the document. A user is allowed to select from a drop-down menu of related data sets a particular data set for conditionally formatting the data cell. The data cell is formatted according to the data set and the condition without requiring that the data set be stored locally in the document.
    Type: Application
    Filed: November 30, 2009
    Publication date: April 22, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: ERIC BARBER VIGESAA, BENJAMIN C. CHAMBERLAIN, CHRISTOPHER M. STREET, BRUCE CORDELL JONES
  • Publication number: 20100100953
    Abstract: This disclosure pertains generally to client authentication. One aspect of the disclosure relates to a first server for presenting evidence to a Domain Controller (DC) of a first authentication context being submitted from a client to the first server to obtain a delegable credential, wherein the credential can be used to request a second authentication context from that client to a second server. Another aspect relates to the first server providing a pass-thru with evidence to a DC. The evidence relates to a first authentication context being submitted from a client to the first server that it obtained a delegable credential. The pass-thru is used in combination with the credential to request a second authentication context from the client to a second server.
    Type: Application
    Filed: December 24, 2009
    Publication date: April 22, 2010
    Applicant: Microsoft Corporation
    Inventors: David R. Mowers, John Banes, Daniel R. Simon, Paul J. Leach
  • Publication number: 20100100716
    Abstract: Methods and systems for conserving power using predictive models and signaling are described. Parameters of a power management policy are set based on predictions based on user activity and/or signals received from a remote computer which define a user preference. In an embodiment, the power management policy involves putting the computer into a sleep state and periodically waking it up. On waking, the computer determines whether to remain awake or to return to the sleep state dependent upon the output of a predictive model or signals that encode whether a remote user has requested that computer remain awake. Before returning to the sleep state, a wake-up timer is set and this timer triggers the computer to subsequently wake-up. The length of time that the timer is set to may depend on factors such as the request from the remote user, context sensors and usage data.
    Type: Application
    Filed: October 22, 2008
    Publication date: April 22, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: James Scott, Paul Newson, Raman Sarin, Eric Horvitz
  • Publication number: 20100098235
    Abstract: A call forwarding system forwards telephone calls based on presence information of a user as reported by computing devices associated with a telephone number. When a telephone system receives an incoming call directed to one of the telephone numbers of the user's computing devices, it sends an incoming call event to each computing device. Upon receiving the incoming call event from a telephone system, each computing device determines whether the user is most likely present at that computing device based on the presence information. When a computing device determines that the user is most likely present at that computing device, it sends a notification to the telephone system to forward the incoming call to the telephone number associated with that computing device to effect the automatic forwarding of a call based on presence information.
    Type: Application
    Filed: November 10, 2009
    Publication date: April 22, 2010
    Applicant: Microsoft Corporation
    Inventors: Jonathan J. Cadiz, Amritansh Raghav, Sira P. Rao, Venkateshaiah Setty, Eran Shtiegman
  • Publication number: 20100100527
    Abstract: Systems and methods that enable removal of data from an endpoint, while not propagating such removal to other endpoints when synchronizing data sources associated therewith. A designation component can indicate items as forgotten items, wherein such items are being known to an endpoint and deleted therefrom—yet, reintroduced therein and reappearing (e.g., as a create) upon re-synchronizing with the replica over again. Moreover, the forgotten items can employ additional metadata such as in from of an additional bit that indicates whether an item is a forgotten item.
    Type: Application
    Filed: October 21, 2008
    Publication date: April 22, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: Lukasz Gwozdz, Michael Ray Clark, Siva Muhunthan, Lev Novik, Ashish B. Shah
  • Publication number: 20100100689
    Abstract: A transactional memory processing system provides for the integration of transactional memory concepts at the compiler-level into a higher-level traditional transaction processing system. Atomic blocks at the compiler-level can be specified as atomic block transactions and include the features of atomicity and isolation. Actions within this atomic block transaction include the enlistment of resource managers from a repository. The repository can now include a pre-programmed memory resource manager to manage the transactional memory. As in traditional transactions, a commit protocol can be used to determine if the actions are valid and can be exposed outside of the transaction. Unlike traditional transactions, however, the transaction is not necessarily doomed if all of the actions are not validated. Rather, memory conflicts can cause a rollback and re-execution of the atomic block transaction, which can be repeated as long as necessary, until the memory resource manger votes to commit.
    Type: Application
    Filed: January 14, 2009
    Publication date: April 22, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: Alexander Dadiomov, Dana Groff, Yosseff Levanoni, James E. Johnson
  • Publication number: 20100100416
    Abstract: A recommender system may be used to predict a user behavior that a user will give in relation to an item. In an embodiment such predictions are used to enable items to be recommended to users. For example, products may be recommended to customers, potential friends may be recommended to users of a social networking tool, organizations may be recommended to automated users or other items may be recommended to users. In an embodiment a memory stores a data structure specifying a bi-linear collaborative filtering model of user behaviors. In the embodiment an automated inference process may be applied to the data structure in order to predict a user behavior given information about a user and information about an item. For example, the user information comprises user features as well as a unique user identifier.
    Type: Application
    Filed: October 17, 2008
    Publication date: April 22, 2010
    Applicant: Microsoft Corporation
    Inventors: Ralf Herbrich, Thore Graepel, David Stern
  • Publication number: 20100100943
    Abstract: Permissions using a namespace is described. In an embodiment, a namespace system includes a network resource that has a resource permission, and includes a namespace that has one or more members associated with the namespace. The namespace system also includes a namespace permission to permission the network resource to one or more of the members of the namespace.
    Type: Application
    Filed: December 16, 2009
    Publication date: April 22, 2010
    Applicant: Microsoft Corporation One Microsoft Way
    Inventors: Michael A. Pacholec, Michael I. Torres, Apurva F. Dalia, Matthew S. Augustine, Mukeshkumar M. Beher
  • Publication number: 20100100517
    Abstract: The prediction of future data events using a generative model is disclosed. One disclosed embodiment comprises a method of predicting a search engine switch, by first tracking a sequence of events in a user search. Next, a search engine switch based upon the sequence of events tracked is predicted. Then, in response to predicting a search engine switch and prior to the user requesting a search engine switch, an action is taken toward changing a user experience.
    Type: Application
    Filed: October 21, 2008
    Publication date: April 22, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: Srivatsan Laxman, Vikram Tankasali, Ryen White
  • Publication number: 20100100564
    Abstract: A system and method are provided for improving a user search experience by identifying spam results in a result set produced in response to a query. The system may include a user interface spam feedback mechanism for allowing a user to indicate that a given result is spam. The system may additionally include an automated spam identification mechanism for implementing automated techniques on the given result to determine whether the given result is spam. The system may further include a merging component for merging the determinations of the user interface spam feedback mechanism and the automated spam identification mechanism for deriving an indicator of the likelihood that a given result is spam.
    Type: Application
    Filed: December 24, 2009
    Publication date: April 22, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: BRETT D. BREWER, ERIC B. WATSON
  • Publication number: 20100100725
    Abstract: Providing a remote computer user authentication service involves providing a reference to a user authentication service in a host server's source code (e.g., website source code). Further, integration code that may be used in an application programming interface (API) on the host server for interaction with a user authentication service can be provided. Additionally, a user interface (UI) for user authentication on the host server, and an authentication-test message on the host server using the UI may be provided. Also, providing authentication can comprise sending an authentication-request message to a mobile device designated by the user; and/or can comprise the user responding with information from the authentication-test message. The host server can be notified of the user's authentication after a correct response is received by the user authentication service.
    Type: Application
    Filed: October 20, 2008
    Publication date: April 22, 2010
    Applicant: Microsoft Corporation
    Inventors: Raymond Ozzie, Jack Ozzie, Thomas A. Galvin, Eric M. Patey
  • Publication number: 20100100690
    Abstract: Locks are used to protect variables. All variables protected by a lock are allocated on a page associated with a lock. When a thread (called the owner) acquires the lock, a local copy of the memory page containing the variable is created, the original memory page is protected, and all access of the variable in the owner thread is directed to the local copy. Upon releasing the lock, the changes from the local copy are carried over to the memory page and the memory page is unprotected. Any concurrent access of the variable by non-owner threads triggers an exception handler (due to the protection mechanism) and delays such an access until after the owner thread has finished accessing the variable.
    Type: Application
    Filed: October 21, 2008
    Publication date: April 22, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: Sriram Rajamani, Ganesan Ramalingam, Venkatesh-Prasad Ranganath, Kapil Vaswani
  • Publication number: 20100100701
    Abstract: A method for establishing and maintaining a differential snapshot of a set of files stored on a volume is disclosed. The invention achieves processing time and disk space optimizations by avoiding copy-on-write operations for logically insignificant moves of blocks, such as the block rearrangements characteristic of defragmentation utilities. A file system enhancement enabling the passing of a block copy command from the file system to lower-level drivers, is used to inform the snapshotter that a block move operation is not logically meaningful. When the logically insignificant move is of a block whose data forms part of the data captured in the snapshot virtual volume, and when the move is to a block location that is functioning as logical free space, the snapshotter can simply modify its block bitmap and update translation table entries without needing to perform a copy-on-write.
    Type: Application
    Filed: December 23, 2009
    Publication date: April 22, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: NORBERT P. KUSTERS, BENJAMIN A. LEIS, MARK J. ZBIKOWSKI
  • Patent number: 7702680
    Abstract: Document summarization is performed by scoring individual words in sentences in a document or document cluster. Sentences from the document or document cluster are selected to form a summary based on the scores of the words contained in those sentences.
    Type: Grant
    Filed: November 2, 2006
    Date of Patent: April 20, 2010
    Assignee: Microsoft Corporation
    Inventors: Wen-tau Yih, Joshua T. Goodman, Lucretia H. Vanderwende, Hisami Suzuki
  • Patent number: 7703090
    Abstract: Uninstalling a patch applied to a software product installed on a computer. A current state of a software product is identified. A desired state of the software product is determined. The desired state of the software product represents a state of the software product when a patch applied to the software product is removed from the software product. The patch is removed from the software product to transition the software product from the identified current state to the determined desired state.
    Type: Grant
    Filed: August 31, 2004
    Date of Patent: April 20, 2010
    Assignee: Microsoft Corporation
    Inventors: Carolyn L. Napier, Christopher S. Gouge, David E. Kays, Rahul Thombre
  • Patent number: 7702648
    Abstract: The present invention provides a localization entity in association with a business entity requested by a requester. During instantiation of the requested business entity, a localization event is triggered which causes a policy handler to implement a localization policy to identify localization values (found in the associated localization entity) for attributes in the business entity. The localization values are received from the localization entity associated with the business entity and are placed in the business entity, as localized values.
    Type: Grant
    Filed: June 17, 2003
    Date of Patent: April 20, 2010
    Assignee: Microsoft Corporation
    Inventors: David R. Keck, Terry A. Adams