Patents by Inventor Udayakumar Cholleti
Udayakumar Cholleti 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: 7827374Abstract: According to one embodiment of the invention, a technique is provided for relocating the contents of kernel pages in a manner similar to techniques used for relocating the contents of user pages. Before the contents of a source page are moved to a target page, for each entry of a plurality of entries that correspond to the source page, it is determined whether a mapping indicated in that entry is a mapping into kernel virtual memory address space or user virtual memory address space. If the mapping is into user virtual memory address space, then the entry is marked invalid. If the mapping is into kernel virtual memory address space, then the mapping is marked suspended. Marking an entry suspended causes processes and threads that try to access the entry's mapping to wait until the entry is no longer marked suspended. Consequently, kernel pages may be distributed among all computing system boards.Type: GrantFiled: June 12, 2006Date of Patent: November 2, 2010Assignee: Oracle America, Inc.Inventors: Udayakumar Cholleti, Sean McEnroe, Stan J. Studzinski
-
Patent number: 7802070Abstract: An approach for de-fragmenting physical memory generally involves grouping kernel pages together based on large pages. The de-fragmentation procedure is triggered, such as by a kernel page-freelist being empty. The first user page from a user page-freelist is selected, marked as a kernel page (e.g., by setting a P_KERNEL bit), added to the kernel page-freelist, and then the large page in which the selected page is identified. Starting with the first small page within the large page, the small pages are processed by the de-fragmentation procedure, resulting in as many small pages as possible being marked as kernel pages and then added to the kernel page-freelist. Later, when a large page is coalesced, the number of kernel pages that must be relocated within the large page being coalesced is reduced or eliminated as a result of the de-fragmentation of the physical memory.Type: GrantFiled: June 13, 2006Date of Patent: September 21, 2010Assignee: Oracle America, Inc.Inventors: Udayakumar Cholleti, Sean McEnroe, Stan J. Studzinski
-
Patent number: 7685391Abstract: Kernel and user stack data is stored in relocatable memory. A kernel thread or a user thread can move its own stack data by creating a relocation request and adding the relocation request to a queue of a dedicated thread. The dedicated thread performs the relocation on behalf of the requesting kernel or user thread.Type: GrantFiled: October 12, 2004Date of Patent: March 23, 2010Assignee: Sun Microsystems, Inc.Inventors: Udayakumar Cholleti, Viswanath Knishnamurthy, Stan J. Studzinski
-
Patent number: 7562204Abstract: A method for identifying relocatable kernel memory allocations in kernel non-relocatable memory is described. In this method, a physical address hardware mapping entry (PA HME) for each process accessing a physical page of memory by physical addresses. For each of the PA HMEs corresponding a process that does not permit page relocation, the pre-relocation handler and post-relocation handler references of each PA HME is set to null. Each PA HMEs is associated with a pmapping list for the physical page. Thus, A physical page is identified as non-relocatable when one of the PA HMEs referenced by the pmapping list has null pre-relocation and post-relocation handler references.Type: GrantFiled: March 29, 2006Date of Patent: July 14, 2009Assignee: Sun Microsystems, Inc.Inventors: Udayakumar Cholleti, Sean McEnroe, Stan J. Studzinski
-
Patent number: 7500074Abstract: An approach for partitioning virtual memory address space and identifying relocatable and non-relocatable regions of memory is provided. In one embodiment, the allocations of physical addresses and kernel virtual memory addresses are partitioned into relocatable and non-relocatable regions such that, by inspecting a virtual address, the property of the physical memory (relocatable or non-relocatable) is identified.Type: GrantFiled: June 30, 2006Date of Patent: March 3, 2009Assignee: Sun Microsystems, Inc.Inventors: Udayakumar Cholleti, Sean McEnroe, Stan J. Studzinski
-
Patent number: 7500073Abstract: A method for relocating virtual to physical memory mappings in a computer system is described in which a new hardware mapping entry (HME) block is allocated at a new location in memory. Contents of an old HME block are copied to the new HME block. The new HME block is added to a linked list of HME blocks. The old HME block is then removed from the linked list. A lock is acquired during the adding and during the removing. A machine readable medium having processor instructions for relocating virtual to physical memory mappings is also described.Type: GrantFiled: March 29, 2006Date of Patent: March 3, 2009Assignee: Sun Microsystems, Inc.Inventors: Udayakumar Cholleti, Sean McEnroe, Stan J. Studzinski
-
Patent number: 7490214Abstract: According to one embodiment of the invention, a technique is provided for relocating the contents of kernel pages in a manner similar to techniques used for relocating the contents of user pages. Before the contents of a source page are moved to a target page, for each entry of a plurality of entries that correspond to the source page, it is determined whether a mapping indicated in that entry is a mapping into kernel virtual memory address space or user virtual memory address space. If the mapping is into user virtual memory address space, then the entry is marked invalid. If the mapping is into kernel virtual memory address space, then the mapping is marked suspended. Marking an entry suspended causes processes and threads that try to access the entry's mapping to wait until the entry is no longer marked suspended. Consequently, kernel pages may be distributed among all computing system boards.Type: GrantFiled: June 12, 2006Date of Patent: February 10, 2009Assignee: Sun Microsystems, Inc.Inventors: Udayakumar Cholleti, Sean McEnroe, Stan J. Studzinski
-
Patent number: 7472249Abstract: An approach for freeing memory based upon its relocatable or non-relocatable property is provided. In one embodiment, drivers and other processes that do not provide callback methods or similar capability to route DMA requests to the correct physical address are identified and all memory allocations made by the driver or other process are made from the appropriate region.Type: GrantFiled: June 30, 2006Date of Patent: December 30, 2008Assignee: Sun Microsystems, Inc.Inventors: Udayakumar Cholleti, Sean McEnroe, Stan J. Studzinski
-
Publication number: 20080005517Abstract: An approach for partitioning virtual memory address space and identifying relocatable and non-relocatable regions of memory is provided. In one embodiment, the allocations of physical addresses and kernel virtual memory addresses are partitioned into relocatable and non-relocatable regions such that, by inspecting a virtual address, the property of the physical memory (relocatable or non-relocatable) is identified.Type: ApplicationFiled: June 30, 2006Publication date: January 3, 2008Inventors: Udayakumar Cholleti, Sean McEnroe, Stan J. Studzinski
-
Publication number: 20080005521Abstract: An approach for freeing memory based upon its relocatable or non-relocatable property is provided. In one embodiment, drivers and other processes that do not provide callback methods or similar capability to route DMA requests to the correct physical address are identified and all memory allocations made by the driver or other process are made from the appropriate region.Type: ApplicationFiled: June 30, 2006Publication date: January 3, 2008Inventors: Udayakumar Cholleti, Sean McEnroe, Stan J. Studzinski
-
Publication number: 20070288719Abstract: An approach for de-fragmenting physical memory generally involves grouping kernel pages together based on large pages. The de-fragmentation procedure is triggered, such as by a kernel page-freelist being empty. The first user page from a user page-freelist is selected, marked as a kernel page (e.g., by setting a P_KERNEL bit), added to the kernel page-freelist, and then the large page in which the selected page is identified. Starting with the first small page within the large page, the small pages are processed by the de-fragmentation procedure, resulting in as many small pages as possible being marked as kernel pages and then added to the kernel page-freelist. Later, when a large page is coalesced, the number of kernel pages that must be relocated within the large page being coalesced is reduced or eliminated as a result of the de-fragmentation of the physical memory.Type: ApplicationFiled: June 13, 2006Publication date: December 13, 2007Inventors: Udayakumar Cholleti, Sean McEnroe, Stan J. Studzinski
-
Publication number: 20070288718Abstract: According to one embodiment of the invention, a technique is provided for relocating the contents of kernel pages in a manner similar to techniques used for relocating the contents of user pages. Before the contents of a source page are moved to a target page, for each entry of a plurality of entries that correspond to the source page, it is determined whether a mapping indicated in that entry is a mapping into kernel virtual memory address space or user virtual memory address space. If the mapping is into user virtual memory address space, then the entry is marked invalid. If the mapping is into kernel virtual memory address space, then the mapping is marked suspended. Marking an entry suspended causes processes and threads that try to access the entry's mapping to wait until the entry is no longer marked suspended. Consequently, kernel pages may be distributed among all computing system boards.Type: ApplicationFiled: June 12, 2006Publication date: December 13, 2007Inventors: Udayakumar Cholleti, Sean McEnroe, Stan J. Studzinski
-
Publication number: 20070288720Abstract: According to one embodiment of the invention, a technique is provided for relocating the contents of kernel pages in a manner similar to techniques used for relocating the contents of user pages. Before the contents of a source page are moved to a target page, for each entry of a plurality of entries that correspond to the source page, it is determined whether a mapping indicated in that entry is a mapping into kernel virtual memory address space or user virtual memory address space. If the mapping is into user virtual memory address space, then the entry is marked invalid. If the mapping is into kernel virtual memory address space, then the mapping is marked suspended. Marking an entry suspended causes processes and threads that try to access the entry's mapping to wait until the entry is no longer marked suspended. Consequently, kernel pages may be distributed among all computing system boards.Type: ApplicationFiled: June 12, 2006Publication date: December 13, 2007Inventors: Udayakumar Cholleti, Sean McEnroe, Stan J. Studzinski
-
Patent number: 7206906Abstract: Provided is a method and apparatus for registering requests to access physical memory in a physical address mapping framework. Specifically, a device can register in the physical address mapping framework before accessing physical memory, thus permitting an operating system to identify the device when it is necessary to relocate pages in physical memory. The physical address mapping framework can be any structure that permits registration. For example, the structure can be a list or a tree. When relocating physical memory, all accesses registered in the physical address mapping framework are restricted. Then, the device is notified to stop accessing physical memory via information stored in the physical address mapping framework. After the relocation, the device is notified to resume accessing physical memory via information stored in the physical address mapping framework.Type: GrantFiled: March 10, 2004Date of Patent: April 17, 2007Assignee: Sun Microsystems, Inc.Inventors: Udayakumar Cholleti, Michael T. Clayton, Anthony G. Sumpter
-
Patent number: 7159094Abstract: Provided is a method and an apparatus for allocating contiguous chunks of physical address space. Specifically, the contiguous chunks are homogenized by allocating kernel pages from kernel page free lists and user pages from a user page free list. The kernel page free lists are a nonrelocatable kernel page free list and relocatable kernel page free list. The user page free list has free pages that populate the relocatable kernel page free list. Each page that populates the relocatable kernel page free list includes an identifier such that the identifier permits the addition of the page to the relocatable kernel page free list. By providing three types of page free lists, satisfied requests for free pages from the page free lists create contiguous chunks of physical address space.Type: GrantFiled: June 30, 2004Date of Patent: January 2, 2007Assignee: Sun Microsystems, Inc.Inventors: Udayakumar Cholleti, Viswanath Krishnamurthy, Stan J. Studzinski