Patents Represented by Attorney Microsoft Corporation
  • Patent number: 6961721
    Abstract: The invention concerns a detection of duplicate tuples in a database. Previous domain independent detection of duplicated tuples relied on standard similarity functions (e.g., edit distance, cosine metric) between multi-attribute tuples. However, such prior art approaches result in large numbers of false positives if they are used to identify domain-specific abbreviations and conventions. In accordance with the invention a process for duplicate detection is implemented based on interpreting records from multiple dimensional tables in a data warehouse, which are associated with hierarchies specified through key—foreign key relationships in a snowflake schema. The invention exploits the extra knowledge available from the table hierarchy to develop a high quality, scalable duplicate detection process.
    Type: Grant
    Filed: June 28, 2002
    Date of Patent: November 1, 2005
    Assignee: Microsoft Corporation
    Inventors: Surajit Chaudhuri, Venkatesh Ganti, Rohit Ananthakrishna
  • Patent number: 6961763
    Abstract: An architecture for an automation system is disclosed that includes look-up services, a soft-state store, and a publication/subscription eventing component. The look-up services maintain a database of a number of devices to be controlled and monitored, and a database of a number of device objects corresponding to the devices. The services can be divided into attribute-based and name-based services. The soft-state store manages variables regarding the devices and the device objects, including heartbeats. The eventing component enables subscriptions to events related to changes in the variables. The architecture can include management daemons, such as a monitoring daemon that detects problems with power line devices.
    Type: Grant
    Filed: August 17, 2000
    Date of Patent: November 1, 2005
    Assignee: Microsoft Corporation
    Inventors: Yi-Min Wang, Wilf G. Russell, Jun Xu, Anish K. Arora, Paramvir Bahl
  • Patent number: 6961942
    Abstract: A method, apparatus, and computer program product provide applications and application developers with generic access from user mode to the L2CAP layer of Bluetooth by exposing the L2CAP layer to user mode via a socket interface. In particular, a kernel mode primary component and user mode helper component cooperate to expose a Winsock interface to user mode components, and to manage various Bluetooth-specific functions and operations, allowing a user mode user application to access Bluetooth functionality without providing Bluetooth-specific commands or actions, and without being required to use RFCOMM.
    Type: Grant
    Filed: November 6, 2000
    Date of Patent: November 1, 2005
    Assignee: Microsoft Corporation
    Inventors: Stanley W. Adermann, Siamak Poursabahian, Louis J. Giliberto, Doron J. Holan, Husni Roukbi, Kenneth D. Ray, Joseph M. Joy, William Michael Zintel, Mark D. Bertoglio
  • Patent number: 6961750
    Abstract: A server-side control object processes and generates a client-side user interface element for display on a web page. Multiple server-side control objects may be combined into a hierarchy of server-side control objects that cooperate to generate the resulting authoring language code, such as HTML, for display of a web page on a client. The operation of processing the client-side user interface element may include at least one of an event handling operation, a postback data handling operation, a data binding operation, and a state management operation. The state management operation relates to the state of a server-side control object.
    Type: Grant
    Filed: May 18, 2000
    Date of Patent: November 1, 2005
    Assignee: Microsoft Corp.
    Inventors: Gary S. Burd, Kenneth B. Cooper, Scott D. Guthrie, David S. Ebbo, Mark T. Anders, Ted A. Peters, Stephen J. Millet
  • Patent number: 6959401
    Abstract: A technique is described for guaranteeing recovery in a computer system comprising of recovery contracts with a plurality of obligations for a message exchange between a first component and a second component. Three forms of contract are described, governing interactions between three types of components. Each contract is bilateral, i.e. between a first component and a second component. The first and second components have mutual agreement on when the contract will be released to facilitate log truncation, and independent and/or autonomous recovery. The use of persistent and transactional components and the requirements for ensuring that it is possible to replay the components in a deterministic fashion, can result in a high cost or overhead in logging of nondeterministic events, including component interactions.
    Type: Grant
    Filed: May 23, 2002
    Date of Patent: October 25, 2005
    Assignee: Microsoft Corporation
    Inventors: David Bruce Lomet, Roger S. Barga
  • Patent number: 6957274
    Abstract: Concurrent access to a first networking connection, such as an Internet connection, and a second networking connection, such as a virtual private networking (VPN) connection, is disclosed. The first connection is established, adding first default routes to a routing table. The first routes are associated with the first connection and have priority. The second connection is established, adding second default routes to the routing table. The second routes are associated with the second connection, and have priority over the first routes. Specific routes associated with the second connection are added from a preset routing file to the routing table. The second routes are removed, regaining priority for the first routes. Data packets intended for the second connection are routed according to the specific routes added to the routing table from the preset table. Other data packets are routed to the first connection according to the first routes.
    Type: Grant
    Filed: June 27, 2001
    Date of Patent: October 18, 2005
    Assignee: Microsoft Corporation
    Inventors: Rob M. Trace, Donald H. Rule, Nicholas P. Ball
  • Patent number: 6947725
    Abstract: Many examples exist of a mobile node moving between the operational zones of multiple network access points or base stations. To minimize delay in re-authenticating with the network through a new base station, an additional form authenticated access mode called “credential authenticated” access is provided. The mobile unit is fully authenticated in the first base station (e.g., the user has logged in and paid for service). Thereafter, the first base unit transmits a “credential” to the mobile node that may be used by other base stations to establish trust with the mobile node prior to full re-authentication. Upon entering the operational zone of the second base station, the mobile node can transmit the credential to the second base station, which may accept the credential and allow access by the mobile node to the network through the second base station before full authentication has completed.
    Type: Grant
    Filed: March 4, 2002
    Date of Patent: September 20, 2005
    Assignee: Microsoft Corporation
    Inventor: Anssi Tuomas Aura
  • Patent number: 6920461
    Abstract: An application program interface (API) provides a set of functions for application developers who build Web applications on Microsoft Corporation's .NET™ platform.
    Type: Grant
    Filed: July 10, 2001
    Date of Patent: July 19, 2005
    Assignee: Microsoft Corp.
    Inventors: Anders Hejlsberg, Blaine J. Dockter, Dax H. Hawkins, Giovanni M. Della-Libera, Jun Fang, Luca Bolognese, Mark P. Ashton, Mark A. Boulter, Omri Gazitt
  • Patent number: 6879718
    Abstract: In computerized recognition having multiple experts, a method and system is described that obtains an optimum value for an expert tuning parameter in a single pass over sample tuning data. Each tuning sample is applied to two experts, resulting in scores from which ranges of parameters that correct incorrect recognition errors without changing correct results for that sample are determined. To determine the range data for a given sample, the experts return scores for each prototype in a database, the scores separated into matching and non-matching scores. The matching and non-matching scores from each expert are compared, providing upper and lower bounds defining ranges. Maxima and minima histograms track upper and lower bound range data, respectively. An analysis of the histograms based on the full set of tuning samples provides the optimum value. For tuning multiple parameters, each parameter may be optimized by this method in isolation, and then iterated.
    Type: Grant
    Filed: November 6, 2001
    Date of Patent: April 12, 2005
    Assignee: Microsoft Corp.
    Inventor: Gregory N. Hullender
  • Patent number: 6865607
    Abstract: A system and method for providing a pluggable channel that can be employed to customize data communications associated with a remote method call is provided. The system includes a pluggable channel that can interact with sinks (e.g., message sinks, security sinks, transports sinks) that implement object-oriented interfaces that can be employed by a distributed object system. The system also includes a selector that can select and associate sinks with the pluggable channel, which facilitates providing a customized, pluggable channel on a per proxy basis.
    Type: Grant
    Filed: June 28, 2001
    Date of Patent: March 8, 2005
    Assignee: Microsoft Corp.
    Inventors: Stephen Peter de Jong, Caleb L. Doise, Jonathan C. Hawkins, Gopala Krishna R. Kakivaya, Petrus L. Obermeyer, Manish S. Prabhu
  • Patent number: 6862027
    Abstract: A CPU module includes a host element configured to perform a high-level host-related task, and one or more data-generating processing elements configured to perform a data-generating task associated with the high-level host-related task. Each data-generating processing element includes logic configured to receive input data, and logic configured to process the input data to produce output data. The amount of output data is greater than an amount of input data, and the ratio of the amount of input data to the amount of output data defines a decompression ratio. In one implementation, the high-level host-related task performed by the host element pertains to a high-level graphics processing task, and the data-generating task pertains to the generation of geometry data (such as triangle vertices) for use within the high-level graphics processing task. The CPU module can transfer the output data to a GPU module via at least one locked set of a cache memory.
    Type: Grant
    Filed: June 30, 2003
    Date of Patent: March 1, 2005
    Assignee: Microsoft Corp.
    Inventors: Jeffrey A. Andrews, Nicholas R. Baker, J. Andrew Goossen, Michael Abrash
  • Patent number: 6856705
    Abstract: A blended result image is computed using guided interpolation to alter image data within a destination domain. The destination domain may be altered based on a guided interpolator that is either dependent or not dependent upon a source image. When blending a source region into a destination region of an image, guided interpolation eliminates or minimizes apparent seams between the inserted region and the rest of the image. A variety of interpolation guides may be used to yield different effects in the blended results image. Such interpolation guides may include without limitation an identity guide, a smooth guide, a filtering guide, a transparent guide, a masking guide, and a weighted average combination of various guides.
    Type: Grant
    Filed: April 16, 2003
    Date of Patent: February 15, 2005
    Assignee: Microsoft Corporation
    Inventors: Patrick Perez, Michel Gangnet, Andrew Blake
  • Patent number: 6850925
    Abstract: Database system query optimizers use several techniques such as histograms and sampling to estimate the result sizes of operators and sub-plans (operator trees) and the number of distinct values in their outputs. Instead of estimates, the invention uses the exact actual values of the result sizes and the number of distinct values in the outputs of sub-plans encountered by the optimizer. This is achieved by optimizing the query in phases. In each phase, newly encountered sub-plans are recorded for which result size and/or distinct value estimates are required. These sub-plans are executed at the end of the phase to determine their actual result sizes and the actual number of distinct values in their outputs. In subsequent phases, the optimizer uses these actual values when it encounters the same sub-plan again.
    Type: Grant
    Filed: May 15, 2001
    Date of Patent: February 1, 2005
    Assignee: Microsoft Corporation
    Inventors: Surajit Chaudhuri, Ashraf I. Aboulnaga
  • Patent number: 6851108
    Abstract: A verification module evaluates intermediate language code to verify that the code is type safe before passing the code for execution. Code that is not deemed type safe can cause execution errors, corrupt the runtime environment in which the code is executing, or cause unauthorized access to protected system resources. As such, the verification module protects a computer system from intentional or inadvertent breaches of the computer system's defenses. The verification module verifies the type safety of intermediate language code that supports significant high-level language constructs prohibited by verification modules in the prior art. One exemplary verification module verifies intermediate language code that includes one or more reference-based parameter, such as a pointer (or reference), a value class containing pointers, a RefAny parameter, or a nested pointer.
    Type: Grant
    Filed: November 16, 2000
    Date of Patent: February 1, 2005
    Assignee: Microsoft Corporation
    Inventors: Don Syme, Andrew Gordon, Jonathan A. Forbes, Vance P. Morrison
  • Patent number: 6842753
    Abstract: Aggregation queries are performed by first identifying outlier values, aggregating the outlier values, and sampling the remaining data after pruning the outlier values. The sampled data is extrapolated and added to the aggregated outlier values to provide an estimate for each aggregation query. Outlier values are identified by selecting values outside of a selected sliding window of data having the lowest variance. An index is created for the outlier values. The outlier data is removed from the window of data, and separately aggregated. The remaining data without the outliers is then sampled in one of many known ways to provide a statistically relevant sample that is then aggregated and extrapolated to provide an estimate for the remaining data. This sampled estimate is combined with the outlier aggregate to form an estimate for the entire set of data. Further methods involve the use of weighted sampling and weighted selection of outlier values for low selectivity queries, or queries having group by.
    Type: Grant
    Filed: January 12, 2001
    Date of Patent: January 11, 2005
    Assignee: Microsoft Corporation
    Inventors: Surajit Chaudhuri, Vivek R. Narasayya, Rajeev Motwani, Mayur D. Datar
  • Patent number: 6842424
    Abstract: Methods and systems for detecting and predicting congestion patterns from network feedback are described. In the inventive embodiments, network feedback in the form of binary feedback messages is received. The network feedback can comprise any suitable feedback messages and, in the illustrated and described embodiments comprise packet loss events or ECN marks, to name just a few. The inventive embodiment uses the network feedback to predict when congestion is likely to occur in the future. Based on these predictions, the behavior of end users within the system can be modified so that congestion is reduced. Specifically, the data packets that are typically transmitted by the end users can be delayed until such a time when the predicted congestion is mitigated. Thus, the inventive systems and methods take a predictive, proactive approach to addressing network congestion issues, rather than a reactive approach.
    Type: Grant
    Filed: September 5, 2000
    Date of Patent: January 11, 2005
    Assignee: Microsoft Corporation
    Inventors: Peter B. Key, Laurent Massoulie, Koenraad Laevens
  • Patent number: 6829569
    Abstract: Social dilemma virtual world environment (VWE) software facilitates creation and usage of social dilemma tests or exercises for measuring and analyzing online interactive societies. An online interactive society arises whenever two or more people interact through a computer-based communication medium, which may include text or written communication, audio communication, still or motion video communication, or any combination of these communication formats. The social dilemma VWE software and the methodology of the present invention are capable of distinguishing the levels of cooperation and trust that are created by various interface and social factors within online interactive societies. Evaluating with social dilemma VWE software the effects of such social and interface factors on the degree of online cooperation allows such factors to be incorporated into the design and functionality of online interactive societies.
    Type: Grant
    Filed: September 9, 1999
    Date of Patent: December 7, 2004
    Assignee: Microsoft Corporation
    Inventors: Steven M. Drucker, Joshua Berman, Peter Kollock
  • Patent number: 6795093
    Abstract: A text discussion script data structure is stored on a computer-readable medium in association with a real-time computer discussion. The text discussion script data structure is specified by an author to guide a real-time, multi-user, text discussion or “chat.” The text discussion script includes one or more successive scenes having roles for each of one or more discussion participants. For each scene and role, the author provides instructions and background information that guide the discussion participants, but do not provide the explicit text of the real-time discussion. Accordingly, the text discussion script is adapted to guide real-time computer discussions or chats in a scalable, replicable way, while allowing participants to generate the actual discussion dialog. The text discussion script data structure may be specified by markup language tags that, together, form a markup language tag schema.
    Type: Grant
    Filed: October 11, 2000
    Date of Patent: September 21, 2004
    Assignee: Microsoft Corporation
    Inventors: Harry R. Chesley, Lili Cheng, Suzana Seban, Jennifer Landau
  • Patent number: 6538640
    Abstract: A process for encoding the movement of a computer pointing device to better control a cursor or other object on a display. The process makes use of two assumptions relating to illegal transitions (skipped states) that enables information relating to such illegal transitions to be included in the encoding process that samples states of a waveform produced by a detector in the pointing device. The first assumption refers to the directional ambiguity of a skipped state. When examined logically, it can be determined that this directional ambiguity need not be a concern, because a pointing device moving fast enough so that states are missed is realistically unable to reverse direction so fast that subsequent samples of the waveform would miss the reversal. Therefore, if a state is skipped, it is a reasonable assumption to assign the direction to the skipped state determined from the preceding samples.
    Type: Grant
    Filed: August 31, 2000
    Date of Patent: March 25, 2003
    Assignee: Microsoft Corporation
    Inventors: Brett T. Ostrum, Gary Rensberger