Storage region management method, storage region allocation method and program
First Claim
1. A storage area management method for a data storage apparatus comprising:
- an acquiring step that acquires an allocation size of a region, which is a storage area that has been preliminarily allocated;
a computing step that computes a sum of mutually differing powers of 2 by a calculation using the allocation size and a region allocation unit size;
a partitioning step that partitions the region into primary segments for each of exponents with mutually differing powers of 2 that is computed, which primary segments are storage areas each of whose size is calculated by multiplying that power of 2 with the region allocation unit size; and
a managing step that manages the region for each primary segment.
3 Assignments
0 Petitions
Accused Products
Abstract
A storage area management method for a data storage apparatus partitions an acquired storage area into storage areas with differing power-of-2 sizes and manages each of them. Also, a storage area allocation method receives an allocation request for a storage area that includes a requested allocation size, and acquires an available storage area whose size is the smallest power-of-2 size encompassing the requested allocation size, and obtains a binary expression of the requested allocation size, and in response to the received allocation request, allocates a contiguous storage area comprised of storage areas each of whose size is a power of 2 of a value of a bit position wherein a 1 is set in the binary expression.
-
Citations
34 Claims
-
1. A storage area management method for a data storage apparatus comprising:
-
an acquiring step that acquires an allocation size of a region, which is a storage area that has been preliminarily allocated; a computing step that computes a sum of mutually differing powers of 2 by a calculation using the allocation size and a region allocation unit size; a partitioning step that partitions the region into primary segments for each of exponents with mutually differing powers of 2 that is computed, which primary segments are storage areas each of whose size is calculated by multiplying that power of 2 with the region allocation unit size; and a managing step that manages the region for each primary segment. - View Dependent Claims (2, 3, 4, 5, 6, 7, 9, 10, 13, 15, 16, 17, 18, 21, 22, 26, 27, 28, 29, 33)
-
-
8. A storage area allocation method for allocating a storage area with a requested allocation size, which is a size of a storage area that is requested to be allocated, from a region, which is a preliminary allocated storage area, comprising:
-
a receiving step that receives an allocation request for a storage area that includes a requested allocation size; an acquiring step that acquires an available storage area whose size is a smallest size of the product of power-of-2 sizes and the region allocation unit size encompassing the requested allocation size from the region; an obtaining step that obtains a binary expression whose value is the requested allocation size divided by the allocation unit size; and an allocation step that allocates, in response to the received allocation request, from an available storage area with the acquired smallest size of the product of the power-of-2 size and the region allocation unit size, a contiguous storage area comprised of storage areas each of whose size is a product of the allocation unit size and a power of 2 of a value of a bit position wherein a 1 is set in the binary expression and which contiguous storage area is conjoined by the storage areas in a sequence of magnitude of sizes of the storage areas. - View Dependent Claims (11, 12, 14, 19, 20, 23, 24, 30, 31)
-
-
25. A data configuration adapted to a storage area management method for a data storage apparatus, in which the storage area management method acquires an allocation size of a region that is a storage area that is preliminarily allocated, and a sum of mutually differing powers of 2 is computed by a calculation using the allocation size and a region allocation unit size, and for each of exponents with mutually differing powers of 2 that is computed, the region is partitioned into primary segments each of whose size is calculated by multiplying that power of 2 with the region allocation unit size, and the region is managed for each primary segment, the data configuration comprising:
-
an allocated partition table that holds an allocation position and size of a primary segment for each primary segment number that identifies a primary segment, wherein the allocated partition table enables allocation management for storage areas by means of a buddy system for each primary segment.
-
-
32. A storage area management apparatus for a data storage apparatus comprising:
-
a computing means that acquires an allocation size of a region, which is a storage area that has been preliminarily allocated and computes a sum of mutually differing powers of 2 by a calculation using the allocation size and a region allocation unit size; and a managing means that partitions the region into primary segments for each of exponents with mutually differing powers of 2 that is computed, which primary segments are storage areas each of whose size is calculated by multiplying that power of 2 with the region allocation unit size and manages the region for each primary segment.
-
-
34. A storage area allocation apparatus for allocating a storage area with a requested allocation size, which is a size of a storage area that is requested to be allocated, from a region, which is a preliminary allocated storage area, comprising:
-
an allocation request receiving means that receives an allocation request for a storage area that includes a requested allocation size; an available storage area acquiring means that acquires an available storage area whose size is a smallest size of the product of power-of-2 sizes and the region allocation unit size encompassing the requested allocation size from the region; and an allocation means that obtains a binary expression whose value is the requested allocation size divided by the allocation unit size and allocates, in response to the received allocation request, from an available storage area with the acquired smallest size of the product of the power-of-2 size and the region allocation unit size, a contiguous storage area comprised of storage areas each of whose size is a product of the allocation unit size and a power of 2 of a value of a bit position wherein a 1 is set in the binary expression and which contiguous storage area is conjoined by the storage areas in a sequence of the magnitude of sizes of the storage areas.
-
Specification