Patents by Inventor George R. Cameron
George R. Cameron 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: 10402378Abstract: A method for executing an executable file. The method includes executing instructions in the executable file by a first process, receiving a write request from a second process to write to the executable file, generating an anonymous file from the executable file in response to the write request, executing the anonymous file by the first process, and accessing the executable file by the second process.Type: GrantFiled: August 29, 2016Date of Patent: September 3, 2019Assignee: Sun Microsystems, Inc.Inventors: John E. Zolnowsky, George R. Cameron, Blake A. Jones
-
Publication number: 20160371298Abstract: A method for executing an executable file. The method includes executing instructions in the executable file by a first process, receiving a write request from a second process to write to the executable file, generating an anonymous file from the executable file in response to the write request, executing the anonymous file by the first process, and accessing the executable file by the second process.Type: ApplicationFiled: August 29, 2016Publication date: December 22, 2016Inventors: John E. Zolnowsky, George R. Cameron, Blake A. Jones
-
Patent number: 9430487Abstract: A method for executing an executable file. The method includes executing instructions in the executable file by a first process, receiving a write request from a second process to write to the executable file, generating an anonymous file from the executable file in response to the write request, executing the anonymous file by the first process, and accessing the executable file by the second process.Type: GrantFiled: June 13, 2014Date of Patent: August 30, 2016Assignee: Oracle America, Inc.Inventors: John E. Zolnowsky, George R. Cameron, Blake Alan Jones
-
Patent number: 8930894Abstract: A method for executing an executable file. The method includes executing instructions in the executable file by a first process, receiving a write request from a second process to write to the executable file, generating an anonymous file from the executable file in response to the write request, executing the anonymous file by the first process, and accessing the executable file by the second process.Type: GrantFiled: October 8, 2008Date of Patent: January 6, 2015Assignee: Oracle America, Inc.Inventors: John E. Zolnowsky, George R. Cameron, Blake A. Jones
-
Publication number: 20140297696Abstract: A method for executing an executable file. The method includes executing instructions in the executable file by a first process, receiving a write request from a second process to write to the executable file, generating an anonymous file from the executable file in response to the write request, executing the anonymous file by the first process, and accessing the executable file by the second process.Type: ApplicationFiled: June 13, 2014Publication date: October 2, 2014Inventors: John E. Zolnowsky, George R. Cameron, Blake Alan Jones
-
Patent number: 8274521Abstract: A method involving receiving an indication of a requirement to allocate at least one page for a process, where pages are associated with cache colors; generating a selection bitmap by performing a logical operation of a system available colors bitmap and a process bitmap, where the system available colors bitmap and the process bitmap each include one bit corresponding to each cache color, where each bit of the system available colors bitmap indicates whether a number of pages associated with a corresponding cache color that are available to be allocated is above a minimum threshold, and where each bit of the process bitmap indicates whether any pages associated with the corresponding cache color have been recently allocated for the process. The method also includes selecting, using the selection bitmap, a cache color; and allocating a page for the process, wherein the allocated page is associated with the selected cache color.Type: GrantFiled: May 8, 2009Date of Patent: September 25, 2012Assignee: Oracle America, Inc.Inventors: George R. Cameron, Blake A. Jones, Kit M. Chow
-
Patent number: 8127295Abstract: A device, system, and method are directed towards managing limited resources in a computer system with multiple processing units. Each processing unit has a corresponding bucket. Each thread executing on a processing unit has a corresponding wallet. Buckets and wallets contain credits corresponding to units of the limited resource. When a request for the resource is made, mechanisms of the invention attempt to fulfill the request by looking in a local wallet, a local bucket, or non-local buckets. In a resource shortage situation, credits may be moved to a primary bucket. A load balancing mechanism may distribute credits among buckets, or move credits from wallets to buckets.Type: GrantFiled: August 3, 2007Date of Patent: February 28, 2012Assignee: Oracle America, Inc.Inventors: Blake A. Jones, George R. Cameron, Eric E. Lowe
-
Patent number: 8095770Abstract: The invention relates to mapping data to a process. A method of the invention includes receiving a request to copy a parent process, where the parent process is associated with a first virtual memory address space that includes a first mapping to a page of a file loaded into physical memory. The method includes creating a child process (of the parent process) associated with a second virtual memory address space. The method includes determining that a fork count is greater than a fork count threshold and a COW count to fork count ratio is greater than a threshold ratio. The fork count is associated with the file and the COW count is associated with the page. The method includes creating a copy of the page in physical memory and further includes creating a second mapping from the second virtual memory address space to the copy of the page.Type: GrantFiled: May 8, 2009Date of Patent: January 10, 2012Assignee: Oracle America Inc.Inventors: George R. Cameron, Blake A. Jones, Stan J. Studzinski
-
Patent number: 8095772Abstract: A method for loading shared libraries. The method includes receiving an indication of a requirement to load the shared library into the virtual memory and determining that the shared library is a candidate for using shared large pages. Further, the method includes, in response to the determination, storing a text section of the shared library in a shared large page of the virtual memory and storing a data section of the shared library in a page of the virtual memory, where the virtual memory is mapped to a physical memory of the computer, where, within an address space of the virtual memory, a starting address of the text section of the shared library is separated from a starting address of the data section of the shared library by a predefined distance, and where the predefined distance is larger than a size of the large page.Type: GrantFiled: May 8, 2009Date of Patent: January 10, 2012Assignee: Oracle America, Inc.Inventors: George R. Cameron, Blake A. Jones, Rodrick I. Evans, Michael E. Corcoran
-
Patent number: 7886119Abstract: A chain of snapshots includes a more recent snapshot with a data block copied from a base volume, a less recent snapshot with a skip-pointer that leads to the data block in said more recent snapshot, and one or more intermediate snapshots between the more recent snapshot and the less recent snapshot in the chain of snapshots.Type: GrantFiled: February 27, 2007Date of Patent: February 8, 2011Assignee: 3PAR Inc.Inventors: George R. Cameron, Hueichian Huang
-
Patent number: 7873801Abstract: Managing physical memory for one or more processes with both a minimum and a maximum amount of physical memory. Memory sets are created, each specifying a number of credits. The total number of credits specified by all memory sets are equal to the total number of pages in physical memory. One or more processes are bound to a memory set. All of the processes bound to a memory set are collectively referred to as the workload of the memory set. Each physical page is accounted for to ensure that each workload can utilize at least the number of physical pages equaling the number of credits in its memory set. Additionally, a workload is permitted to use physical pages that are being explicitly shared by workloads of other memory sets. Accordingly, a workload with both a minimum and a maximum amount of physical memory is specified by its memory set.Type: GrantFiled: February 1, 2007Date of Patent: January 18, 2011Assignee: Oracle America, Inc.Inventors: Blake A. Jones, George R. Cameron, Eric E. Lowe
-
Patent number: 7836329Abstract: A communication link protocol is provided for communicating between nodes of an interconnect system via a communication link. In one embodiment, the communication link protocol includes a direct memory access (DMA) command for writing a block of data from a local node to a remote node via the communication link; an administrative write command for writing data from a local node to registers in a remote node via the communication link for administrative purposes; a memory copy write command for writing a line of memory from a local node to a remote node via the communication link when any data is written into that line of memory; and a built in self test (BIST) command for testing the functionality of the communication link.Type: GrantFiled: December 29, 2000Date of Patent: November 16, 2010Assignee: 3PAR, Inc.Inventors: Ashok Singhal, David J. Broniarczyk, George R. Cameron, Jeff A. Price
-
Publication number: 20100283793Abstract: A method involving receiving an indication of a requirement to allocate at least one page for a process, where pages are associated with cache colors; generating a selection bitmap by performing a logical operation of a system available colors bitmap and a process bitmap, where the system available colors bitmap and the process bitmap each include one bit corresponding to each cache color, where each bit of the system available colors bitmap indicates whether a number of pages associated with a corresponding cache color that are available to be allocated is above a minimum threshold, and where each bit of the process bitmap indicates whether any pages associated with the corresponding cache color have been recently allocated for the process. The method also includes selecting, using the selection bitmap, a cache color; and allocating a page for the process, wherein the allocated page is associated with the selected cache color.Type: ApplicationFiled: May 8, 2009Publication date: November 11, 2010Applicant: Sun Microsystems, Inc.Inventors: George R. Cameron, Blake A. Jones, Kit M. Chow
-
Publication number: 20100287356Abstract: A method for loading shared libraries. The method includes receiving an indication of a requirement to load the shared library into the virtual memory and determining that the shared library is a candidate for using shared large pages. Further, the method includes, in response to the determination, storing a text section of the shared library in a shared large page of the virtual memory and storing a data section of the shared library in a page of the virtual memory, where the virtual memory is mapped to a physical memory of the computer, where, within an address space of the virtual memory, a starting address of the text section of the shared library is separated from a starting address of the data section of the shared library by a predefined distance, and where the predefined distance is larger than a size of the large page.Type: ApplicationFiled: May 8, 2009Publication date: November 11, 2010Applicant: Sun Microsystems, Inc.Inventors: George R. Cameron, Blake A. Jones, Rodrick I. Evans, Michael E. Corcoran
-
Publication number: 20100287347Abstract: The invention relates to mapping data to a process. A method of the invention includes receiving a request to copy a parent process, where the parent process is associated with a first virtual memory address space that includes a first mapping to a page of a file loaded into physical memory. The method includes creating a child process (of the parent process) associated with a second virtual memory address space. The method includes determining that a fork count is greater than a fork count threshold and a COW count to fork count ratio is greater than a threshold ratio. The fork count is associated with the file and the COW count is associated with the page. The method includes creating a copy of the page in physical memory and further includes creating a second mapping from the second virtual memory address space to the copy of the page.Type: ApplicationFiled: May 8, 2009Publication date: November 11, 2010Applicant: SUN MICROSYSTEMS, INC.Inventors: George R. Cameron, Blake A. Jones, Stan J. Studzinski
-
Patent number: 7743031Abstract: A snapshot tree structure includes a base volume storing a current user data at a current time, a first read-only snapshot descending from the base volume, and a second read-only snapshot descending from the first read-only snapshot. The first read-only snapshot is created at a first time earlier than the current time. The first read-only snapshot stores a first data of the base volume at the first time before the first data is modified in the base volume. The second read-only snapshot is created at a second time earlier than the first time. The second read-only snapshot stores a second data of the base volume at the second time before the second data is modified in the base volume.Type: GrantFiled: September 4, 2003Date of Patent: June 22, 2010Assignee: 3Par, Inc.Inventors: George R. Cameron, Hueichian Huang
-
Publication number: 20100088496Abstract: A method for executing an executable file. The method includes executing instructions in the executable file by a first process, receiving a write request from a second process to write to the executable file, generating an anonymous file from the executable file in response to the write request, executing the anonymous file by the first process, and accessing the executable file by the second process.Type: ApplicationFiled: October 8, 2008Publication date: April 8, 2010Applicant: Sun Microsystems, Inc.Inventors: John E. Zolnowsky, George R. Cameron, Blake A. Jones
-
Patent number: 7543100Abstract: A node controller for a data storage system having at least one node provides access to a data storage facility. The node controller is distinct from a computer-memory complex of the node. The node controller provides overall control for transferring data through the node.Type: GrantFiled: June 18, 2001Date of Patent: June 2, 2009Assignee: 3PAR, Inc.Inventors: Ashok Singhal, Jeffrey A. Price, David J. Broniarczyk, George R. Cameron
-
Publication number: 20080189502Abstract: Managing physical memory for one or more processes with both a minimum and a maximum amount of physical memory. Memory sets are created, each specifying a number of credits. The total number of credits specified by all memory sets are equal to the total number of pages in physical memory. One or more processes are bound to a memory set. All of the processes bound to a memory set are collectively referred to as the workload of the memory set. Each physical page is accounted for to ensure that each workload can utilize at least the number of physical pages equaling the number of credits in its memory set. Additionally, a workload is permitted to use physical pages that are being explicitly shared by workloads of other memory sets. Accordingly, a workload with both a minimum and a maximum amount of physical memory is specified by its memory set.Type: ApplicationFiled: February 1, 2007Publication date: August 7, 2008Applicant: Sun Microsystems, Inc.Inventors: Blake A. Jones, George R. Cameron, Eric E. Lowe
-
Patent number: RE40877Abstract: A method is provided for communicating data in an interconnect system comprising a plurality of nodes. In one aspect, the method includes: issuing a command packet from a first node, the command packet comprising a respective header quadword and at least one respective data quadword for conveying a command to a second node, wherein the command is selected from a group comprising a direct memory access (DMA) command, an administrative write command, a memory copy write command, and a built in self test (BIST) command; receiving the command packet at the second node; issuing an acknowledgement packet from the second node, the acknowledgement packet comprising a respective header quadword for conveying an acknowledgement that the command packet has been received at the second node.Type: GrantFiled: July 10, 2008Date of Patent: August 18, 2009Assignee: 3PAR, Inc.Inventors: Ashok Singhal, David J. Broniarczyk, George R. Cameron, Jeff A. Price