Patents by Inventor Thomas D. Bissett
Thomas D. Bissett 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: 10095590Abstract: A fault tolerant computer system having two virtual machines (VMs), each running on a separate host device, is connected over a network to one or more I/O devices. The system operates to monitor the health of one or more operational characteristics associated with each VM, and in the event that the health of both virtual machines dictates that one or the other of the VMs should be downgraded, but the system is not able to determine which VM should be downgraded and there is an imbalance in a monitored system operational characteristic, the system can defer downgrading one VM for a selected period of time during which the operational characteristic that is in imbalance is monitored. If the imbalance is resolved, the downgrade is cancelled, if an operational fault is confirmed prior to the expiration of the deferral period or if the deferral period expires, then one host is downgraded.Type: GrantFiled: May 5, 2016Date of Patent: October 9, 2018Inventors: Thomas D Bissett, Stephen J Wark, Paul A Leveille, James D McCollum, Angel L Pagan
-
Patent number: 9760442Abstract: A method of delaying checkpointing in a virtual machine system. In one embodiment, the method includes the steps of examining a network frame to determine if it is a deferrable frame and if the frame is a deferrable frame, delaying a checkpoint associated with the frame. In another embodiment, the deferrable frame is one of a group comprising: an IP packet tagged with the ‘more fragments’ attribute; TCP data segments that lack the PSH flag and carry no flags other than ‘ACK’; and TCP segments that contain no data and carry only the ‘ACK’ flag; and any frame originating from or destined to a designated network address or port number. In still another embodiment, the method includes the step of concatenating the delays due to deferrable frames. In still yet another embodiment, the method further includes setting an upper limit to the amount of delay that can be generated.Type: GrantFiled: December 16, 2014Date of Patent: September 12, 2017Assignee: Stratus Technologies Bermuda Ltd.Inventors: Thomas D. Bissett, Paul A. Leveille, Srinivasu Chinta
-
Patent number: 9652338Abstract: A method for determining a delay in a dynamic, event driven, checkpoint interval. In one embodiment, the method includes the steps of determining the number of network bits to be transferred; determining the target bit transfer rate; calculating the next cycle delay as the number of bits to be transferred divided by the target bit transfer rate. In another aspect, the invention relates to a method for delaying a checkpoint interval. In one embodiment, the method includes the steps of monitoring the transfer of a prior batch of network data and delaying a subsequent checkpoint until the transfer of a prior batch of network data has reached a certain predetermined level of completion. In another embodiment, the predetermined level of completion is 100%.Type: GrantFiled: December 16, 2014Date of Patent: May 16, 2017Assignee: Stratus Technologies Bermuda Ltd.Inventors: Thomas D. Bissett, Paul A. Leveille, Srinivasu Chinta
-
Patent number: 9588844Abstract: In one aspect, the invention relates to a fault tolerant computing system. The system includes a primary virtual machine and a secondary virtual machine, wherein the primary and secondary virtual machines are in communication, wherein the primary virtual machine comprises a first checkpointing engine and a first network interface, wherein the secondary virtual machine comprises a second network interface, wherein the first checkpointing engine forwards a page of memory of the primary virtual machine to the second virtual machine such that the first checkpointing engine can checkpoint the page of memory without pausing the primary virtual machine.Type: GrantFiled: December 16, 2014Date of Patent: March 7, 2017Assignee: Stratus Technologies Bermuda Ltd.Inventors: Thomas D. Bissett, Paul A. Leveille
-
Publication number: 20160328302Abstract: A fault tolerant computer system having two virtual machines (VMs), each running on a separate host device, is connected over a network to one or more I/O devices. The system operates to monitor the health of one or more operational characteristics associated with each VM, and in the event that the health of both virtual machines dictates that one or the other of the VMs should be downgraded, but the system is not able to determine which VM should be downgraded and there is an imbalance in a monitored system operational characteristic, the system can defer downgrading one VM for a selected period of time during which the operational characteristic that is in imbalance is monitored. If the imbalance is resolved, the downgrade is cancelled, if an operational fault is confirmed prior to the expiration of the deferral period or if the deferral period expires, then one host is downgraded.Type: ApplicationFiled: May 5, 2016Publication date: November 10, 2016Inventors: THOMAS D. BISSETT, STEPHEN J. WARK, PAUL A. LEVEILLE, JAMES D. MCCOLLUM, ANGEL L. PAGAN
-
Publication number: 20150205673Abstract: In one aspect, the invention relates to a fault tolerant computing system. The system includes a primary virtual machine and a secondary virtual machine, wherein the primary and secondary virtual machines are in communication, wherein the primary virtual machine comprises a first checkpointing engine and a first network interface, wherein the secondary virtual machine comprises a second network interface, wherein the first checkpointing engine forwards a page of memory of the primary virtual machine to the second virtual machine such that the first checkpointing engine can checkpoint the page of memory without pausing the primary virtual machine.Type: ApplicationFiled: December 16, 2014Publication date: July 23, 2015Inventors: Thomas D. Bissett, Paul A. Leveille
-
Publication number: 20150205671Abstract: A method for determining a delay in a dynamic, event driven, checkpoint interval. In one embodiment, the method includes the steps of determining the number of network bits to be transferred; determining the target bit transfer rate; calculating the next cycle delay as the number of bits to be transferred divided by the target bit transfer rate. In another aspect, the invention relates to a method for delaying a checkpoint interval. In one embodiment, the method includes the steps of monitoring the transfer of a prior batch of network data and delaying a subsequent checkpoint until the transfer of a prior batch of network data has reached a certain predetermined level of completion. In another embodiment, the predetermined level of completion is 100%.Type: ApplicationFiled: December 16, 2014Publication date: July 23, 2015Inventors: Thomas D. Bissett, Paul A. Leveille, Srinivasu Chinta
-
Publication number: 20150205672Abstract: A method of delaying checkpointing in a virtual machine system. In one embodiment, the method includes the steps of examining a network frame to determine if it is a deferrable frame and if the frame is a deferrable frame, delaying a checkpoint associated with the frame. In another embodiment, the deferrable frame is one of a group comprising: an IP packet tagged with the ‘more fragments’ attribute; TCP data segments that lack the PSH flag and carry no flags other than ‘ACK’; and TCP segments that contain no data and carry only the ‘ACK’ flag; and any frame originating from or destined to a designated network address or port number. In still another embodiment, the method includes the step of concatenating the delays due to deferrable frames. In still yet another embodiment, the method further includes setting an upper limit to the amount of delay that can be generated.Type: ApplicationFiled: December 16, 2014Publication date: July 23, 2015Inventors: Thomas D. Bissett, Paul A. Leveille, Srinivasu Chinta
-
Patent number: 8812907Abstract: A computer system configured to provide fault tolerance includes a first host system and a second host system. The first host system is programmed to monitor a number of portions of memory of the first host system that have been modified by a guest running on the first host system and, upon determining that the number of portions exceeds a threshold level, determine that a checkpoint needs to be created. Upon determining that the checkpoint needs to be created, operation of the guest is paused and checkpoint data is generated. After generating the checkpoint data, operation of the guest is resumed while the checkpoint data is transmitted to the second host system.Type: GrantFiled: July 19, 2011Date of Patent: August 19, 2014Assignee: Marathon Technologies CorporationInventors: Thomas D. Bissett, Paul A. Leveille, Ted M. Lin, Jerry Melnick, Angel L. Pagan, Glenn A. Tremblay
-
Patent number: 7877552Abstract: A symmetric multiprocessing fault-tolerant computer system controls memory access in a symmetric multiprocessing computer system. To do so, virtual page structures are created, where the virtual page structures reflect physical page access privileges to shared memory for processors in a symmetric multiprocessing computer system. Access to shared memory is controlled based on physical page access privileges reflected in the virtual paging structures to coordinate deterministic shared memory access between processors in the symmetric multiprocessing computer system. A symmetric multiprocessing fault-tolerant computer system may use duplication or continuous replay.Type: GrantFiled: May 23, 2006Date of Patent: January 25, 2011Assignee: Marathon Technologies CorporationInventors: Paul A. Leveille, Thomas D. Bissett, Stephen S. Corbin, Jerry Melnick, Glenn A. Tremblay, Satoshi Watanabe, Keiichi Koyama
-
Publication number: 20090240916Abstract: A fault tolerant/fault resilient computer system includes a first coserver and a second coserver. The first coserver includes a first application environment (AE) processor and a first I/O subsystem processor on a first common motherboard. The second coserver includes a second AE processor and a second I/O subsystem processor on a second common motherboard.Type: ApplicationFiled: May 1, 2009Publication date: September 24, 2009Applicant: MARATHON TECHNOLOGIES CORPORATIONInventors: Glenn A. Tremblay, Paul A. Leveille, James D. McCollum, Thomas D. Bissett, J. Mark Pratt
-
Publication number: 20030093570Abstract: Operation of two asynchronous processors are synchronized with an I/O device by receiving, at a first processor having a first clocking system, data from an I/O device. The data is received at a first time associated with the first clocking system, and is forwarded from the first processor to a second processor having a second clocking system that is not synchronized with the first clocking system. The data is processed at the first processor at a second time corresponding to the first time in the first clocking system plus a time offset, and at the second processor at a third time corresponding to the first time in the second clocking system plus the time offset.Type: ApplicationFiled: June 25, 2002Publication date: May 15, 2003Inventor: Thomas D. Bissett
-
Patent number: 6473869Abstract: A fault tolerant/fault resilient computer system includes at least two compute elements connected to at least one controller. Each compute element has clocks that operate asynchronously to clocks of the other compute elements. The compute elements operate in a first mode in which the compute elements each execute a first stream of instructions in emulated clock lockstep, and in a second mode in which the compute elements each execute a second stream of instructions in instruction lockstep. Each compute element may be a multi-processor compute element.Type: GrantFiled: August 10, 2001Date of Patent: October 29, 2002Assignee: Marathon Technologies CorporationInventors: Thomas D. Bissett, Paul A. Leveille, Erik Muench
-
Publication number: 20020026604Abstract: A fault tolerant/fault resilient computer system includes at least two compute elements connected to at least one controller. Each compute element has clocks that operate asynchronously to clocks of the other compute elements. The compute elements operate in a first mode in which the compute elements each execute a first stream of instructions in emulated clock lockstep, and in a second mode in which the compute elements each execute a second stream of instructions in instruction lockstep. Each compute element may be a multi-processor compute element.Type: ApplicationFiled: August 10, 2001Publication date: February 28, 2002Applicant: Marathon Technologies Corporation, a Delaware corporationInventors: Thomas D. Bissett, Paul A. Leveille, Erik Muench
-
Patent number: 6279119Abstract: A fault tolerant/fault resilient computer system includes at least two compute elements connected to at least one controller. Each compute element has clocks that operate asynchronously to clocks of the other compute elements. The compute elements operate in a first mode in which the compute elements each execute a first stream of instructions in emulated clock lockstep, and in a second mode in which the compute elements each execute a second stream of instructions in instruction lockstep. Each compute element may be a multi-processor compute element.Type: GrantFiled: November 13, 1998Date of Patent: August 21, 2001Assignee: Marathon Technologies CorporationInventors: Thomas D. Bissett, Paul A. Leveille, Erik Muench
-
Patent number: 6205565Abstract: Data transfer to computing elements is synchronized in a computer system that includes the computing elements and controllers that provide data from data sources to the computing elements. A request for data made by a computing element is intercepted and transmitted to the controllers. At least a first controller responds by transmitting requested data to the computing element and by indicating how a second controller will respond to the intercepted request.Type: GrantFiled: May 19, 1998Date of Patent: March 20, 2001Assignee: Marathon Technologies CorporationInventors: Thomas D. Bissett, Martin J. Fitzgerald, V, Paul A. Leveille, James D. McCollum, Erik Muench, Glenn A. Tremblay
-
Patent number: 5896523Abstract: Synchronized execution is maintained by compute elements processing instruction streams in a computer system including the compute elements and a controller. Each compute element includes a clock that operates asynchronously with respect to clocks of the other compute elements. Each compute element processes instructions from an instruction stream and counts the instructions processed. Upon processing a quantum of instructions from the instruction stream, the compute element initiates a synchronization procedure and continues to process instructions from the instruction stream and to count instructions processed from the instruction stream. The compute element halts processing of instructions from the instruction stream after processing an unspecified number of instructions from the instruction stream in addition to the quantum of instructions. Upon halting processing, the compute element sends a synchronization request to the controller and waits for a synchronization reply.Type: GrantFiled: June 4, 1997Date of Patent: April 20, 1999Assignee: Marathon Technologies CorporationInventors: Thomas D. Bissett, Paul A. Leveille, Erik Muench, Glenn A. Tremblay
-
Patent number: 5790397Abstract: Data transfer to computing elements is synchronized in a computer system that includes the computing elements and controllers that provide data from data sources to the computing elements. A request for data made by a computing element is intercepted and transmitted to the controllers. At least a first controller responds by transmitting requested data to the computing element and by indicating how a second controller will respond to the intercepted request.Type: GrantFiled: September 17, 1996Date of Patent: August 4, 1998Assignee: Marathon Technologies CorporationInventors: Thomas D. Bissett, Martin J. Fitzgerald, V, Paul A. Leveille, James D. McCollum, Erik Muench, Glenn A. Tremblay
-
Patent number: 5615403Abstract: The effects of I/O race conditions caused by asynchrony between processors concurrently executing the same software and I/O devices are eliminated by executing an application program and a first associated operating system with firs processors, and executing an I/O processing program and a second associated operating system with an I/O processor. Memory requests from the application program or the first associated operating system are processed with the first processors, and memory requests from the application program to memory addresses associated with I/O devices are trapped and transmitted to the I/O processor. The I/O processor then performs the trapped memory requests with the I/O processing program after waiting for the identical request to be received from each of the first processors to eliminate the effects of race conditions caused by asynchrony between processors concurrently executing the application program or the first associated operating system and I/O devices.Type: GrantFiled: October 2, 1995Date of Patent: March 25, 1997Assignee: Marathon Technologies CorporationInventors: Thomas D. Bissett, Richard D. Fiorentino, Robert M. Glorioso, Diane T. McCauley, James D. McCollum, Glenn A. Tremblay, Mario Troiani
-
Patent number: 5600784Abstract: In a first aspect, a method of synchronizing at least two computing elements that each have clocks that operate asynchronously of the clocks of the other computing elements includes selecting one or more signals, designated as meta time signals, from a set of signals produced by the computing elements, monitoring the computing elements to detect the production of a selected signal by one of the computing elements, waiting for the other computing elements to produce a selected signal, transmitting equally valued time updates to each of the computing elements, and updating the clocks of the computing elements based on the time updates.In a second aspect, fault resilient or fault tolerant computers are produced by designating a first processor as a computing element, designating a second processor as a controller, connecting the computing element and the controller to produce a modular pair, and connecting at least two modular pairs to produce a fault resilient or fault tolerant computer.Type: GrantFiled: March 16, 1995Date of Patent: February 4, 1997Assignee: Marathon Technologies CorporationInventors: Thomas D. Bissett, Richard D. Fiorentino, Robert M. Glorioso, Diane T. McCauley, James D. McCollum, Glenn A. Tremblay