Claims
- 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 further comprising:
placing the memory block in a pool of resources for later reassignment.
- 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 the memory block is a logical memory block.
- 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 the 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 form an allocated memory block; and integrating the allocated memory block to the second partition.
- 11. The method of claim 10, wherein the first partition is the second partition.
- 12. The method of claim 10, wherein the allocating step includes:
locking the memory block; mapping the memory block in a memory mapping table for the partition; and 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 form 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 further comprising:
placing means for placing the memory block in a pool of resources for later reassignment.
- 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 the memory block is a logical memory block.
- 20. The logical partitioned data processing system of claim 15, wherein the placing means comprises:
changing means for changing an identifier associated with the memory block from that of the partition to one for the 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 to the second partition.
- 24. The logical partitioned data processing system of claim 23, wherein the first partition is 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 memory block in a memory mapping table for the partition; and unlocking means for unlocking the 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.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] The present invention is related to the following applications entitled: “Method and Apparatus for Dynamically Allocating and Deallocating Processors in a Logical Partitioned Data Processing System”, Ser. No. ______ , attorney docket no. AUS920020265US1; and “Method and Apparatus for Dynamically Managing Input/Output Slots in a Logical Partitioned Data Processing System, Ser. No. ______ , attorney docket no. AUS920020266US1, all filed even date hereof, assigned to the same assignee, and incorporated herein by reference.