Patents by Inventor Peter D. Bain
Peter D. Bain 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: 11494341Abstract: A tool for inter-process communication in a multi-tenant environment. The tool creates an advertisement file for each tenant of a plurality of tenants. The tool locks a plurality of synchronization files prior to incrementing a semaphore, wherein the plurality of synchronization files correspond to the plurality of tenants, and wherein locking the plurality of synchronization files ensure that the semaphore is only decremented once per tenant. The tool searches for a response file corresponding to a specific tenant, wherein the response file includes metadata related to an information channel for communication with the specific tenant and information depicting a communication protocol used corresponding to the specific tenant. The tool unlocks the plurality of synchronization files. The tool establishes a connection, wherein the connection comprises an encrypted communication channel between the specific tenant and the attachment process mediated by a daemon.Type: GrantFiled: November 22, 2019Date of Patent: November 8, 2022Assignee: International Business Machines CorporationInventor: Peter D. Bain
-
Publication number: 20200097448Abstract: A tool for inter-process communication in a multi-tenant environment. The tool creates an advertisement file for each tenant of a plurality of tenants. The tool locks a plurality of synchronization files prior to incrementing a semaphore, wherein the plurality of synchronization files correspond to the plurality of tenants, and wherein locking the plurality of synchronization files ensure that the semaphore is only decremented once per tenant. The tool searches for a response file corresponding to a specific tenant, wherein the response file includes metadata related to an information channel for communication with the specific tenant and information depicting a communication protocol used corresponding to the specific tenant. The tool unlocks the plurality of synchronization files. The tool establishes a connection, wherein the connection comprises an encrypted communication channel between the specific tenant and the attachment process mediated by a daemon.Type: ApplicationFiled: November 22, 2019Publication date: March 26, 2020Inventor: Peter D. Bain
-
Patent number: 10592272Abstract: Embodiments of the present invention provide memory optimization by phase-dependent data residency. Application programs are profiled a priori or in real time for temporal memory usage. Memory regions such as initialization data are proactively removed from memory when the application transitions to a new phase. A hypervisor monitors application activity and coordinates the removal of memory regions that are no longer needed by the application. Additionally, memory regions that are anticipated to be needed in the future are proactively preloaded.Type: GrantFiled: March 4, 2019Date of Patent: March 17, 2020Assignee: International Business Machines CorporationInventors: Peter D. Bain, Peter D. Shipton
-
Patent number: 10528526Abstract: A method, executed by a computer, for inter-process communication in a multi-tenant environment includes creating an advertisement file for each tenant, determining that a semaphore is greater than zero, searching for a response file, and decrementing the semaphore. Detecting the response file may enable the specific tenant to establish a connection with an attachment process, and as a result, the semaphore may be reset to a value of zero. In one embodiment, a plurality of synchronization files are locked prior to incrementing the semaphore and unlocked in response to detecting the response file. Another method includes counting the targets to provide a target count, incrementing a semaphore to the target count, creating a response file, and establishing a connection with the specific target. A computer program product and computer system corresponding to the methods are also disclosed herein.Type: GrantFiled: September 2, 2015Date of Patent: January 7, 2020Assignee: International Business Machines CorporationInventor: Peter D. Bain
-
Patent number: 10528525Abstract: A method, executed by a computer, for inter-process communication in a multi-tenant environment includes creating an advertisement file for each tenant, determining that a semaphore is greater than zero, searching for a response file, and decrementing the semaphore. Detecting the response file may enable the specific tenant to establish a connection with an attachment process, and as a result, the semaphore may be reset to a value of zero. In one embodiment, a plurality of synchronization files are locked prior to incrementing the semaphore and unlocked in response to detecting the response file. Another method includes counting the targets to provide a target count, incrementing a semaphore to the target count, creating a response file, and establishing a connection with the specific target. A computer program product and computer system corresponding to the methods are also disclosed herein.Type: GrantFiled: March 19, 2015Date of Patent: January 7, 2020Assignee: International Business Machines CorporationInventor: Peter D. Bain
-
Publication number: 20190196860Abstract: Embodiments of the present invention provide memory optimization by phase-dependent data residency. Application programs are profiled a priori or in real time for temporal memory usage. Memory regions such as initialization data are proactively removed from memory when the application transitions to a new phase. A hypervisor monitors application activity and coordinates the removal of memory regions that are no longer needed by the application. Additionally, memory regions that are anticipated to be needed in the future are proactively preloaded.Type: ApplicationFiled: March 4, 2019Publication date: June 27, 2019Inventors: Peter D. Bain, Peter D. Shipton
-
Patent number: 10268501Abstract: Embodiments of the present invention provide memory optimization by phase-dependent data residency. Application programs are profiled a priori or in real time for temporal memory usage. Memory regions such as initialization data are proactively removed from memory when the application transitions to a new phase. A hypervisor monitors application activity and coordinates the removal of memory regions that are no longer needed by the application. Additionally, memory regions that are anticipated to be needed in the future are proactively preloaded.Type: GrantFiled: October 24, 2018Date of Patent: April 23, 2019Assignee: International Business Machines CorporationInventors: Peter D. Bain, Peter D. Shipton
-
Publication number: 20190056973Abstract: Embodiments of the present invention provide memory optimization by phase-dependent data residency. Application programs are profiled a priori or in real time for temporal memory usage. Memory regions such as initialization data are proactively removed from memory when the application transitions to a new phase. A hypervisor monitors application activity and coordinates the removal of memory regions that are no longer needed by the application. Additionally, memory regions that are anticipated to be needed in the future are proactively preloaded.Type: ApplicationFiled: October 24, 2018Publication date: February 21, 2019Inventors: Peter D. Bain, Peter D. Shipton
-
Patent number: 10204059Abstract: Embodiments of the present invention provide memory optimization by phase-dependent data residency. Application programs are profiled a priori or in real time for temporal memory usage. Memory regions such as initialization data are proactively removed from memory when the application transitions to a new phase. A hypervisor monitors application activity and coordinates the removal of memory regions that are no longer needed by the application. Additionally, memory regions that are anticipated to be needed in the future are proactively preloaded.Type: GrantFiled: September 29, 2016Date of Patent: February 12, 2019Assignee: International Business Machines CorporationInventors: Peter D. Bain, Peter D. Shipton
-
Publication number: 20180089105Abstract: Embodiments of the present invention provide memory optimization by phase-dependent data residency. Application programs are profiled a priori or in real time for temporal memory usage. Memory regions such as initialization data are proactively removed from memory when the application transitions to a new phase. A hypervisor monitors application activity and coordinates the removal of memory regions that are no longer needed by the application. Additionally, memory regions that are anticipated to be needed in the future are proactively preloaded.Type: ApplicationFiled: September 29, 2016Publication date: March 29, 2018Inventors: Peter D. Bain, Peter D. Shipton
-
Publication number: 20160275097Abstract: A method, executed by a computer, for inter-process communication in a multi-tenant environment includes creating an advertisement file for each tenant, determining that a semaphore is greater than zero, searching for a response file, and decrementing the semaphore. Detecting the response file may enable the specific tenant to establish a connection with an attachment process, and as a result, the semaphore may be reset to a value of zero. In one embodiment, a plurality of synchronization files are locked prior to incrementing the semaphore and unlocked in response to detecting the response file. Another method includes counting the targets to provide a target count, incrementing a semaphore to the target count, creating a response file, and establishing a connection with the specific target. A computer program product and computer system corresponding to the methods are also disclosed herein.Type: ApplicationFiled: March 19, 2015Publication date: September 22, 2016Inventor: Peter D. Bain
-
Publication number: 20160274956Abstract: A method, executed by a computer, for inter-process communication in a multi-tenant environment includes creating an advertisement file for each tenant, determining that a semaphore is greater than zero, searching for a response file, and decrementing the semaphore. Detecting the response file may enable the specific tenant to establish a connection with an attachment process, and as a result, the semaphore may be reset to a value of zero. In one embodiment, a plurality of synchronization files are locked prior to incrementing the semaphore and unlocked in response to detecting the response file. Another method includes counting the targets to provide a target count, incrementing a semaphore to the target count, creating a response file, and establishing a connection with the specific target. A computer program product and computer system corresponding to the methods are also disclosed herein.Type: ApplicationFiled: September 2, 2015Publication date: September 22, 2016Inventor: Peter D. Bain
-
Publication number: 20140009314Abstract: A method for efficiently computing a hash value for a string is disclosed. In one embodiment, such a method includes receiving an original string comprising multiple characters. The method computes an original hash value for the original string. The method produces an updated string by performing at least one of the following updates on the original string: adding leading/trailing characters to the original string; removing leading/trailing characters from the original string, and modifying characters of the original string while preserving the length of the original string. The method then computes an updated hash value for the updated string by performing at least one operation on the original hash value, wherein the at least one operation takes into account the updates that were made to the original string. A corresponding apparatus and computer program product are also disclosed.Type: ApplicationFiled: July 6, 2012Publication date: January 9, 2014Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Peter D. Bain, Peter W. Burka, Charles R. Gracie
-
Publication number: 20120185875Abstract: A method to enable communication between software processes includes initiating a plurality of processes, the processes including both attachment processes and target processes. A single semaphore is created and initialized for use by the plurality of processes such that each of the target processes wait on the semaphore. An attachment process writes a message file, identifying a specific target process, to a location accessible by the target processes. The attachment process then increments the semaphore by the number of target processes, thereby unblocking the target processes and allowing them to check the message file. When the specific target process determines that the message file is intended for that target, a connection is established between the attachment process and the specific target process. The attachment process then decrements the semaphore to zero to block the target processes. A corresponding computer program product and apparatus are also disclosed herein.Type: ApplicationFiled: March 28, 2012Publication date: July 19, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventor: Peter D. Bain
-
Publication number: 20120016855Abstract: A method to enable communication between software processes includes initiating a plurality of processes, the processes including both attachment processes and target processes. A single semaphore is created and initialized for use by the plurality of processes such that each of the target processes wait on the semaphore. An attachment process writes a message file, identifying a specific target process, to a location accessible by the target processes. The attachment process then increments the semaphore by the number of target processes, thereby unblocking the target processes and allowing them to check the message file. When the specific target process determines that the message file is intended for that target, a connection is established between the attachment process and the specific target process. The attachment process then decrements the semaphore to zero to block the target processes. A corresponding computer program product and apparatus are also disclosed herein.Type: ApplicationFiled: July 16, 2010Publication date: January 19, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventor: Peter D. Bain
-
Patent number: 7225391Abstract: A method for generating a linear block code is disclosed. A message is broken up into a plurality of sets of bits. A first group of sets is processed to determine a first partial linear block code. An adjusted partial linear block code is generated from the partial linear block code. A second group of sets is processed to determine a second partial linear block code. The adjusted partial linear block code and the second partial linear block code are combined into a single value.Type: GrantFiled: December 17, 2002Date of Patent: May 29, 2007Assignee: Altera CorporationInventor: Peter D. Bain
-
Patent number: 7038518Abstract: A delay circuit includes a phase vernier having a plurality of logic components. Each logic component includes a selectable injection input capable of adjusting a phase of an input to the phase vernier.Type: GrantFiled: June 16, 2004Date of Patent: May 2, 2006Assignee: Altera CorporationInventor: Peter D. Bain
-
Patent number: 6777993Abstract: A delay circuit includes a phase vernier having a plurality of logic components. Each logic component includes a selectable injection input capable of adjusting a phase of an input to the phase vernier.Type: GrantFiled: July 3, 2002Date of Patent: August 17, 2004Assignee: Altera CorporationInventor: Peter D. Bain
-
Patent number: 5506747Abstract: FIFOs having various depths are provided in a RAM in a plurality of groups. For each group, stored numbers B and D determine a base address 2.sup.B in the RAM for the group and a depth 2.sup.D of each FIFO in the group. Each FIFO is identified by a respective FIFO identity having a most significant "1" bit whose position identifies the respective group of FIFOs, less significant bits identifying the respective FIFO in the group. A count C is provided which is common to all of the FIFOs for identifying a respective location in each FIFO. Each FIFO in the RAM is addressed with an address comprising a sum of the base address 2.sup.B, a product of said less significant bits multiplied by 2.sup.D, and a number C mod 2.sup.D, using the stored numbers B and D determined by the respective FIFO identity. The sum can be provided by an OR function.Type: GrantFiled: December 15, 1994Date of Patent: April 9, 1996Assignee: Northern Telecom LimitedInventor: Peter D. Bain