-
公开(公告)号:US20210011855A1
公开(公告)日:2021-01-14
申请号:US16551761
申请日:2019-08-27
Applicant: VMware, Inc.
Inventor: KAMAL JEET CHARAN , Adrian Drzewiecki , Mounesh Badiger , Pushpesh Sharma , Wenguang Wang , Maxime Austruy , Richard P. Spillane
IPC: G06F12/1009 , G06F16/182 , G06F9/455
Abstract: A system and method for transferring data between a user space buffer in the address space of a user space process running on a virtual machine and a storage system are described The user space buffer is represented as a file with a file descriptor in the method, a file system proxy receives a request for I/O read or write from the user space process without copying data to be transferred. The file system proxy then sends the request to a file system server without copying data to be transferred. The file system server then requests that the storage system perform the requested I/O directly between the storage system and the user space buffer, the only transfer of data being between the storage system and the user space buffer.
-
公开(公告)号:US11334498B2
公开(公告)日:2022-05-17
申请号:US16551761
申请日:2019-08-27
Applicant: VMware, Inc.
Inventor: Kamal Jeet Charan , Adrian Drzewiecki , Mounesh Badiger , Pushpesh Sharma , Wenguang Wang , Maxime Austruy , Richard P Spillane
IPC: G06F12/1009 , G06F16/182 , G06F9/455
Abstract: A system and method for transferring data between a user space buffer in the address space of a user space process running on a virtual machine and a storage system are described. The user space buffer is represented as a file with a file descriptor. In the method, a file system proxy receives a request for I/O read or write from the user space process without copying data to be transferred. The file system proxy then sends the request to a file system server without copying data to be transferred. The file system server then requests that the storage system perform the requested I/O directly between the storage system and the user space buffer, the only transfer of data being between the storage system and the user space buffer.
-
公开(公告)号:US11249660B2
公开(公告)日:2022-02-15
申请号:US17012411
申请日:2020-09-04
Applicant: VMWARE, INC.
Inventor: Mounesh Badiger , Wenguang Wang , Adrian Drzewiecki
Abstract: Examples provide a method of communication between a client application and a filesystem server in a virtualized computing system. The client application executes in a virtual machine (VM) and the filesystem server executes in a hypervisor. The method includes: allocating, by the client application, first shared memory in a guest virtual address space of the client application; creating a guest application shared memory channel between the client application and the filesystem server upon request by the client application to a driver in the VM, the driver in communication with the filesystem server, the guest application shared memory channel using the first shared memory; sending authentication information associated with the client application to the filesystem server to create cached authentication information at the filesystem server; and submitting a command in the guest application shared memory channel from the client application to the filesystem server, the command including the authentication information.
-
公开(公告)号:US20220027264A1
公开(公告)日:2022-01-27
申请号:US17016366
申请日:2020-09-09
Applicant: VMWARE, INC.
Inventor: ABHAY KUMAR JAIN , Richard P. Spillane , Wenguang Wang , Nitin Rastogi , Mounesh Badiger
IPC: G06F12/02 , G06F12/0871 , G06F12/084 , G06F9/50
Abstract: An example method of memory management in a computing system having a plurality of processors includes: receiving a first memory allocation request at a memory manager from a process executing on a processor of the plurality of processors in the computing system; allocating a local memory pool for the processor from a global memory pool for the plurality of processors in response to the first memory allocation request; and allocating memory from the local memory pool for the processor in response to the first memory allocation request without locking the local memory pool.
-
公开(公告)号:US20160306578A1
公开(公告)日:2016-10-20
申请号:US14686527
申请日:2015-04-14
Applicant: VMware, Inc.
Inventor: Adrian Drzewiecki , Christoph Klee , Mounesh Badiger
IPC: G06F3/06
CPC classification number: G06F3/0622 , G06F3/0637 , G06F3/0659 , G06F3/0673 , G06F12/14 , G06F12/1416 , G06F13/1663
Abstract: Techniques for enabling secure cross-process memory sharing are provided. In one set of embodiments, a first user process executing on a computer system can create a memory handle representing a memory space of the first user process. The first user process can further define one or more access restrictions with respect to the memory handle. The first user process can then transmit the memory handle to a second user process executing on the computer system, the memory handle enabling the second user process to access at least a portion of the first process' memory space, subject to the one or more access restrictions.
Abstract translation: 提供了用于实现安全的跨进程内存共享的技术。 在一组实施例中,在计算机系统上执行的第一用户进程可以创建表示第一用户进程的存储器空间的存储器句柄。 第一用户进程可以进一步定义关于存储器句柄的一个或多个访问限制。 然后,第一用户进程可以将存储器句柄传送到在计算机系统上执行的第二用户进程,存储器句柄使得第二用户进程能够访问第一进程的存储器空间的至少一部分,受到一个或多个访问 限制
-
公开(公告)号:US11698737B2
公开(公告)日:2023-07-11
申请号:US17647291
申请日:2022-01-06
Applicant: VMware, Inc.
Inventor: Mounesh Badiger , Wenguang Wang , Adrian Drzewiecki
CPC classification number: G06F3/0631 , G06F3/0604 , G06F3/0664 , G06F3/0673 , G06F9/45558 , G06F12/0646 , G06F12/10 , G06F16/172 , G06F21/44 , G06F2009/45583 , G06F2212/152 , G06F2212/163 , G06F2212/657
Abstract: Examples provide a method of communication between a client application and a filesystem server in a virtualized computing system. The client application executes in a virtual machine (VM) and the filesystem server executes in a hypervisor. The method includes: allocating, by the client application, first shared memory in a guest virtual address space of the client application; creating a guest application shared memory channel between the client application and the filesystem server upon request by the client application to a driver in the VM, the driver in communication with the filesystem server, the guest application shared memory channel using the first shared memory; sending authentication information associated with the client application to the filesystem server to create cached authentication information at the filesystem server; and submitting a command in the guest application shared memory channel from the client application to the filesystem server, the command including the authentication information.
-
公开(公告)号:US11494297B2
公开(公告)日:2022-11-08
申请号:US17016366
申请日:2020-09-09
Applicant: VMWARE, INC.
Inventor: Abhay Kumar Jain , Richard P. Spillane , Wenguang Wang , Nitin Rastogi , Mounesh Badiger
IPC: G06F12/00 , G06F13/00 , G06F13/28 , G06F12/02 , G06F12/0871 , G06F12/084 , G06F9/50 , G06F9/455
Abstract: An example method of memory management in a computing system having a plurality of processors includes: receiving a first memory allocation request at a memory manager from a process executing on a processor of the plurality of processors in the computing system; allocating a local memory pool for the processor from a global memory pool for the plurality of processors in response to the first memory allocation request; and allocating memory from the local memory pool for the processor in response to the first memory allocation request without locking the local memory pool.
-
公开(公告)号:US09542112B2
公开(公告)日:2017-01-10
申请号:US14686527
申请日:2015-04-14
Applicant: VMware, Inc.
Inventor: Adrian Drzewiecki , Christoph Klee , Mounesh Badiger
CPC classification number: G06F3/0622 , G06F3/0637 , G06F3/0659 , G06F3/0673 , G06F12/14 , G06F12/1416 , G06F13/1663
Abstract: Techniques for enabling secure cross-process memory sharing are provided. In one set of embodiments, a first user process executing on a computer system can create a memory handle representing a memory space of the first user process. The first user process can further define one or more access restrictions with respect to the memory handle. The first user process can then transmit the memory handle to a second user process executing on the computer system, the memory handle enabling the second user process to access at least a portion of the first process' memory space, subject to the one or more access restrictions.
Abstract translation: 提供了用于实现安全的跨进程内存共享的技术。 在一组实施例中,在计算机系统上执行的第一用户进程可以创建表示第一用户进程的存储器空间的存储器句柄。 第一用户进程可以进一步定义关于存储器句柄的一个或多个访问限制。 然后,第一用户进程可以将存储器句柄传送到在计算机系统上执行的第二用户进程,存储器句柄使得第二用户进程能够访问第一进程的存储器空间的至少一部分,受到一个或多个访问 限制
-
公开(公告)号:US11513832B2
公开(公告)日:2022-11-29
申请号:US17013727
申请日:2020-09-07
Applicant: VMWARE, INC.
Inventor: Mounesh Badiger , Wenguang Wang , Adrian Drzewiecki , Maxime Austruy , Satish Pudi
IPC: G06F9/455 , G06F12/1036 , G06F12/02
Abstract: Examples provide a method of communication between a client driver and a filesystem server. The client driver executes in a virtual machine (VM) and the filesystem server executes in a hypervisor. The method includes: allocating, by the client driver, shared memory in an address space of the VM for the communication; sending identification information for the shared memory from the client driver to the filesystem server through an inter-process communication channel between the client driver and the filesystem server; identifying, by the filesystem server in cooperation with a kernel of the hypervisor, the shared memory within an address space of the hypervisor, based on the identification information, to create a shared memory channel; sending commands from the client driver to the filesystem server through the shared memory channel; and receiving completion messages for the commands from the filesystem server to the client driver through the shared memory channel.
-
公开(公告)号:US11086779B2
公开(公告)日:2021-08-10
申请号:US16679570
申请日:2019-11-11
Applicant: VMware, Inc.
Inventor: Wenguang Wang , Mounesh Badiger , Abhay Kumar Jain , Junlong Gao , Zhaohui Guo , Richard P. Spillane
IPC: G06F12/08 , G06F12/0842 , G06F12/0844 , G06F12/14 , G06F12/1018 , G06F12/0871
Abstract: Disclosed are a method and system for managing multi-threaded concurrent access to a cache data structure. The cache data structure includes a hash table and three queues. The hash table includes a list of elements for each hash bucket with each hash bucket containing a mutex object and elements in each of the queues containing lock objects. Multiple threads can each lock a different hash bucket to have access to the list, and multiple threads can each lock a different element in the queues. The locks permit highly concurrent access to the cache data structure without conflict. Also, atomic operations are used to obtain pointers to elements in the queues so that a thread can safely advance each pointer. Race conditions that are encountered with locking an element in the queues or entering an element into the hash table are detected, and the operation encountering the race condition is retried.
-
-
-
-
-
-
-
-
-