Protocol for coordinating the distribution of shared memory
First Claim
Patent Images
1. A system for assigning blocks of memory, the system comprising:
- an area of a memory designated for coordinating the assignment of the memory to one or more threads requiring access to the memory, wherein the area includes usage information reflecting usage of the memory; and
a processor for performing a protocol for serializing access to the memory by the one or more threads based on the usage information, wherein the protocol allows a first thread to access a first designated block of the memory while another thread requests and secures access to another block of the memory.
0 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and articles of manufacture consistent with the present invention coordinate distribution of shared memory to threads of control executing in a program by using a cooperative synchronization protocol. The protocol serializes access to memory by competing threads requesting assignment of memory space, while allowing competing threads that have already been assigned memory space, to share access to the memory. A designated area of memory assigns the memory to requesting threads. The protocol is an application level entity and therefore does access the operating system to serialize the memory allocation process.
-
Citations
9 Claims
-
1. A system for assigning blocks of memory, the system comprising:
-
an area of a memory designated for coordinating the assignment of the memory to one or more threads requiring access to the memory, wherein the area includes usage information reflecting usage of the memory; and a processor for performing a protocol for serializing access to the memory by the one or more threads based on the usage information, wherein the protocol allows a first thread to access a first designated block of the memory while another thread requests and secures access to another block of the memory. - View Dependent Claims (2, 3, 4)
-
-
5. A method, comprising:
-
allocating to a first process, without accessing an operating system, a first block of a memory that has a size designated by a user; and allocating to a second process, without accessing an operating system, a second block of the memory that has a size designated by the user while the first process is accessing the first block of memory. - View Dependent Claims (6, 7, 8, 9)
-
Specification