Patents by Inventor William A. Sharp

William A. Sharp 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: 11076027
    Abstract: Techniques for selecting a network communications protocol based on network topology and/or network performance are described. A first application executing on a first computer system obtains a distance characteristic of a network coupling the first computer system to a second computer system. The first application selects a network communications protocol from a plurality of network communications protocols based on the distance characteristic of the network. The first application and the second application connect with the selected network communications protocol. In some embodiments, the distance characteristic of the network may be based on topological or performance characteristics of the network.
    Type: Grant
    Filed: December 3, 2018
    Date of Patent: July 27, 2021
    Assignee: Amazon Technologies, Inc.
    Inventors: Nathan William Sharp, Christopher Magee Greenwood, Pavel Labovich, Colin Williams, Ashritha Nagavaram
  • Patent number: 8943512
    Abstract: A system for facilitating virtualization of a heterogeneous processor pool includes a processor allocation component and a hypervisor, each executing on a host computer. The processor allocation component identifies a plurality of physical processors available for computing and determines a set of flags, each of the set of flags identifying a type of functionality provided by each of a subset of the plurality of physical processors. The hypervisor, in communication with the processor allocation component, allocates, to at least one virtual machine, access to one of the subset of the plurality of physical processors.
    Type: Grant
    Filed: December 20, 2012
    Date of Patent: January 27, 2015
    Assignee: Citrix Systems, Inc.
    Inventors: Vincent Hanquez, Jonathan James Ludlam, Richard William Sharp, David Jonathan Scott
  • Patent number: 8856486
    Abstract: A technique deploys a copy of a disk image from source storage to target storage. The technique involves identifying a particular disk image to be copied from the source storage to the target storage. The technique further involves performing a comparison operation between a first disk image list which lists disk images on the source storage and a second disk image list which lists disk images on the target storage to generate a common disk image list which lists a set of common disk images on both the source and target storage. The technique further involves transferring, from the source storage to the target storage, a set of data portions representing differences between the particular disk image and a common disk image listed on the common disk image list. The set of data portions in combination with the common disk image form a deployed copy on the target storage.
    Type: Grant
    Filed: October 31, 2011
    Date of Patent: October 7, 2014
    Assignee: Citrix Systems, Inc.
    Inventors: Richard William Sharp, David Jonathan Scott, Jonathan James Ludlam
  • Patent number: 8543774
    Abstract: A programmable logic apparatus includes a shared memory having a first port, a second port and a third port; a first vital processor interfaced to the first port of the shared memory; and a non-vital communications processor separated from the first vital processor in the programmable logic apparatus and interfaced to the second port of the shared memory. The third port of the shared memory is an external port structured to interface an external second vital processor.
    Type: Grant
    Filed: April 5, 2011
    Date of Patent: September 24, 2013
    Assignee: Ansaldo STS USA, Inc.
    Inventors: John E. Lemonovich, William A. Sharp
  • Patent number: 8458581
    Abstract: A system for serially transmitting vital data includes first and second processors to determine first and second data, a serial communication apparatus to input third data and output serial data based upon the third data, and a memory having first and second ports accessible by the first and second processors, a first memory writable by the first processor and readable by the second processor, and a second memory writable by the second processor and readable by the first processor. The first and second processors store the first and second data in the first and second memories, cooperatively agree that the first data corresponds to the second data, and responsively cause the apparatus to employ: one of the first and second data as the third data, or parts of the first and second data as the third data, and output the serial data based upon the third data.
    Type: Grant
    Filed: October 15, 2009
    Date of Patent: June 4, 2013
    Assignee: Ansaldo STS USA, Inc.
    Inventors: William A. Sharp, John E. Lemonovich, James C. Werner, Zhu Ding, Lawrence A. Weber
  • Publication number: 20130097602
    Abstract: A system for facilitating virtualization of a heterogeneous processor pool includes a processor allocation component and a hypervisor, each executing on a host computer. The processor allocation component identifies a plurality of physical processors available for computing and determines a set of flags, each of the set of flags identifying a type of functionality provided by each of a subset of the plurality of physical processors. The hypervisor, in communication with the processor allocation component, allocates, to at least one virtual machine, access to one of the subset of the plurality of physical processors.
    Type: Application
    Filed: December 20, 2012
    Publication date: April 18, 2013
    Inventors: Vincent Hanquez, Jonathan James Ludlam, Richard William Sharp, David Jonathan Scott
  • Patent number: 8352952
    Abstract: A system for facilitating virtualization of a heterogeneous processor pool includes a processor allocation component and a hypervisor, each executing on a host computer. The processor allocation component identifies a plurality of physical processors available for computing and determines a set of flags, each of the set of flags identifying a type of functionality provided by each of a subset of the plurality of physical processors. The hypervisor, in communication with the processor allocation component, allocates, to at least one virtual machine, access to one of the subset of the plurality of physical processors.
    Type: Grant
    Filed: December 1, 2008
    Date of Patent: January 8, 2013
    Assignee: Citrix Systems, Inc.
    Inventors: Vincent Hanquez, Jonathan James Ludlam, Richard William Sharp, David Jonathan Scott
  • Patent number: 8289734
    Abstract: An output apparatus includes a first source of a first signal having a first state or a different second state; a second source of a second signal having a first state or a different second state; and a circuit structured to output a vital output including a first state when the first state of the first signal corresponds to the first state of the second signal and, otherwise, including a different second state. At least one of the first signal and the second signal is a static signal. The other one of the first signal having the first state and the second signal having the first state is a dynamic signal. When at least one of the first signal has the different second state of the first signal and the second signal has the different second state of the second signal, the vital output includes the different second state.
    Type: Grant
    Filed: October 15, 2009
    Date of Patent: October 16, 2012
    Assignee: Ansaldo STS USA, Inc.
    Inventors: James P. Brown, John E. Lemonovich, James C. Werner, William J. Moltz, Lawrence A. Weber, William A. Sharp
  • Publication number: 20120260046
    Abstract: A programmable logic apparatus includes a shared memory having a first port, a second port and a third port; a first vital processor interfaced to the first port of the shared memory; and a non-vital communications processor separated from the first vital processor in the programmable logic apparatus and interfaced to the second port of the shared memory. The third port of the shared memory is an external port structured to interface an external second vital processor.
    Type: Application
    Filed: April 5, 2011
    Publication date: October 11, 2012
    Inventors: JOHN E. LEMONOVICH, William A. Sharp
  • Publication number: 20120215998
    Abstract: A technique deploys a copy of a disk image from source storage to target storage. The technique involves identifying a particular disk image to be copied from the source storage to the target storage. The technique further involves performing a comparison operation between a first disk image list which lists disk images on the source storage and a second disk image list which lists disk images on the target storage to generate a common disk image list which lists a set of common disk images on both the source and target storage. The technique further involves transferring, from the source storage to the target storage, a set of data portions representing differences between the particular disk image and a common disk image listed on the common disk image list. The set of data portions in combination with the common disk image form a deployed copy on the target storage.
    Type: Application
    Filed: October 31, 2011
    Publication date: August 23, 2012
    Applicant: CITRIX SYSTEMS, INC.
    Inventors: Richard William Sharp, David Jonathan Scott, Jonathan James Ludlam
  • Publication number: 20110093767
    Abstract: A system for serially transmitting vital data includes first and second processors to determine first and second data, a serial communication apparatus to input third data and output serial data based upon the third data, and a memory having first and second ports accessible by the first and second processors, a first memory writable by the first processor and readable by the second processor, and a second memory writable by the second processor and readable by the first processor. The first and second processors store the first and second data in the first and second memories, cooperatively agree that the first data corresponds to the second data, and responsively cause the apparatus to employ: one of the first and second data as the third data, or parts of the first and second data as the third data, and output the serial data based upon the third data.
    Type: Application
    Filed: October 15, 2009
    Publication date: April 21, 2011
    Inventors: WILLIAM A. SHARP, JOHN E. LEMONOVICH, JAMES C. WERNER, ZHU DING, LAWRENCE A. WEBER
  • Publication number: 20110090714
    Abstract: An output apparatus includes a first source of a first signal having a first state or a different second state; a second source of a second signal having a first state or a different second state; and a circuit structured to output a vital output including a first state when the first state of the first signal corresponds to the first state of the second signal and, otherwise, including a different second state. At least one of the first signal and the second signal is a static signal. The other one of the first signal having the first state and the second signal having the first state is a dynamic signal. When at least one of the first signal has the different second state of the first signal and the second signal has the different second state of the second signal, the vital output includes the different second state.
    Type: Application
    Filed: October 15, 2009
    Publication date: April 21, 2011
    Inventors: JAMES P. BROWN, John E. Lemonovich, James C. Werner, William J. Moltz, Lawrence A. Weber, William A. Sharp
  • Patent number: 7850127
    Abstract: A processor includes a first field programmable gate array (FPGA) having a first central processing unit (CPU) core programmed to perform a first function, and first programmable hardware logics (PHLs) programmed to perform a second function. A second FPGA includes a second CPU core programmed to perform a third function, and second PHLs programmed to perform a fourth function. A communication interface is between the first and second CPU cores. The first and second FPGAs are diverse. A portion of the first function communicates first information from the first CPU core to the second CPU core through the interface. A portion of the third function communicates second information from the second CPU core to the first CPU core through the interface, and, otherwise, the first function is substantially the same as the third function. The second function is substantially the same as the fourth function.
    Type: Grant
    Filed: June 2, 2008
    Date of Patent: December 14, 2010
    Assignee: Ansaldo STS USA, Inc.
    Inventors: John E. Lemonovich, William A. Sharp, James C. Werner, Zhu Ding, Sean P. Berecek
  • Publication number: 20100161922
    Abstract: A method for facilitating migration of virtual machines among a plurality of physical machines includes associating a virtual machine with at least one physical resource inaccessible by a first subset of the plurality of physical machines and available to a second subset of the plurality of physical machines, the virtual machine executing on a first physical machine in the second subset of the plurality of physical machines. The method includes receiving a request to migrate the virtual machine to a second physical machine in the plurality of physical machines. The method includes identifying a second physical machine in the second subset of the plurality of physical machines. The method includes migrating the virtual machine to the second physical machine.
    Type: Application
    Filed: December 19, 2008
    Publication date: June 24, 2010
    Inventors: Richard William Sharp, Jonathan James Ludlam, Vincent Hanquez, David Jonathan Scott
  • Publication number: 20100138829
    Abstract: A system for optimizing configuration of a virtual machine running at least one process includes at least one virtual resource in a virtual machine executing on a computing device, an agent executing within the virtual machine, and a hypervisor. The at least one virtual resource has a configuration parameter. The agent identifies a name of at least one process currently executing on the virtual machine. The hypervisor alters, in response to receiving the identified name from the agent, a value of the configuration parameter.
    Type: Application
    Filed: December 1, 2008
    Publication date: June 3, 2010
    Inventors: Vincent Hanquez, Jonathan James Ludlam, Richard William Sharp, David Jonathan Scott
  • Publication number: 20100138828
    Abstract: A system for facilitating virtualization of a heterogeneous processor pool includes a processor allocation component and a hypervisor, each executing on a host computer. The processor allocation component identifies a plurality of physical processors available for computing and determines a set of flags, each of the set of flags identifying a type of functionality provided by each of a subset of the plurality of physical processors. The hypervisor, in communication with the processor allocation component, allocates, to at least one virtual machine, access to one of the subset of the plurality of physical processors.
    Type: Application
    Filed: December 1, 2008
    Publication date: June 3, 2010
    Inventors: Vincent Hanquez, Jonathan James Ludlam, Richard William Sharp, David Jonathan Scott
  • Publication number: 20090230255
    Abstract: A processor includes a first field programmable gate array (FPGA) having a first central processing unit (CPU) core programmed to perform a first function, and first programmable hardware logics (PHLs) programmed to perform a second function. A second FPGA includes a second CPU core programmed to perform a third function, and second PHLs programmed to perform a fourth function. A communication interface is between the first and second CPU cores. The first and second FPGAs are diverse. A portion of the first function communicates first information from the first CPU core to the second CPU core through the interface. A portion of the third function communicates second information from the second CPU core to the first CPU core through the interface, and, otherwise, the first function is substantially the same as the third function. The second function is substantially the same as the fourth function.
    Type: Application
    Filed: June 2, 2008
    Publication date: September 17, 2009
    Inventors: John E. Lemonovich, William A. Sharp, James C. Werner, Zhu Ding, Sean P. Berecek
  • Patent number: 7518057
    Abstract: An automated computing system and method for determining fingering of musical instruments from digitized scored music or tablature. The computerized automated finger finder system and method analyzes a musical composition and determines hand and/or fingering positional information such that the musical composition can be efficiently played on a musical instrument of choice with minimal hand movement. The method and computing system also provide alternate or secondary fingering choices such that the musician can play with a different tonal stylization or with greater or lesser ease depending on his skill level.
    Type: Grant
    Filed: March 17, 2008
    Date of Patent: April 14, 2009
    Inventors: Richard William Worrall, Robert William Sharp
  • Publication number: 20080216639
    Abstract: An automated computing system and method for determining fingering of musical instruments from digitized scored music or tablature. The computerized automated finger finder system and method analyzes a musical composition and determines hand and/or fingering positional information such that the musical composition can be efficiently played on a musical instrument of choice with minimal hand movement. The method and computing system also provide alternate or secondary fingering choices such that the musician can play with a different tonal stylization or with greater or lesser ease depending on his skill level.
    Type: Application
    Filed: March 17, 2008
    Publication date: September 11, 2008
    Inventors: Richard William Worrall, Robert William Sharp
  • Patent number: 7345236
    Abstract: An automated computing system and method for determining fingering of musical instruments from digitized scored music or tablature. The computerized automated finger finder system and method analyzes a musical composition and determines hand and/or fingering positional information such that the musical composition can be efficiently played on a musical instrument of choice with minimal hand movement. The method and computing system also provide alternate or secondary fingering choices such that the musician can play with a different tonal stylization or with greater or lesser ease depending on his skill level.
    Type: Grant
    Filed: June 1, 2007
    Date of Patent: March 18, 2008
    Assignee: Terra Knights Music, Inc.
    Inventors: Richard William Worrall, Robert William Sharp