Patents Assigned to Azul Systems
-
Patent number: 8589920Abstract: A technique for executing a segmented virtual machine (VM) is disclosed. A plurality of core VMs is implemented in a plurality of core spaces. Each core VM is associated with one of a plurality of shell VMs. Resources of the core spaces are allocated among the core VMs.Type: GrantFiled: September 25, 2009Date of Patent: November 19, 2013Assignee: Azul Systems, Inc.Inventors: Gil Tene, Shyam Prasad Pillalamarri
-
Patent number: 8572605Abstract: Stitching a proxied connection between a first core virtual machine (VM) and a second core VM is disclosed. Stitching includes determining that a stitched connection should be generated between the first core VM and the second core VM and generating the stitched connection between the first core VM and the second core VM.Type: GrantFiled: April 28, 2005Date of Patent: October 29, 2013Assignee: Azul Systems, Inc.Inventors: Gil Tene, Shyam Prasad Pillalamarri
-
Patent number: 8544020Abstract: Preempting the execution of a thread is disclosed. Preempting includes receiving an indication that a preemption of the thread is desired and context switching the thread out at a thread safe point in the event that a thread safe point is reached.Type: GrantFiled: September 14, 2005Date of Patent: September 24, 2013Assignee: Azul Systems, Inc.Inventors: Gil Tene, Michael A. Wolf, Scott Sellers, Jack H. Choquette
-
Patent number: 8452938Abstract: Memory management includes identifying a region of virtual memory to be reclaimed, the region including at an object that is currently located at an original virtual memory location, and the region being supported by at least a portion of a memory resource; relocating the object from the original virtual memory location to a target virtual memory location; remapping one or more references to the object to the target virtual memory location; and releasing the portion of the memory resource prior to or contemporaneously with remapping the one or more references to the target location.Type: GrantFiled: April 8, 2008Date of Patent: May 28, 2013Assignee: Azul Systems, Inc.Inventors: Gil Tene, Michael A. Wolf
-
Patent number: 8356297Abstract: Interacting with an external environment of a segmented virtual machine is disclosed. An indication that a communication with an external environment is desired is received. It is determined whether the communication can be initiated directly from a core virtual machine of the segmented virtual machine without initiating the communication from a shell virtual machine of the segmented virtual machine. An attempt to initiate the communication is made based as at least in part on the determination.Type: GrantFiled: March 21, 2007Date of Patent: January 15, 2013Assignee: Azul Systems, Inc.Inventors: Ivan Posva, Daniel Dwight Grove, Anirban Sengupta, Sivakumar Annamalai, Gil Tene
-
Patent number: 8336048Abstract: Providing data to an application running on a segmented virtual machine (VM) is disclosed. Providing data includes opening an interface between the segmented VM and an external data source, transferring data from the external data source to an interface buffer, transferring a first selected amount of data from the interface buffer to a shell VM buffer, transferring a second selected amount of data from the shell VM buffer to a core VM buffer, and providing portions of the data from the core VM buffer to the application in response to read requests from the application.Type: GrantFiled: December 5, 2008Date of Patent: December 18, 2012Assignee: Azul Systems, Inc.Inventors: Gil Tene, Michael A. Wolf, Anirban Sengupta, Sivakumar Annamalai, Adrian Sun
-
Patent number: 8276138Abstract: Providing data to an application running on a segmented virtual machine (VM) is disclosed. Providing data includes opening an interface between the segmented VM and an external data source, transferring data from the external data source to an interface buffer, transferring a first selected amount of data from the interface buffer to a shell VM buffer, transferring a second selected amount of data from the shell VM buffer to a core VM buffer, and providing portions of the data from the core VM buffer to the application in response to read requests from the application.Type: GrantFiled: December 5, 2008Date of Patent: September 25, 2012Assignee: Azul Systems, Inc.Inventors: Gil Tene, Michael A. Wolf, Anirban Sengupta, Sivakumar Annamalai, Adrian Sun
-
Patent number: 8230271Abstract: Detecting a race condition is disclosed. An indication of a store operation to a memory address is received. An identifier of the memory address is stored. The identifier is used to detect an occurrence of a memory operation that is not associated with a previous ordering operation.Type: GrantFiled: October 22, 2010Date of Patent: July 24, 2012Assignee: Azul Systems, Inc.Inventors: Daniel Dwight Grove, Ivan Posva, Jack H. Choquette, Cliff N. Click, Jr., Jeffrey Gee
-
Patent number: 8108628Abstract: Instruction execution includes fetching an instruction that comprises a first set of one or more bits identifying the instruction, and a second set of one or more bits associated with a first address value. It further includes executing the instruction to determine whether to perform a trap, wherein executing the instruction includes selecting from a plurality of tests at least one test for determining whether to perform a trap and carrying out the at least one test.Type: GrantFiled: February 12, 2010Date of Patent: January 31, 2012Assignee: Azul Systems, Inc.Inventors: Jack H. Choquette, Gil Tene, Michael A. Wolf
-
Patent number: 8099651Abstract: A memory system provides data error detection and correction and address error detection. A cyclical-redundancy-check (CRC) code generates address check bits. A 32-bit address is compressed to 6 address check bits using the CRC code. The 6 address check bits are concatenated with 64 data bits and 2 flag bits to generate a 72-bit check word. The 72-bit check word is input to an error-correction code (ECC) generator that generates 12 check bits that are stored in memory with the 64 data bits. A 76-bit memory module can store the 64 data and 12 check bits. Nibble errors can be corrected, and all nibble+1 bit errors can be detected. Also, a 6-bit error in a sequence of bits can be detected. This allows all errors in the 6-bit CRC of the address to be detected. The CRC code and ECC are ideal for detecting double-bit errors common with multiplexed-address DRAMs.Type: GrantFiled: June 4, 2008Date of Patent: January 17, 2012Assignee: Azul Systems, Inc.Inventors: Kevin B. Normoyle, Robert G. Hathaway
-
Publication number: 20110321064Abstract: Handling a virtual method call includes extracting, from a pointer to an object, an identifier associated with the class of the object, the pointer to the object being associated with the virtual method call, and the identifier being embedded within the pointer; using the identifier to obtain a virtual method table, including locating a first entry in a class identifier table mapping a plurality of class identifiers to a corresponding plurality of class data, the first entry being associated with the identifier and comprising the virtual method table or a pointer used to obtain the virtual method table; locating a second entry in the virtual method table, the second entry being associated with the virtual method call; and jumping to an address associated with the second entry to execute code at the address.Type: ApplicationFiled: September 7, 2011Publication date: December 29, 2011Applicant: AZUL SYSTEMS, INC.Inventors: Gil Tene, Cliff N. Click, JR., Murali Sundaresan, Michael A. Wolf
-
Publication number: 20110302594Abstract: Determining a class of an object is disclosed. A pointer of the object is obtained. One or more bits that are not implemented as address bits are extracted from the pointer. The one or more bits are interpreted as an identifier of the class of the object. The class of the object is determined to correspond to the identifier.Type: ApplicationFiled: June 9, 2011Publication date: December 8, 2011Applicant: AZUL SYSTEMS, INC.Inventors: Gil Tene, Murali Sundaresan, Michael A. Wolf
-
Patent number: 8046544Abstract: A computer system includes a processor; and a memory coupled to the processor, configured to provide the processor with a plurality of instructions including a set of garbage collection instructions configured to perform one or more garbage collection barrier operations and a subsequent instruction that immediately follows the garbage collection instruction; wherein the processor is configured to execute the set of garbage collection instructions, including by: evaluating a memory reference to determine a condition associated with the set of garbage collection instructions; and in the event that the condition is met, while maintaining the same privilege level, saving information that is based at least in part on the current value of a program counter, and setting the program counter to correspond to a target location that is other than the location of the subsequent instruction.Type: GrantFiled: November 25, 2009Date of Patent: October 25, 2011Assignee: Azul Systems, Inc.Inventors: Cliff N. Click, Jr., Gil Tene, Michael A. Wolf
-
Patent number: 8041926Abstract: Executing a block of code is disclosed. Executing includes receiving an indication that the block of code is to be executed using a synchronization mechanism and speculatively executing the block of code on a virtual machine. The block of code may include application code. The block of code does not necessarily indicate that the block of code should be speculatively executed.Type: GrantFiled: October 6, 2010Date of Patent: October 18, 2011Assignee: Azul Systems, Inc.Inventors: Gil Tene, Michael A. Wolf
-
Patent number: 8037482Abstract: Reaching a determination associated with a class of an object is disclosed. An identifier associated with the class of the object is extracted from a pointer to the object. The extracted identifier is compared to a comparison value. At least in part using a result of the comparison a determination is reached.Type: GrantFiled: December 6, 2005Date of Patent: October 11, 2011Assignee: Azul Systems, Inc.Inventors: Gil Tene, Cliff N. Click, Jr., Murali Sundaresan, Michael A. Wolf
-
Patent number: 7987473Abstract: Determining a class of an object is disclosed. A pointer of the object is obtained. One or more bits that are not implemented as address bits are extracted from the pointer. The one or more bits are interpreted as an identifier of the class of the object. The class of the object is determined to correspond to the identifier.Type: GrantFiled: September 14, 2005Date of Patent: July 26, 2011Assignee: Azul Systems, Inc.Inventors: Gil Tene, Murali Sundaresan, Michael A. Wolf
-
Patent number: 7975114Abstract: Managing memory comprises execute a mutator comprising a plurality of mutator threads, and concurrently execute a garbage collector. Each of the plurality of mutator threads is separately stopped and notified, and is interrupted at a respective safepoint. In some cases executing the garbage collector includes remapping one or more references to one or more objects in an existing from-space, releasing the existing from-space, relocating one or more live objects that currently reside in a new from-space to one or more corresponding new locations, and identifying a set of one or more candidate pages suitable for forming next from-space during next garbage collection iteration.Type: GrantFiled: May 5, 2008Date of Patent: July 5, 2011Assignee: Azul Systems, Inc.Inventors: Gil Tene, Michael A. Wolf
-
Publication number: 20110093684Abstract: Executing a block of code is disclosed. Executing includes receiving an indication that the block of code is to be executed using a synchronization mechanism and speculatively executing the block of code on a virtual machine. The block of code may include application code. The block of code does not necessarily indicate that the block of code should be speculatively executed.Type: ApplicationFiled: October 6, 2010Publication date: April 21, 2011Applicant: AZUL SYSTEMS, INC.Inventors: Gil Tene, Michael A. Wolf
-
Publication number: 20110041015Abstract: Detecting a race condition is disclosed. An indication of a store operation to a memory address is received. An identifier of the memory address is stored. The identifier is used to detect an occurrence of a memory operation that is not associated with a previous ordering operation.Type: ApplicationFiled: October 22, 2010Publication date: February 17, 2011Applicant: AZUL SYSTEMS, INC.Inventors: Daniel Dwight Grove, Ivan Posva, Jack H. Choquette, Cliff N. Click, JR., Jeffrey Gee
-
Patent number: 7865701Abstract: Executing a set one or more instructions atomically is disclosed. Executing includes saving a set of one or more register states in a software data structure, speculatively executing the set of instructions, and restoring the state of one or more registers when an abort indication is received.Type: GrantFiled: September 14, 2005Date of Patent: January 4, 2011Assignee: Azul Systems, Inc.Inventors: Gil Tene, Ivan Posva, Michael A. Wolf, Daniel Dwight Grove, Tom Kraljevic