Compressed Memory Allocation Using Service Queue and Free Buffer
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing memory systems face challenges in efficiently managing and increasing the effective capacity by compressing and storing data, particularly in systems with limited memory capacity.
Innovation Solution
A memory system with a controller that compresses data and efficiently manages compressed data storage regions, utilizing a service queue and free buffer to process allocation and return requests for compressed storage regions, along with a free list manager to manage physical storage regions and facilitate rapid allocation and return.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If data compression is implemented to increase storage capacity, then the effective capacity of the memory system is improved, but the complexity of managing compressed storage regions increases
Solution Approach 1:
The memory system segments storage management into distinct components: a service queue for tracking compressed storage regions and a free buffer for managing allocatable regions. This segmentation allows the controller to independently manage allocation and return operations, reducing the complexity of handling compressed data while maximizing effective capacity utilization.
Solution Approach 2:
The controller introduces intermediary data structures (service queue and free buffer) that mediate between the compression function and the storage allocation function. These intermediaries simplify the management process by providing structured ways to track and allocate compressed storage regions, making the system more manageable despite the added compression layer.
2Productivity
If a service queue and free buffer are introduced to manage compressed storage regions, then allocation and return processing efficiency is improved, but the device complexity increases
Solution Approach 1:
The free buffer pre-loads and maintains a list of allocatable compressed storage region frame numbers, preparing them for rapid allocation. This preliminary action eliminates the need to scan through the entire memory space during allocation requests, significantly improving processing efficiency while adding only a simple buffer structure to the controller.
Solution Approach 2:
The system creates a simplified copy of storage region information in the service queue and free buffer, separating the essential allocation metadata from the actual storage content. This copying approach allows efficient management of allocation operations without duplicating the entire storage structure, thus improving productivity with minimal added complexity.
3Speed
If compressed storage regions are tracked using frame numbers, then the speed of allocation and return operations is improved, but the amount of metadata management increases
Solution Approach 1:
The system extracts only the essential frame number information from the compressed storage regions and stores it in the service queue and free buffer. By taking out only the necessary metadata (frame numbers) rather than entire region descriptions, the system achieves fast allocation and return operations while minimizing metadata management overhead.
Solution Approach 2:
The system changes the representation of storage region information from detailed metadata to simplified frame number parameters. This parameter change enables rapid allocation and return operations through simple integer comparisons and manipulations in the service queue and free buffer, while reducing the quantity of metadata that needs to be managed.
Data Source
AI summary
Information on a free storage region may be managed by using a free storage region where compressed data is not stored among the physical storage regions storing compressed data in memory, and the movement of information on the free storage region may be managed by adding a free buffer in addition to a service queue for processing allocation and return of the physical storage region. Accordingly, it is possible to reduce the delays due to accessing a memory when allocating or returning a physical storage region, thereby improving the memory operation performance.


