Patents Represented by Law Firm The Law Offices of Albert S. Michalik
  • Patent number: 6473745
    Abstract: A method and system for providing intelligent advice to a user. An architecture is described wherein trigger points are placed in an application program, and an advice engine invoked by the application when a trigger point is reached. The advice engine obtains information such as a user's application data, and uses the data to test it against a number of conditions for that trigger point. For each condition met, the advice engine retrieves an advice template for providing advice corresponding to the condition, and based on information in the template versus display state information, decides whether to queue the advice for subsequent display to the user. A display process displays the queued advice according to a priority setting maintained in the template.
    Type: Grant
    Filed: July 31, 1998
    Date of Patent: October 29, 2002
    Assignee: Microsoft Corporation
    Inventors: Eric W. Doerr, Robert A. Cape, Christopher K. Brownell, Stephen N. Cole, Jan T. Miksovsky
  • Patent number: 6466932
    Abstract: A method and system for implementing policy by accumulating policies for a policy recipient from policy objects associated with a hierarchically organized structure of containers, such as directory containers (sites, domains and organizational units) that includes the policy recipient. Based on administrator input, policy settings for the policy recipient may be accumulated into a specific order by inheriting policy from higher containers, which may enforce their policy settings over those of lower containers. Policy that is not enforced may be blocked at a container. The result is an accumulated set of group policy objects that are ordered by relative strength to resolve any policy conflicts. Policy may be applied to a policy recipient by calling extensions, such as an extension that layers the policy settings into the registry or an extension that uses policy information from the objects according to the ordering thereof. Linking of group policy objects to one or more containers (e.g.
    Type: Grant
    Filed: March 16, 1999
    Date of Patent: October 15, 2002
    Assignee: Microsoft Corporation
    Inventors: Michael W. Dennis, Michele L. Freed, Daniel Plastina, Eric R. Flo, David E. Kays, Jr., Robert E. Corrington
  • Patent number: 6453426
    Abstract: A method and system for distributing various types of cluster data among various storage devices of a server cluster. Cluster core boot data that is needed to get the cluster up and running is stored on a quorum storage mechanism, separate from cluster configuration data which is stored on lower cost and/or higher performance storage. The quorum storage may be implemented via a quorum of nodes, a single quorum disk or a quorum of replica members. The state of the cluster configuration data, as well as the state of other cluster data, may be stored on the quorum storage, thereby assuring the integrity of the data while providing increased reliability through the use of mirror sets of storage elements or the like for storing that data. Significant flexibility in how a cluster may be configured is achieved, along with improved cluster performance and scalability.
    Type: Grant
    Filed: March 26, 1999
    Date of Patent: September 17, 2002
    Assignee: Microsoft Corporation
    Inventors: Rod Gamache, Michael T. Massa, Patrick J. Helland
  • Patent number: 6442578
    Abstract: A pen-based processor needs to be usable to input and edit script like a text-based computer but retain a resemblance to the user of a pad and pencil. The disclosed system and method implement input, editing and other manipulation of glyphs including handwritten script, ASCII test, bit-mapped images and drawings in a common document, using a compatible internal representation of the data and a simple, consistent set of user control functions. These functions are invoked using an intuitive and interactive set of user gestures which do not distract the user from the task of inputting or editing the document. A two-step gesture method avoids confusion between strokes and command gestures and allows use of similar gestures for different functions within the same and different contexts. The system infers from customary user writing conventions that certain relationships of data are to be preserved and maintains the relationships, subject to user override, during editing.
    Type: Grant
    Filed: October 19, 1998
    Date of Patent: August 27, 2002
    Assignee: Microsoft Corporation
    Inventor: Mitchell D. Forcier
  • Patent number: 6438621
    Abstract: The present invention provides a facility for performing self-patching of computer code in memory. The facility patches a segment of executable code at runtime under the control of the code segment. The code segment has a selected entry point, a patching section, and a patched section. The patching section is provided to patch the patched section in order to change the contents of the patched section. When the code segment is executed a first time at the selected entry point, execution jumps from the beginning of the patched section to a point beyond the patched section to execute the patching section. When the patching section is executed, the patching section patches the patched section. Finally, when the code segment is executed at the selected entry point after the patching section has patched the patch section, the patched section is executed rather than the patching section.
    Type: Grant
    Filed: August 14, 1998
    Date of Patent: August 20, 2002
    Assignee: Microsoft Corporation
    Inventors: Atsushi Kanamori, Jonathan G. Thomason
  • Patent number: 6434581
    Abstract: A pen-based processor needs to be usable to input and edit script like a text-based computer but retain a resemblance to the user of a pad and pencil. The disclosed system and method implement input, editing and other manipulation of glyphs including handwritten script, ASCII test, bit-mapped images and drawings in a common document, using a compatible internal representation of the data and a simple, consistent set of user control functions. These functions are invoked using an intuitive and interactive set of user gestures which do not distract the user from the task of inputting or editing the document. A two-step gesture method avoids confusion between strokes and command gestures and allows use of similar gestures for different functions within the same and different contexts. The system infers from customary user writing conventions that certain relationships of data are to be preserved and maintains the relationships, subject to user override, during editing.
    Type: Grant
    Filed: October 19, 1998
    Date of Patent: August 13, 2002
    Assignee: Microsoft Corporation
    Inventor: Mitchell D. Forcier
  • Patent number: 6430277
    Abstract: A method and system for determining dial-around compensation based on the actual data recorded at the smart pay telephones. Records maintained at the smart phone store dialed information, and, through a series of parsing and filtering operations on those records, along with database accesses based thereon, the Carrier Identification Code (CIC) associated with that call is determined. The CIC is based on the pay telephone's ANI-related information and the date and destination of the call. Once the CIC is known, another database is accessed to determine the known owner of that CIC. Output such as billing information may then be generated to collect compensation from the owner.
    Type: Grant
    Filed: February 20, 2002
    Date of Patent: August 6, 2002
    Inventors: Rodney L. Roadifer, Charles Z. Greene
  • Patent number: 6427168
    Abstract: A method and architecture that enables performance monitoring in a centralized information source model. A refresher is provided into which a client process such as a management application may add information objects obtained from a common information model object manager (the CIMOM 64). If the client a returned object to the refresher, this signals the CIMOM 64 that the client process wants performance monitoring. If the CIMOM 64 determines that the information comes from a high performance provider, the CIMOM 64 loads the high-performance provider into the client process space. A refresh call updates the objects via the high performance providers without needing to again contact the CIMOM 64, resulting in a highly efficient mechanism for providing information on a regular basis. Multiple providers may be in a single refresher, multiple refreshers may be used, and refreshers may be loaded within other refreshers, providing additional flexibility and ease of use to a client process.
    Type: Grant
    Filed: July 26, 1999
    Date of Patent: July 30, 2002
    Assignee: Microsoft Corporation
    Inventor: Raymond W. McCollum
  • Patent number: 6418554
    Abstract: A method and mechanism for automatically installing software implementations such as applications and COM classes as they are needed from an external source. When a software implementation is needed, the mechanism first looks to the local system (e.g., registry) for that software implementation, and if found, returns the information such as a local path needed to use the software implementation. If the implementation is not found, the mechanism looks to another source, such as a CD-ROM or a centralized class store of a network, to locate the needed implementation. When located, the implementation is downloaded and locally installed from the source, and a local path is returned in a manner that is essentially transparent to the user. Software implementations such as application products may be divided into features and components to improve on-demand installation thereof.
    Type: Grant
    Filed: September 21, 1998
    Date of Patent: July 9, 2002
    Assignee: Microsoft Corporation
    Inventors: John C. Delo, Malcolm S. Haar, Chetan A. Parulekar, Tracy D. Ferrier, Benjamin Chamberlain, David E. Gonzalez, David R. Mckinnis
  • Patent number: 6418239
    Abstract: A method and mechanism for displaying partial results of full context handwriting recognition. As handwritten characters are entered into a system, a shape matcher associates the character with a plurality of alternate code points, with each alternate code point having probability information associated therewith. The alternate code points are placed at the end of a queue, and a cost is determined from each alternate code point to any immediately preceding alternate in the queue. The cost is based on the probability information of the alternates and a transition cost therebetween. Then, the lowest cost path back from each of the alternates at the end of the queue to an alternate at the beginning of the queue is determined. If each lowest cost path back converges to a common alternate in the queue, the common alternate and any previous alternates on the path back are recognized as the code points for each of the handwritten characters associated therewith.
    Type: Grant
    Filed: May 16, 2000
    Date of Patent: July 9, 2002
    Assignee: Microsoft Corporation
    Inventors: Gregory N. Hullender, Patrick M. Haluptzok
  • Patent number: 6067541
    Abstract: A method and system for improved monitoring of document changes in a search engine by an indexing program. Once an indexing or other such monitoring program is halted, upon restart the monitoring program needs to update its own files and its indexes to reflect document changes that occurred while halted. A file system such as the Windows NT file system persistently logs document change information on disk in a monotonically increasing, uniquely-numbered persistent record, which further identifies the file that has changed. The method and system utilize the logged change information to efficiently maintain the indexes, and to rapidly update the indexes after a shutdown and subsequent restart.
    Type: Grant
    Filed: September 17, 1997
    Date of Patent: May 23, 2000
    Assignee: Microsoft Corporation
    Inventors: Sitaram C. V. Raju, Srikanth Shoroff, Kyle G. Peltonen
  • Patent number: 6012096
    Abstract: A method and system for determining network latency between clients in a computer network, such as in a gaming zone environment. Each client determines the network latency between each other client via a ping, response, and response-response protocol. To this end, a first client places first time information such as a timestamp into a (ping) data packet and sends the packet to the second client, who places second time information into the packet, and sends the packet as a response packet back to the first client. The first client determines a first network latency based on its current time and the first time information returned in the response packet. The first client then sends the packet back to the second client as a response to the response packet. The second client determines a second latency based on the current time information at the second client and the second time information received in the response-response packet.
    Type: Grant
    Filed: April 23, 1998
    Date of Patent: January 4, 2000
    Assignee: Microsoft Corporation
    Inventors: Craig A. Link, Hoon Im
  • Patent number: 5978795
    Abstract: A method and system for maintaining a binary tree of pointers to a stream of data and for searching same. A novel binary tree is created by a search engine in which the nodes associated with strings in the data stream which are closer to the current data stream position are nearer the root of the tree than nodes associated with strings which are farther. As the current position in the stream is advanced, the search engine inserts a new node to the tree for that position as the root node. The tree is then restructured based on the relative value of the strings of each node while preserving the temporal order of the tree such that strings nearer the current position are associated with nodes which are closer to the root. The tree is ideal for searching data for LZ77-based data compression, since a single traversal of the tree returns the longest match length with the smallest offset.
    Type: Grant
    Filed: January 14, 1997
    Date of Patent: November 2, 1999
    Assignee: Microsoft Corporation
    Inventors: Tomi J. Poutanen, Jonathan Forbes
  • Patent number: 5973755
    Abstract: A method and system for improved motion compensation between a previous frame of video information and a new frame. Each block of pixels in a block-based compression scheme uses four vectors, three from proximate blocks, to determine motion-induced changes to its pixels. The vectors are interpolated for each pixel based on the location of the pixel in the block with respect to the vectors. The address of each pixel in the frame block of the previous frame is altered based on the resultant vector determined therefor, whereby a color value for the new pixel is obtained from the altered address. Sharp contrasts at the edges between blocks are eliminated due to the gradual blending obtained by using vectors of the adjacent blocks to determine a pixel's color.
    Type: Grant
    Filed: April 4, 1997
    Date of Patent: October 26, 1999
    Assignee: Microsoft Corporation
    Inventor: Steven A. Gabriel