Remote Defragmentation for Embedded Memory
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Embedded devices, such as smart cards, face challenges with data fragmentation leading to slow file access and memory loss due to the need for complex defragmentation algorithms that require significant non-volatile memory and time, which is not feasible given their limited resources and power usage constraints.
Innovation Solution
A remote defragmentation system where an embedded device transmits meta data and optionally data objects to a separate defragmentation device for processing, allowing defragmentation to occur outside the embedded device, thus optimizing memory performance without stressing its internal resources and minimizing write cycles.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If defragmentation algorithms are implemented on the smart card, then memory performance is improved, but the complexity of the device and the space required on non-volatile memory increase significantly
Solution Approach 1:
The defragmentation functionality is extracted from the smart card and implemented on an external host system. The smart card only needs to provide data access capabilities, while the complex defragmentation algorithms run externally, reducing the card's internal complexity and memory requirements.
Solution Approach 2:
A communication interface acts as an intermediary between the smart card and the host system. This interface enables the host to control the defragmentation process and access card data without requiring the card to have built-in defragmentation capabilities.
2Speed
If defragmentation is performed on the smart card, then file access speed is improved, but the time required for maintenance operations increases
Solution Approach 1:
Defragmentation is performed periodically on the host system when the smart card is not in active use. The host system can process multiple cards in sequence, performing maintenance operations during idle periods without interrupting card functionality.
Solution Approach 2:
The host system creates a copy of the card's memory structure and performs defragmentation on the copy, then applies the reorganization to the actual card data. This allows complex operations to be performed without repeatedly accessing the physical card media.
3Productivity
If multiple write cycles are performed on the non-volatile memory, then defragmentation is achieved, but the memory becomes irreversibly damaged after exceeding the cycle limit
Solution Approach 1:
The heavy lifting of data movement is extracted from the smart card's non-volatile memory and performed on the host system's memory. The card only performs minimal write operations to confirm the defragmentation result, dramatically reducing wear on the non-volatile memory.
Solution Approach 2:
The host system performs preliminary analysis of the card's memory structure, creates a defragmentation plan, and prepares the reorganized data structure before writing anything to the card. This ensures that write operations are minimized and only performed when necessary.
4Adaptability or versatility
If defragmentation algorithms are stored on the smart card, then on-card defragmentation is enabled, but the available space for data storage is reduced
Solution Approach 1:
The defragmentation software is extracted from the smart card and relocated to the host system. This frees up all the memory space on the card for data storage, as no space needs to be reserved for storing defragmentation algorithms or buffers.
Solution Approach 2:
The host system serves multiple functions: it acts as both the data processing unit and the defragmentation engine. This universal approach eliminates the need for dedicated defragmentation resources on the smart card itself.
Data Source
AI summary
An embedded device (1) having a memory (2) that is organized to store both data objects (DO1-DOx) and meta data (MD) which describes the locations at which the data objects are stored in the memory (2), the embedded device (1) which is connectable to a remote defragmentation device (3) is disclosed. The embedded device (1) is adapted to transmit, at the request of the defragmentation device (3), the meta data (MD) and optionally the data objects (DO1-DOx) stored in the memory (2) to the defragmentation device (3) and, in accordance with instructions and data received from the defragmentation device (3), to update in its memory (2) the meta data (MD) and to store the data objects (DO1-DOx) at locations as defined in the updated meta data (MD).


