IP Library Granted Patent US 6,941,436
Granted Patent B2
US 6,941,436 · App. 10/142,574 · Granted Sep 6, 2005

Method and apparatus for managing memory blocks in a logical partitioned data processing system

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 6,941,436
App. No.
10/142,574
Granted
Sep 6, 2005
Kind
B2
Abstract

A method, apparatus, and computer instructions for managing memory blocks. In response to a request to deallocate a memory block from a partition, all processes are prevented from using the memory block. The memory block is isolated from the partition in response to preventing use of the memory block. The memory block is deallocated to form a free memory block.

Claims (57)

1. A method in a logical partitioned data processing system for managing memory blocks, the method comprising:

responsive to a request to deallocate a memory block from a partition, preventing all processes from using the memory block;

responsive to preventing use of the memory block, isolating the memory block from the partition; and

deallocating the memory block to form a free memory block.

2. The method of claim 1 , wherein the memory block, prior to being deallocated, is exclusively accessed by the partition and not shared with other partitions.

3. The method of claim 1 , wherein the isolating step comprises:

invalidating all pointers to the address range of the memory block.

4. The method of claim 3 , wherein the pointers are a set of entries used to translate a virtual address into a physical address.

5. The method of claim 4 , wherein the entries includes entries for at least one of a page table and a translation control entry table.

6. The method of claim 1 , wherein an operating system instance running in the partition calls a management routine, the management routine being external to the partition, to perform the memory block isolation.

7. The method of claim 2 , wherein the placing step comprises:

changing an identifier associated with the memory block from that of the partition to one for a pool of resources.

8. The method of claim 7 , wherein the placing step further comprises:

clearing the memory block to remove all data for the partition.

9. The method of claim 7 , wherein the placing step further comprises:

removing any mapping of the memory block for the partition.

10. The method of claim 1 , wherein the partition is a first partition and further comprising:

responsive to a request to allocate the free memory block to a second partition, allocating the free memory block to the second partition to from an allocated memory block; and

integrating the allocated memory block with other memory blocks allocated to the second partition.

11. The method of claim 10 , wherein the allocating step comprises assigning the free memory block to the second partition in an isolated state, and the integrating step comprises unisolating the allocated memory block in the second partition.

12. The method of claim 10 , wherein the allocating step includes:

locking the memory block;

after the locking of the memory block, mapping the memory block in a memory mapping table for the partition; and then

unlocking the memory block.

13. A logical partitioned data processing system for managing memory blocks, the logical partitioned data processing system comprising:

a bus system;

a communications unit connected to the bus system;

a memory connected to the bus system, wherein the memory includes a set of instructions; and

a processing unit connected to the bus system, wherein the processing unit executes the set of instructions to prevent all processes from using the memory block in response to a request to deallocate a memory block from a partition; isolate the memory block from the partition in response to preventing use of the memory block; and deallocate the memory block to from a free memory block.

14. A logical partitioned data processing system for managing memory blocks, the logical partitioned data processing system comprising:

preventing means, responsive to a request to deallocate a memory block from a partition, for preventing all processes from using the memory block;

isolating means, responsive to preventing use of the memory block, for isolating the memory block from the partition; and

deallocating means for deallocating the memory block to form a free memory block.

15. The logical partitioned data processing system of claim 14 , wherein the memory block, prior to being deallocated, is exclusively accessed by the partition and not shared with other partitions.

16. The logical partitioned data processing system of claim 14 , wherein the isolating means comprises:

invalidating means for invalidating all pointers to the address range of the memory block.

17. The logical partitioned data processing system of claim 16 , wherein the pointers are a set of entries used to translate a virtual address into a physical address.

18. The logical partitioned data processing system of claim 17 , wherein the entries includes entries for at least one of a page table and a translation control entry table.

19. The logical partitioned data processing system of claim 14 , wherein an operating system instance running in the partition calls a management routine, the management routine being external to the partition, to perform the memory block isolation.

20. The logical partitioned data processing system of claim 15 , wherein a placing means comprises:

changing means for changing an identifier associated with the memory block from that of the partition to one for a pool of resources.

21. The logical partitioned data processing system of claim 20 , wherein the placing means further comprises:

clearing means for clearing the memory block to remove all data for the partition.

22. The logical partitioned data processing system of claim 20 , wherein the placing means further comprises:

removing means for removing any mapping of the memory block for the partition.

23. The logical partitioned data processing system of claim 14 , wherein the partition is a first partition and further comprising:

allocating means, responsive to a request to allocate the free memory block to a second partition, for allocating the free memory block to the second partition to form an allocated memory block; and

integrating means for integrating the allocated memory block with other memory blocks allocated to the second partition.

24. The logical partitioned data processing system of claim 23 , wherein the allocating means comprises assigning means for assigning the free memory block to the second partition in an isolated state, and the integrating means comprises unisolating means for unisolating the allocated memory block in the second partition.

25. The logical partitioned data processing system of claim 23 , wherein the allocating means includes:

locking means for locking the memory block;

mapping means for mapping the locked memory block in a memory mapping table for the partition; and

unlocking means for unlocking the mapped memory block.

26. A computer program product in a computer readable medium for managing memory blocks, the computer program product comprising:

first instructions, responsive to a request to deallocate a memory block from a partition, for preventing all processes from using the memory block;

second instructions, responsive to preventing use of the memory block, for isolating the memory block from the partition; and

third instructions for deallocating the memory block to form a free memory block, wherein the partition remains active and operational during the memory block deallocation from the partition.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2020
From: DAEDALUS GROUP, LLC
To: DAEDALUS BLUE LLC
Reel/Frame 051737/0191 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 27, 2020
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: DAEDALUS GROUP, LLC
Reel/Frame 051710/0445 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 14, 2019
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: DAEDALUS GROUP LLC
Reel/Frame 051032/0784 →