Patents by Inventor Charles S. Shorb

Charles S. Shorb 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: 11099899
    Abstract: A computing device receives, from a thread of a multi-thread application, a release message. Each of the threads indicates operation(s) on a memory associated with the application. The release message indicates that a data object used by the thread is released. The device indicates that a memory slot of a data pool is unlocked permitting storage of an indication of a location of the data object in the memory. Each memory slot of the data pool is individually lockable such that a locked memory slot of the data pool indicates storing a location in the locked memory slot will not be permitted even though storing the location in an unlocked memory slot of the data pool will be permitted. The device stores, in the memory slot of the data pool, an indication of a location of the data object. The data object comprises the location of the memory slot.
    Type: Grant
    Filed: April 2, 2020
    Date of Patent: August 24, 2021
    Assignee: SAS Institute Inc.
    Inventor: Charles S. Shorb
  • Publication number: 20210149731
    Abstract: A computing device receives, from a thread of a multi-thread application, a release message. Each of the threads indicates operation(s) on a memory associated with the application. The release message indicates that a data object used by the thread is released. The device indicates that a memory slot of a data pool is unlocked permitting storage of an indication of a location of the data object in the memory. Each memory slot of the data pool is individually lockable such that a locked memory slot of the data pool indicates storing a location in the locked memory slot will not be permitted even though storing the location in an unlocked memory slot of the data pool will be permitted. The device stores, in the memory slot of the data pool, an indication of a location of the data object. The data object comprises the location of the memory slot.
    Type: Application
    Filed: April 2, 2020
    Publication date: May 20, 2021
    Inventor: Charles S. Shorb
  • Patent number: 10459849
    Abstract: A computing device receives, at a scheduler of the computing device, a first write request from a first thread of a plurality of threads. The scheduler schedules access for the plurality of threads across a boundary of an access-controlled region in a memory of the computing device. The computing device determines that a second memory region in the access-controlled region is allocated for storing data copied from a first memory region. During copying, to the second memory region, the data copied from the first memory region, the computing device permits scheduling, by the scheduler, an operation to read from the first memory region for any read requests from the plurality of threads during the copying; and denies scheduling, by the scheduler, an operation to write to the first memory region for any subsequent write requests from the plurality of threads during the copying.
    Type: Grant
    Filed: December 18, 2018
    Date of Patent: October 29, 2019
    Assignee: SAS Institute Inc.
    Inventors: Charles S. Shorb, James P. Carroll
  • Patent number: 7594091
    Abstract: Computer-implemented systems and methods for handling access to one or more resources. Executable entities that are running substantially concurrently provide access requests to an operating system (OS). One or more traps of the OS are avoided to improve resource accessing performance through use of information stored in a shared locking mechanism. The shared locking mechanism indicates the overall state of the locking process, such as the number of processes waiting to retrieve data from a resource and/or whether a writer process is waiting to access the resource.
    Type: Grant
    Filed: May 23, 2008
    Date of Patent: September 22, 2009
    Assignee: SAS Institute Inc.
    Inventor: Charles S. Shorb
  • Publication number: 20080222331
    Abstract: Computer-implemented systems and methods for handling access to one or more resources. Executable entities that are running substantially concurrently provide access requests to an operating system (OS). One or more traps of the OS are avoided to improve resource accessing performance through use of information stored in a shared locking mechanism. The shared locking mechanism indicates the overall state of the locking process, such as the number of processes waiting to retrieve data from a resource and/or whether a writer process is waiting to access the resource.
    Type: Application
    Filed: May 23, 2008
    Publication date: September 11, 2008
    Inventor: Charles S. Shorb
  • Patent number: 7380073
    Abstract: Computer-implemented systems and methods for handling access to one or more resources. Executable entities that are running substantially concurrently provide access requests to an operating system (OS). One or more traps of the OS are avoided to improve resource accessing performance through use of information stored in a shared locking mechanism. The shared locking mechanism indicates the overall state of the locking process, such as the number of processes waiting to retrieve data from a resource and/or whether a writer process is waiting to access the resource.
    Type: Grant
    Filed: November 26, 2003
    Date of Patent: May 27, 2008
    Assignee: SAS Institute Inc.
    Inventor: Charles S. Shorb