Patents by Inventor Michael Burrows

Michael Burrows has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 6745194
    Abstract: A technique for deleting duplicate records referenced in an index of a database is disclosed. In one embodiment, the technique may be realized by receiving a record; determining a fingerprint for the record; comparing the fingerprint of the record with fingerprints of previously indexed records; and, when the comparing act determines that the fingerprint of the current received record is the same as at least one of the fingerprints of any of the previously indexed records, identifying the current record as a record to be deleted.
    Type: Grant
    Filed: August 3, 2001
    Date of Patent: June 1, 2004
    Assignee: Alta Vista Company
    Inventor: Michael Burrows
  • Publication number: 20040093371
    Abstract: A resource may be abused if its users incur little or no cost. For example, e-mail abuse is rampant because sending an e-mail has negligible cost for the sender. Such abuse may be discouraged by introducing an artificial cost in the form of a moderately expensive computation. Thus, the sender of an e-mail might be required to pay by computing for a few seconds before the e-mail is accepted. Unfortunately, because of sharp disparities across computer systems, this approach may be ineffective against malicious users with high-end systems, prohibitively slow for legitimate users with low-end systems, or both. Starting from this observation, we identify moderately hard, memory bound functions that most recent computer systems will evaluate at about the same speed, and we explain how to use them for protecting against abuses.
    Type: Application
    Filed: November 8, 2002
    Publication date: May 13, 2004
    Applicant: Microsoft Corporation.
    Inventors: Michael Burrows, Martin Abadi, Mark Steven Manasse, Edward P. Wobber, Daniel Ron Simon
  • Patent number: 6701317
    Abstract: A process for constructing a server for collecting, arranging and storing data that defines the connectivity of pages on the World Wide Web (Web). The process input is a set of compressed ASCII links files, wherein each links file is a series of source URLs and corresponding destination URLs. A temporary URLs_info Table is created and initialized. The links files and URLs metadata are read. Buffers of unique URLs are sorted and written from the links files into URL runs. An ID Index is created from the URL_info table. CS_ids are assigned to URLs and written to the ID Index. Both a compressed URL data structure and a URL Index are created. A Host Table is created. URL fingerprints are converted to CS_ids, and preliminary outstarts to CS_ids and preliminary outstarts and outlinks tables are created. Compressed outstarts and outlinks tables are created from the preliminary tables. Subsequently, compressed instarts and inlinks tables are created based on the outstarts and outlinks tables.
    Type: Grant
    Filed: September 19, 2000
    Date of Patent: March 2, 2004
    Assignee: Overture Services, Inc.
    Inventors: Janet Lynn Wiener, Michael Burrows
  • Patent number: 6662364
    Abstract: A system and method for implementing mutual exclusion locks (mutexes) is provided. Mutexes of the present invention designate whether they are to be synchronized using fast nonatomic load/store sequences or, alternatively, expensive atomic hardware instructions. When a requesting thread requests a target mutex, the target mutex is synchronized using the method designated by the target mutex. In some embodiments, the designated synchronization method may be changed to the atomic method when the requesting thread is not the thread associated with the target mutex. In other embodiments, the designated synchronization method may be determined by a heuristic function. For example, the synchronization method may be changed to the atomic method when a mutex request counter, which penalizes thread changes, underflows.
    Type: Grant
    Filed: November 5, 1999
    Date of Patent: December 9, 2003
    Assignee: Hewlett-Packard Company, L.P.
    Inventors: Michael Burrows, Mark Thierry Vandervoorde, Sanjay Ghemawat
  • Publication number: 20030140035
    Abstract: An indexer indexes a database of documents, and a search engine searches the database of documents. Nesting level information stored in index entries is used to identify, and match together, start and end meta words comprising fields at assorted nesting levels within a document. Based on a query specifying words to be found within fields, spatial criteria are applied to the identified meta words to determine if the specified words are found within the specified fields. A subset of the documents have nested fields, and each nested field has an associated start meta word and end meta word. Each meta word has an associated nesting level. Each document is indexed by parsing the document to determine locations within the document of words and meta words, as well as the nesting level associated with each meta word. An index is generated that has word entries, meta word entries, and generic meta word entries.
    Type: Application
    Filed: January 7, 2002
    Publication date: July 24, 2003
    Inventor: Michael Burrows
  • Patent number: 6598051
    Abstract: A connectivity server for a collecting, arranging and representing data defining the interconnection of pages on the World Wide Web (Web). A URL Database stores URLs and associates a fingerprint and CS_id with each URL. The URL Database interface is operable to translate between any two of a URL, a fingerprint, and a Host_id. A Host Database associates a Host_id with each distinct hostname in the URL Database. The Host Database interface is operable to accept a Host_id and return a number equal to the number of URLs on the respective host and to return the CS_ids of those URLs. A Link Database stores links between source URLs and destination URLs. The Link Database interface is operable to retrieve, for a given CS_id, the number of inlinks to and outlinks from the URL corresponding to the CS_id.
    Type: Grant
    Filed: September 19, 2000
    Date of Patent: July 22, 2003
    Assignee: Altavista Company
    Inventors: Janet L. Wiener, Raymond P. Stata, Michael Burrows
  • Publication number: 20030126590
    Abstract: A data-type checker dynamically verifies program operation. The data-type checker, while executing a specified computer program, maintains a shadow array that has entries corresponding to respective memory locations used by the specified computer program. Each entry of the shadow array indicates a data type of the corresponding respective memory location. While executing the specified computer program, the data-type checker executes each of a set of instructions of the computer program. For the execution of each instruction in a subset of the set of instructions of the computer program, the data-type checker determines whether execution of the instruction is inconsistent with an entry of the shadow array and, if so, generates a report. The data-type checker then executes the instruction, and updates the shadow array in accordance with execution of the instruction.
    Type: Application
    Filed: December 28, 2001
    Publication date: July 3, 2003
    Inventors: Michael Burrows, Stephen Neil Freund
  • Publication number: 20030023458
    Abstract: A system and method for providing medical care to a patient via a virtual call center, regardless of the patient's location and a medical care agent's location, is disclosed. A patient digital processor allows a patient to provide a patient profile to the medical care system that is received by a medical care digital processor. A medical care agent digital processor allows a medical care agent to provide their characteristics to the medical care digital processor. Upon patient initiation, the medical care processor analyzes the patient profile to determine an appropriate medical care agent to address the patient's medical queries. A connection is then made between the patient digital processor and the medical care agent digital processor to allow “real time” interaction. Additional medical care agents may be added to the connection for additional medical analysis and input.
    Type: Application
    Filed: July 27, 2001
    Publication date: January 30, 2003
    Applicant: Cyber-Care, Inc.
    Inventors: John Haines, Michael Burrow, John Peifer, Andrew Hopper, Stephen Ratzel
  • Publication number: 20020138509
    Abstract: A web crawler system includes a central processing unit for performing computations in accordance with stored procedures and a network interface for accessing remotely located computers via a network. A web crawler module downloads pages from remotely located servers via the network interface. A first link processing module obtains page link information from the downloaded page; the page link information includes for each downloaded page a row of page identifiers of other pages. A second link processing module encodes the rows of page identifies in a space efficient manner. It arranges the rows of page identifiers in a particular order. For each respective row it identifies a prior row, if any, that best matches the respective row in accordance with predefined row match criteria, determines a set of deletes representing page identifiers in the identified prior row not in the respective row, and determines a set of adds representing page identifiers in the respective row not in the identifier prior row.
    Type: Application
    Filed: January 18, 2001
    Publication date: September 26, 2002
    Inventors: Michael Burrows, Keith H. Randall, Raymond P. Stata, Rajiv G. Wickremesinghe
  • Patent number: 6438740
    Abstract: A system and method for identifying free registers within a program. A depth first search of a flow diagram representing the execution of a program is performed. The search proceeds simultaneously for all the registers and identifies the free registers from the search. The free registers may then be utilized for various applications without saving and restoring the contents of these registers to memory. The system may limit the amount of time spent searching for free registers with a timer.
    Type: Grant
    Filed: August 21, 1997
    Date of Patent: August 20, 2002
    Assignee: Compaq Information Technologies Group, L.P.
    Inventors: Andrei Zary Broder, Michael Burrows, Monika Hildegard Henzinger
  • Publication number: 20020073338
    Abstract: Undesirable behavior patterns of computers on a network impact network performance. A system and method are provided for limiting the impact of undesirable behavior of computers on the network. The network, through which packets of data are interchanged between the computers, includes one or more forwarding devices that are controlled or instructed by one or more packet traffic monitors. Each of the packet traffic monitors is configured for monitoring the packets; for determining if the information about the pattern of behavior from any of the computers is trustworthy; for determining, upon discovering that one or more of the patterns of behavior is undesirable, a type of the undesirable pattern behavior; and for determining a proper action for mitigating that type of undesirable behavior. The proper action is performed by mitigation means controlling the one or more forwarding devices.
    Type: Application
    Filed: November 16, 2001
    Publication date: June 13, 2002
    Applicant: Compaq Information Technologies Group, L.P.
    Inventors: Michael Burrows, Raymond P. Stata, Jeffrey Clifford Mogul
  • Publication number: 20020049753
    Abstract: A computer implemented method performs constrained searching of an index of a database. The information of the database is stored as a plurality of records. A unique location is assigned to each indexable portion of information of the database. Index entries are written to a memory where each index entry includes a word entry representing a unique indexable portion of information, and one or more location entries for each occurrence of the unique indexable portion information. The index entries are sorted according to a collating order of the word entries, and sequentially according to the location entries of each index entry. A query is parsed to generate a first term and a second term related by an AND logical operator, the AND operator requires that a first index entry corresponding to the first term and a second index entry corresponding to the second term both have locations in the same record to satisfy a query.
    Type: Application
    Filed: August 3, 2001
    Publication date: April 25, 2002
    Applicant: AltaVista Company
    Inventor: Michael Burrows
  • Patent number: 6377530
    Abstract: A portable audio player stores a large amount of compressed audio data on an internal disk drive, and loads a portion of this into an internal random access memory (RAM) which requires less power and less time to access. The audio player plays the data stored in RAM and monitors the amount of unplayed data. When the amount of unplayed data falls below a threshold, additional data is copied from the disk drive into RAM. When the portable audio player is turned off, a predetermined amount of audio data is stored in a fast-access non-volatile flash memory unit. When the audio player is turned back on, and play is resumed, a suitable portion of this data can be played while data is being loaded from the disk drive into RAM, thus reducing the amount of time a user must wait before receiving data in response to a play request.
    Type: Grant
    Filed: February 12, 1999
    Date of Patent: April 23, 2002
    Assignee: Compaq Computer Corporation
    Inventor: Michael Burrows
  • Patent number: 6378087
    Abstract: The disclosed program checker checks whether a program internally tests for error codes that may be returned by procedures used by the program. The program being tested is executed. Each time that a subroutine in the program is about to perform a subroutine or procedure return operation, a program interpreter is invoked. The program interpreter simulates continued execution of the program once for a good return value and once for each error condition return value that is listed in an error condition table entry for the subroutine in which the return operation is being performed. For each simulation of the program, the program interpreter determines the execution path of the program and then compares the execution path for each error condition return value with the execution path for the good return value.
    Type: Grant
    Filed: June 8, 1999
    Date of Patent: April 23, 2002
    Assignee: Compaq Computer Corporation
    Inventors: Cormac A. Flanagan, Michael Burrows
  • Patent number: 6317741
    Abstract: A technique for ranking records of a database is disclosed. The database records to be ranked are located during a search of an index to the database performed in response to a query received from a user. The index has a plurality of index entries, wherein each index entry has a weight. The query has a plurality of query terms, wherein each query term corresponds to an index entry. In one embodiment, the technique is realized by scoring each located record according to the number of times portions of information corresponding to each query term occur in each record and the weight of each index entry corresponding to each occurring query term. The score and an identifier of each located record are then stored in a respective entry of a ranking list. The ranking list has a limit on the number of entries that are stored therein.
    Type: Grant
    Filed: August 7, 2000
    Date of Patent: November 13, 2001
    Assignee: Altavista Company
    Inventor: Michael Burrows
  • Patent number: 6230158
    Abstract: A computer implemented method indexes duplicate information stored in records having different unique addresses in a database. A fingerprint is generated for each record, the fingerprint is a singular value derived from all of the information of the record. The fingerprint is stored in the index as a unique fingerprint if the fingerprint is different than a previously stored fingerprint of the index. A reference to the unique address of the record is stored with the fingerprint. If the fingerprint is identical to the previously stored fingerprint, then store the reference to the address of the record with the previously stored fingerprint.
    Type: Grant
    Filed: October 19, 1999
    Date of Patent: May 8, 2001
    Assignee: Altavista Company
    Inventor: Michael Burrows
  • Patent number: 6112224
    Abstract: A patient monitoring system for use in a telemedicine system that allows multiple medical devices to communicate with a control unit via an interface that uses a single interrupt. In architecture, the system can be implemented in hardware, or a combination of hardware and software, and is more particularly implemented as follows: A plurality of medical devices are connected to a control unit via a device interface that uses a single interrupt in the transmission of data from the medical devices to the control unit. When a medical device has data to transmit to the control unit, the medical device transmits data to the device interface, and the device interface uses its single interrupt line in the transmission of data to the control unit.
    Type: Grant
    Filed: September 19, 1997
    Date of Patent: August 29, 2000
    Assignee: Georgia Tech Research Corporation
    Inventors: John W. Peifer, Andrew Hopper, Michael Burrow, Barry Sudduth, Samir Panchal, Andy Quay, W. Edward Price
  • Patent number: 6105019
    Abstract: A computer implemented method performs constrained searching of an index of a database. The information of the database is stored as a plurality of records. A unique location is assigned to each indexable portion of information of the database. Index entries are written to a memory where each index entry includes a word entry representing a unique indexable portion of information, and one or more location entries for each occurrence of the unique indexable portion information. The index entries are sorted according to a collating order of the word entries, and sequentially according to the location entries of each index entry. A query is parsed to generate a first term and a second term related by an AND logical operator, the AND operator requires that a first index entry corresponding to the first term and a second index entry corresponding to the second term both have locations in the same record to satisfy a query.
    Type: Grant
    Filed: July 26, 1999
    Date of Patent: August 15, 2000
    Assignee: Digital Equipment Corporation
    Inventor: Michael Burrows
  • Patent number: 6078923
    Abstract: A data processing system includes at least one central processor for executing instructions of software programs. In addition the data processing system includes a memory containing a data structure common to the software programs. The common data structure includes a compressed index data structure. The index structure stores index entries referencing a database. The database includes multiple records, each having a unique address in the database. Each index entry includes a word entry if the index entry represents a compressed encoding of a unique portion of information sequentially parsed from the database. The word entry is followed by one or more location entries which reference occurrences of the portions of information. Each index entry includes a metaword entry if the index entry represents a unique attribute of one or more related words. The metaword entry is followed by one or more location entries referencing occurrences of the attributes.
    Type: Grant
    Filed: December 16, 1997
    Date of Patent: June 20, 2000
    Assignee: Digital Equipment Corporation
    Inventor: Michael Burrows
  • Patent number: 6073135
    Abstract: A server computer is provided for representing and navigating the connectivity of Web pages. The Web pages include links to other Web pages. The links and Web page s have associated names (URLs). The names of the Web pages are sorted in a memory of the connectivity server. The sorted names are delta encoded while periodically storing full names as checkpoints in the memory. Each delta encoded name and checkpoint has a unique identification. A list of pairs of identifications representing existent links is sorted twice, first according to the first identification of each pair to produce an inlist, and second according to the second identification of each pair to produce an outlist. An array of elements is stored in the memory, there is one array element for each Web page. Each element includes a first pointer to one of the checkpoints, a second pointer to an associated inlist of the Web page, and a third pointer to an associated outlist of the Web page.
    Type: Grant
    Filed: March 10, 1998
    Date of Patent: June 6, 2000
    Assignee: Alta Vista Company
    Inventors: Andrei Z. Broder, Michael Burrows, Monika H. Henzinger, Sanjay Ghemawat, Puneet Kumar, Suresh Venkatasubramanian