Patents by Inventor David Gillies

David Gillies 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: 8434079
    Abstract: A method prepares a computer program for operation in a computer supply system that supplies portions, or program units, of program code or program data of the computer program as the program needs the portions. The method includes defining a program unit of the program and removing the program unit from the program, thereby producing a program skeleton that is missing the program unit. The method further includes inserting instructions in place of the program unit in the program skeleton. The instructions are operative to request the program unit when the program skeleton encounters the instructions. An information structure includes a program skeleton of a program. The program skeleton is missing a funclet of the program, but includes a placeholder in place of the funclet. The program skeleton additionally includes instructions in place of the funclet. The instructions are operative to request the funclet when the program skeleton encounters the instructions.
    Type: Grant
    Filed: June 4, 2007
    Date of Patent: April 30, 2013
    Assignee: Microsoft Corporation
    Inventors: Hon Keat W. Chan, Andrew J. Edwards, David Gillies, Carlos P. Gomes, Jiyang Liu, Patrick L. McDonald, Mark L. Roberts, Hoi Vo
  • Publication number: 20080034346
    Abstract: A method prepares a computer program for operation in a computer supply system that supplies portions, or program units, of program code or program data of the computer program as the program needs the portions. The method includes defining a program unit of the program and removing the program unit from the program, thereby producing a program skeleton that is missing the program unit. The method further includes inserting instructions in place of the program unit in the program skeleton. The instructions are operative to request the program unit when the program skeleton encounters the instructions. An information structure includes a program skeleton of a program. The program skeleton is missing a funclet of the program, but includes a placeholder in place of the funclet. The program skeleton additionally includes instructions in place of the funclet. The instructions are operative to request the funclet when the program skeleton encounters the instructions.
    Type: Application
    Filed: June 4, 2007
    Publication date: February 7, 2008
    Applicant: Microsoft Corporation
    Inventors: Hon Chan, Andrew Edwards, David Gillies, Carlos Gomes, Jiyang Liu, Patrick McDonald, Mark Roberts, Hoi Vo
  • Patent number: 7228540
    Abstract: A method prepares a computer program for operation in a computer supply system that supplies portions, or program units, of program code or program data of the computer program as the program needs the portions. The method includes defining a program unit of the program and removing the program unit from the program, thereby producing a program skeleton that is missing the program unit. The method further includes inserting instructions in place of the program unit in the program skeleton. The instructions are operative to request the program unit when the program skeleton encounters the instructions. An information structure includes a program skeleton of a program. The program skeleton is missing a funclet of the program, but includes a placeholder in place of the funclet. The program skeleton additionally includes instructions in place of the funclet. The instructions are operative to request the funclet when the program skeleton encounters the instructions.
    Type: Grant
    Filed: May 14, 2002
    Date of Patent: June 5, 2007
    Assignee: Microsoft Corporation
    Inventors: Hon Keat W. Chan, Andrew J. Edwards, David Gillies, Carlos P. Gomes, Jiyang Liu, Patrick L. McDonald, Mark L. Roberts, Hoi Vo
  • Patent number: 7213245
    Abstract: A method of supplying program units of a computer program as the program needs the program units includes running a program skeleton. The program skeleton is derived from the program, but has a program stub where a program unit associated with the program stub may be inserted. Upon encountering the program stub, the method includes getting the program unit associated with the program stub and inserting the program unit at the program stub. A method of supplying funclets of a computer program from a server computer system to a client computer system includes receiving a plurality of requests for funclets during a test period. If a tested probability of requests for a first funclet being followed by requests for a second funclet is at least a predetermined probability, then the method also includes sending the first funclet and the second funclet to the client computer system in response to a request from the client computer system for the first funclet after the test period.
    Type: Grant
    Filed: May 14, 2002
    Date of Patent: May 1, 2007
    Assignee: Microsoft Corporation
    Inventors: Hon Keat W. Chan, Andrew J. Edwards, David Gillies, Carlos P. Gomes, Jiyang Liu, Patrick L. McDonald, Mark L. Roberts, Hoi Vo
  • Publication number: 20050125785
    Abstract: Described is a method that identifies a predicate expression representing conditions in predicated assembly language instructions that determine a direction of a conditional branch instruction. The predicate expression is employed to enable a transformation to be made that causes the conditional branch instruction to trigger, or execute, when an opposite condition is true. A method is directed to producing a binary-level conditional branch reversal within a binary program on a computer architecture that supports a predicated execution. The method includes obtaining a predicate expression representing a condition that influences a direction of program flow of the binary-level conditional branch to be reversed, determining a binary-level transformation that causes the binary-level conditional branch to be triggered when an opposite condition is true, and modifying the binary-level conditional branch with the determined binary-level transformation, wherein the binary-level conditional branch is reversed.
    Type: Application
    Filed: October 25, 2004
    Publication date: June 9, 2005
    Applicant: Microsoft Corporation
    Inventors: David Gillies, Ronnie Chaiken
  • Publication number: 20050034113
    Abstract: Described is a method that identifies a predicate expression representing conditions in predicated assembly language instructions that determine a direction of a conditional branch instruction. The predicate expression is employed to enable a transformation to be made that causes the conditional branch instruction to trigger, or execute, when an opposite condition is true. A method is directed to producing a binary-level conditional branch reversal within a binary program on a computer architecture that supports a predicated execution. The method includes obtaining a predicate expression representing a condition that influences a direction of program flow of the binary-level conditional branch to be reversed, determining a binary-level transformation that causes the binary-level conditional branch to be triggered when an opposite condition is true, and modifying the binary-level conditional branch with the determined binary-level transformation, wherein the binary-level conditional branch is reversed.
    Type: Application
    Filed: September 2, 2004
    Publication date: February 10, 2005
    Applicant: Microsoft Corporation
    Inventors: David Gillies, Ronnie Chaiken
  • Publication number: 20050010891
    Abstract: Each component binary in a heterogeneous program is translated from a platform-specific instruction set into a set of intermediate representation (IR) instructions that are platform-neutral. The IR instructions are grouped into IR code blocks, the IR code blocks into IR procedures, and the IR procedures into IR components to create an intermediate representation hierarchy for the program. An application program interface is provided that permits user access to the IR hierarchy for instrumentation, optimization, navigation, and manipulation of the IR hierarchy. The transformed IR hierarchy is then translated into platform-specific instructions and output as a modified binary. The user can designate a different platform for the output translation of a code block than the platform for which the code block was originally written. Prologue and epilog code is added to contiguous blocks that are translated into different architectures.
    Type: Application
    Filed: August 4, 2004
    Publication date: January 13, 2005
    Applicant: Microsoft Corporation
    Inventors: Ronnie Chaiken, Hon Keat Chan, Andrew Edwards, Gregory Eigsti, David Gillies, Bruce Kuramoto, John Lefor, Ken Pierce, Amitabh Srivastava, Hoi Vo, Gideon Yuval
  • Publication number: 20030217196
    Abstract: A method of supplying program units of a computer program as the program needs the program units includes running a program skeleton. The program skeleton is derived from the program, but has a program stub where a program unit associated with the program stub may be inserted. Upon encountering the program stub, the method includes getting the program unit associated with the program stub and inserting the program unit at the program stub. A method of supplying funclets of a computer program from a server computer system to a client computer system includes receiving a plurality of requests for funclets during a test period. If a tested probability of requests for a first funclet being followed by requests for a second funclet is at least a predetermined probability, then the method also includes sending the first funclet and the second funclet to the client computer system in response to a request from the client computer system for the first funclet after the test period.
    Type: Application
    Filed: May 14, 2002
    Publication date: November 20, 2003
    Applicant: Microsoft Corporation
    Inventors: Hon Keat W. Chan, Andrew J. Edwards, David Gillies, Carlos P. Gomes, Jiyang Liu, Patrick L. McDonald, Mark L. Roberts, Hoi Vo
  • Publication number: 20030217197
    Abstract: A method prepares a computer program for operation in a computer supply system that supplies portions, or program units, of program code or program data of the computer program as the program needs the portions. The method includes defining a program unit of the program and removing the program unit from the program, thereby producing a program skeleton that is missing the program unit. The method further includes inserting instructions in place of the program unit in the program skeleton. The instructions are operative to request the program unit when the program skeleton encounters the instructions. An information structure includes a program skeleton of a program. The program skeleton is missing a funclet of the program, but includes a placeholder in place of the funclet. The program skeleton additionally includes instructions in place of the funclet. The instructions are operative to request the funclet when the program skeleton encounters the instructions.
    Type: Application
    Filed: May 14, 2002
    Publication date: November 20, 2003
    Applicant: Microsoft Corporation
    Inventors: Hon Keat W. Chan, Andrew J. Edwards, David Gillies, Carlos P. Gomes, Jiyang Liu, Patrick L. McDonald, Mark L. Roberts, Hoi Vo
  • Patent number: 5996267
    Abstract: A landing net is described and comprises a hoop shaped net body member (17), which is secured to one end of a handle (13). A hinge (15) is located between the two ends of the handle (13) and which permits a section of the handle (13) to be folded from a first fully extended configuration to a second folded configuration in which the other end of the handle (13) is adjacent to the hoop shaped net body member (17). When the folding section of the handle (13) is in the second configuration, it is selectively attachable to the net body member (17).
    Type: Grant
    Filed: February 20, 1998
    Date of Patent: December 7, 1999
    Inventor: David Gillies Breckenridge
  • Patent number: 5367338
    Abstract: When processing a digital video signal, the problem often arises of converting the signal from a first sampling raster which is asynchronous with respect to the line interval to a second sampling raster which synchronous with the line interval. Interpolation filters are used for this purpose. The present invention provide a simple method for the conversion which does not require intermediate D/A or A/D conversion. For each line of the input signal, the phase of samples of the first sampling raster relative to the line synchronization pulse and the total number of the samples for this line are determined and are used to control of the interpolation filter.
    Type: Grant
    Filed: February 8, 1993
    Date of Patent: November 22, 1994
    Assignee: Deutsche Thomson-Brandt GmbH
    Inventors: Albrecht Rothermel, Rainer Schweer, John Stolte, David Gillies
  • Patent number: 5138448
    Abstract: A device for conversion of frame frequency and number of lines for a high-definition television receiver which receives input video signals corresponding to different standards and to output a high-definition signal at a desired frame frequency and with the desired number of lines. The device uses a pass-band reduction decoder processing the high-definition input 625/2:1/50 Hz video signals. It includes: a memory, a decoder, and a processing circuit. The memory stores the input video signal frames at a frequency which is a function of the frame frequency of the input signal. This memory is read at the frame frequency desired at the output. The decoder is a pass-band reduction decoder connected to the memory and gives separately at its outputs even and odd frames, respectively, of a decompressed high-definition video signal output at the frame frequency desired.
    Type: Grant
    Filed: August 20, 1990
    Date of Patent: August 11, 1992
    Assignee: Laboratoire European de Researches Electronique Avancees
    Inventors: David Gillies, Jean-Yves Moraillon
  • Patent number: 5101273
    Abstract: Disclosed is a device to convert a piece of motion information into a motion information signal at the field rate and with the number of lines desired for a high-definition television receiver. This device comprises:at least two memories for the storage, at the field rate of the input video signal, of respectively pieces of data pertaining to the information on motion of the even fields and pieces of data pertaining to the information on motion of the odd fields, these memories being read at the field rate of the video signal to be displayed, anda processing circuit connected to the output of the memories, said circuit delivering, from motion information read at the desired field rate, a motion information signal, at the field rate and with the number of lines desired, that is synchronous with the video signal to be displayed.
    Type: Grant
    Filed: July 23, 1990
    Date of Patent: March 31, 1992
    Assignee: Laboratoire Europeen de Recherches Electroniques Advancees Societe en Nom Collectif
    Inventors: David Gillies, Mark Watson
  • Patent number: 4862455
    Abstract: This demultiplexing circuit serves to "decode" a multiplex signal (m) formed by the formula m=ns.sub.1 +s.sub.2 from two digital signals (s.sub.1, s.sub.2) which are so redundant as to each represent an analog signal by only n amplitude levels instead of 2.sup.p maximum possible levels, where p is the respective number of bits in the digital signals, and n satisfies the relation: 2log.sub.2 n is less than or equal to 2p-1. The circuit includes an iterative array of cells each comprising an adder, a switch, and two delay elements. The output of the final stage of the iterative array provides the second digital signal. By means of inverters and shift registers, the first digital signal is derived from the carry signals of the adders.
    Type: Grant
    Filed: November 21, 1988
    Date of Patent: August 29, 1989
    Assignee: Deutsche ITT Industries GmbH
    Inventor: David Gillies
  • Patent number: 4841357
    Abstract: A data compander for digital video signals wherein the sampling frequency is locked to the chrominance-subcarrier frequency. The data compander includes the following cascaded subcircuits: a lock-mode-changing filter which changes the lock of the video signals with the chrominance subcarrier into signals whose clock frequency is locked to the line frequency; an (a/b)-decimation filter, where a, b are integers, and a is less than b; a first peaking filter; a utilization circuit for the line-locked signals; a (b/a)-interpolation filter; a lock-mode-reversing filter which changes the lock of the signals with the line frequency; and a second peaking filter.
    Type: Grant
    Filed: February 24, 1988
    Date of Patent: June 20, 1989
    Assignee: Deutsche ITT Industries GmbH
    Inventor: David Gillies
  • Patent number: 4831442
    Abstract: A control circuit includes a data reduction decoder and an interpolating filter, the data reduction decoder having an line memory for the video signal included in a scanning line. The interpolating filter cooperates with the line memory and includes a first adder, a subtracter, a first and a second multiplier, and a second adder. The control circuit controls the writing of digital signals of a field corresponding to any of the conventional television standards into a memory array and the readout of digital signals at an increased field rate, preferably at twice the field rate.
    Type: Grant
    Filed: February 1, 1988
    Date of Patent: May 16, 1989
    Assignee: Deutsche ITT Industries GmbH
    Inventor: David Gillies
  • Patent number: 4579129
    Abstract: A cigarette rest for an ashtray 2 having a bowl for cigarette ash, the rest comprising first and second supports 6 and 14 for supporting forward and rearward ends, respectively, of a cigarette, each support being capable of supporting no more than a short length of the cigarette and the support surface of the second support 14 being at a level below that of the support surface of the first support 6, and, on the other side of the second support from the first support a lip 16 which limits the rearward axial movement of a cigarette resting on the supports, the first support surface being located at a distance from the lip equal to at least half the length of the cigarette and the second support surface being located nearer to the lip than to the first support, the rest being so constructed and arranged that the tip of a cigarette resting thereon with the butt end lowermost will project over the bowl of the ashtray.
    Type: Grant
    Filed: April 11, 1984
    Date of Patent: April 1, 1986
    Inventor: David A. Gillies