KR101510054B1 - 임베디드 시스템에서의 메모리 관리방법 - Google Patents

임베디드 시스템에서의 메모리 관리방법 Download PDF

Info

Publication number
KR101510054B1
KR101510054B1 KR20140055517A KR20140055517A KR101510054B1 KR 101510054 B1 KR101510054 B1 KR 101510054B1 KR 20140055517 A KR20140055517 A KR 20140055517A KR 20140055517 A KR20140055517 A KR 20140055517A KR 101510054 B1 KR101510054 B1 KR 101510054B1
Authority
KR
South Korea
Prior art keywords
memory
empty space
space list
allocated
list
Prior art date
Application number
KR20140055517A
Other languages
English (en)
Inventor
성우석
Original Assignee
현대자동차주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 현대자동차주식회사 filed Critical 현대자동차주식회사
Priority to KR20140055517A priority Critical patent/KR101510054B1/ko
Priority to US14/509,385 priority patent/US9317425B2/en
Application granted granted Critical
Publication of KR101510054B1 publication Critical patent/KR101510054B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0292User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1041Resource optimization
    • G06F2212/1044Space efficiency improvement

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Memory System (AREA)

Abstract

최초 이터레이션시에는 최초 빈공간부터 순차적으로 메모리를 할당하고 해제하며 메모리가 할당된 영역을 빈공간리스트로 인식하고, 빈공간리스트가 인식된 경우에는 빈공간리스트 영역 내에서 메모리를 할당하고 해제하며, 빈공간리스트가 부족하여 빈공간리스트가 확장되도록 재인식된 경우에는 할당된 메모리를 해제한 후 빈공간리스트를 초기화하고 다시 최초 빈공간부터 순차적으로 메모리를 할당하는 임베디드 시스템에서의 메모리 관리방법이 소개된다.

Description

임베디드 시스템에서의 메모리 관리방법 {METHOD FOR MANAGING MEMORY OF EMBEDED SYSTEM}
본 발명은 임베디드 시스템의 동적 메모리 할당에 있어서, 단편화되는 메모리가 발생되지 않도록 할 수 있는 임베디드 시스템에서의 메모리 관리방법에 관한 것이다.
메모리가 동적으로 할당된 후 OS는 어떤 부분의 메모리가 사용되고 있는지 관리할 필요가 있다. 이를 위하여 두 가지 방법이 있는데, Bitmap과 List이다.
먼저, Bitmap을 이용한 메모리 관리는 메모리를 여러 개의 할당 단위(allocation unit)로 나누어 관리한다. 예를 들어, 각 할당 단위마다 1비트씩이 대응되고, 이 비트가 0이면 사용가능, 1이면 사용중으로 본다.
여기서 중요한 문제는 할당 단위의 크기를 얼마로 정할 것인가인데, 4바이트를 할당 단위로 정한다면, 4바이트마다 1비트씩 대응이 되기 때문에 4바이트+1비트 총 33비트씩이 필요하다. 즉, 32n 비트에 n크기의 Bitmap이 필요하게 되는 것이다.
결론적으로, 메모리에서 Bitmap은 많은 부분을 차지함을 알 수 있다.
Bitmap의 단점은 프로그램이 만약 n개의 할당 단위를 요청했을 때 메모리 관리자는 Bitmap에서 연속적인 n개의 0비트를 갖는 부분을 찾아야 한다는 것인데, 이로 인해 시간 지연이 발생된다.
List를 이용한 방법의 경우에는 List의 엔트리는 빈공간인지 아닌지를 구별할 수 있는 정보, 시작하는 주소, 길이, 다음 엔트리 포인터로 구성된다. 메모리가 사용중이라면 P, 비어있다면 홀(hole)을 나타내는 H로 표시한다.
0은 메모리의 시작주소, 5는 사용중인 메모리의 크기, 그리고 다음 엔트리를 가리키도록 되어있다. 다음 엔트리는 H인걸로 보아 빈 공간이고 주소 5부터 시작하여 크기 3만큼이 비어있는 공간이다. 그리고 연속된 H이 생성되는 경우는 그 연속된 빈공간을 합쳐서 관리하는 것이 전체 리스트의 개수를 줄일 수 있고, 큰 공간이 생기기 때문에 큰 공간을 필요로 하는 경우에도 효과적이다. 이렇게 메모리가 관리되어 정렬되어 있을 때, 메모리 공간을 할당하는 다양한 알고리즘이 적용된다.
하지만, 리스트를 이용한 동적 메모리 관리의 경우에도 메모리의 단편화가 일어나고, 작업의 처리를 위해 확보되어야 할 최대메모리 요구량이 함께 증대되어 리소스를 제대로 활용하지 못하는 문제가 있었다.
상기의 배경기술로서 설명된 사항들은 본 발명의 배경에 대한 이해 증진을 위한 것일 뿐, 이 기술분야에서 통상의 지식을 가진자에게 이미 알려진 종래기술에 해당함을 인정하는 것으로 받아들여져서는 안 될 것이다.
KR 10-2007-0045612 A
본 발명은 임베디드 시스템의 동적 메모리 할당에 있어서, 단편화되는 메모리가 발생되지 않도록 할 수 있는 임베디드 시스템에서의 메모리 관리방법을 제공하는데 그 목적이 있다.
상기의 목적을 달성하기 위한 본 발명에 따른 임베디드 시스템에서의 메모리 관리방법은, 메모리를 순차적으로 할당하고 순차적으로 해제하며, 최초메모리부터 최종메모리까지 위치되었던 영역을 빈공간리스트로 인식하는 제1이터레이션단계; 빈공간리스트 영역 내에 메모리를 순차적으로 할당하되 빈공간리스트의 종점부터 할당을 시작하며, 할당시 빈공간리스트가 부족할 경우에는 빈공간리스트 영역 외측에 메모리를 할당하고 최종메모리까지 위치되었던 영역으로 빈공간리스트를 확장하여 재인식하며, 할당시 빈공간리스트가 부족하지 않은 경우에는 빈공간리스트를 유지하고, 할당된 메모리는 순차적으로 해제하는 제2이터레이션단계; 및 빈공간리스트가 재인식된 경우에는 빈공간리스트를 초기화하는 초기화단계;를 포함한다.
제1이터레이션단계에서는 메모리의 할당시 가장 최초로 위치하는 빈공간부터 메모리의 할당을 시작하고, 그 후 순차적으로 메모리를 할당할 수 있다.
제2이터레이션단계에서는 메모리의 할당시 빈공간리스트의 종점부터 시점을 향해 역방향으로 순차적으로 메모리를 할당할 수 있다.
제2이터레이션단계에서는 빈공간리스트가 부족할 경우에는 빈공간리스트의 종점 외측의 영역에 메모리를 할당할 수 있다.
초기화단계를 통해 빈공간리스트가 초기화된 경우에는 다시 제1이터레이션단계부터 이터레이션을 수행할 수 있다.
제2이터레이션단계에서 빈공간리스트가 유지된 경우에는 다음 이터레이션시 제2이터레이션단계를 반복할 수 있다.
본 발명의 임베디드 시스템에서의 메모리 관리방법은, 최초 이터레이션시에는 최초 빈공간부터 순차적으로 메모리를 할당하고 해제하며 메모리가 할당된 영역을 빈공간리스트로 인식하고, 빈공간리스트가 인식된 경우에는 빈공간리스트 영역 내에서 메모리를 할당하고 해제하며, 빈공간리스트가 부족하여 빈공간리스트가 확장되도록 재인식된 경우에는 할당된 메모리를 해제한 후 빈공간리스트를 초기화하고 다시 최초 빈공간부터 순차적으로 메모리를 할당할 수 있다.
상술한 바와 같은 구조로 이루어진 임베디드 시스템에서의 메모리 관리방법에 따르면, 임베디드 시스템의 동적 메모리 할당에 있어서, 단편화되는 메모리가 발생되지 않도록 할 수 있다.
또한, 빈공간 리스트를 선택적으로 초기화하도록 함으로써 정해진 시스템의 데이터를 관리함에 있어 속도를 최대한 유지하며 자원을 효과적으로 활용할 수 있게 된다.
도 1은 본 발명의 실시예에 따른 임베디드 시스템에서의 메모리 관리방법의 순서도.
도 2 내지 6은 본 발명의 실시예에 따른 임베디드 시스템에서의 메모리 관리방법을 설명하는 도면.
이하에서는 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대하여 살펴본다.
도 1은 본 발명의 실시예에 따른 임베디드 시스템에서의 메모리 관리방법의 순서도이고, 도 2 내지 6은 본 발명의 실시예에 따른 임베디드 시스템에서의 메모리 관리방법을 설명하는 도면이다.
도 1은 본 발명의 실시예에 따른 임베디드 시스템에서의 메모리 관리방법의 순서도로서, 본 발명에 따른 임베디드 시스템에서의 메모리 관리방법은, 메모리를 순차적으로 할당하고 순차적으로 해제하며, 최초메모리부터 최종메모리까지 위치되었던 영역을 빈공간리스트로 인식하는 제1이터레이션단계(S100); 빈공간리스트 영역 내에 메모리를 순차적으로 할당하되 빈공간리스트의 종점부터 할당을 시작하며, 할당시 빈공간리스트가 부족할 경우에는 빈공간리스트 영역 외측에 메모리를 할당하고 최종메모리까지 위치되었던 영역으로 빈공간리스트를 확장하여 재인식하며, 할당시 빈공간리스트가 부족하지 않은 경우에는 빈공간리스트를 유지하고, 할당된 메모리는 순차적으로 해제하는 제2이터레이션단계(S200); 및 빈공간리스트가 재인식된 경우에는 빈공간리스트를 초기화하는 초기화단계(S300);를 포함한다.
본 발명의 경우 동적 메모리 할당에 관한 것으로서, 일반적인 경우 도 2와 같이 먼저 메모리를 순차적으로 할당하고 순차적으로 해제하며, 최초메모리부터 최종메모리까지 위치되었던 영역을 빈공간리스트로 인식하는 제1이터레이션단계(S100)를 수행한다.
제1이터레이션단계(S100)에서는 메모리의 할당시 가장 최초로 위치하는 빈공간부터 메모리의 할당을 시작하고(S110), 그 후 순차적으로 메모리를 할당할 수 있다(S120). 그리고 메모리의 해제시에는 역순으로 순차적으로 메모리를 해제하도록 한다(S140). 이러한 과정을 거치며 최종 메모리의 위치를 기억하여 이를 빈공간리스트로 인식토록 한다(S130).
즉, 최초메모리부터 최종메모리까지 위치되었던 영역을 빈공간리스트로 인식한다(S130).
그 후 다음 이터레이션의 경우 도 3과 같이 수행하도록 한다. 즉, 빈공간리스트 영역 내에 메모리를 순차적으로 할당하되 빈공간리스트의 종점부터 할당을 시작하는 것이다(S210). 이는 운용방법에 따른 차이인데, 빈공간리스트의 종점을 활용하여 바로 이를 메모리 할당의 시작지점으로 할 경우 코딩이 좀 더 용이하고 할당이 빨라진다는 장점이 있다.
도 3과 같이 다음 이터레이션의 경우에도 동일한 크기의 메모리가 할당된다면, 이 경우에는 문제없이 평상시와 같이 빈공간리스트에 메모리가 할당되고 또 순차적으로 해제되는 과정을 반복하게 된다(S220,S250).
그러나 만약 도 4와 같이 순차적으로 메모리가 할당되다가 마지막 메모리인 "메모리3"의 크기가 커서 잔여 공간에 할당되지 못할 경우(S230)에는 즉, 할당시 빈공간리스트가 부족할 경우에는 빈공간리스트 영역 외측에 메모리를 할당하고 최종메모리까지 위치되었던 영역으로 빈공간리스트를 확장하여 재인식한다(S260,S270). 따라서, 빈공간리스트의 첫 부분은 단편화가 발생되고, 최종적인 빈공간리스트는 좀 더 확장되어 불필요하게 과다한 최대메모리요구가 발생되는 것이다. 즉, 제2이터레이션단계에서는 빈공간리스트가 부족할 경우에는 빈공간리스트의 종점 외측의 영역에 메모리를 할당할 수 있다(S260).
따라서, 본 발명의 경우에는 제2이터레이션단계에서 할당시 빈공간리스트가 부족하지 않은 경우에는 빈공간리스트를 유지하고, 할당된 메모리는 순차적으로 해제하며, 빈공간리스트가 재인식된 경우에는 빈공간리스트를 초기화하는 초기화단계(S300)를 수행하는 것이다.
여기서, 제2이터레이션단계(S200)에서는 메모리의 할당시 빈공간리스트의 종점부터 시점을 향해 역방향으로 순차적으로 메모리를 할당할 수 있다(S220). 따라서, 빈공간리스트가 확장된 경우에는 이터레이션의 반복시 동일하게 빈공간리스트의 시점에서 단편화가 발생된 채 유지되는 것이고, 이에 따라 본 발명의 경우 빈공간리스트의 확장에 따른 재인식의 경우 다음 이터레이션을 수행하기 전에 빈공간리스트에 관한 정보를 초기화하도록 하는 것이다.
이와 같이 빈공간리스트가 초기화된 경우에는 도 6과 같이 빈공간리스트가 지정되지 않은 최초의 이터레이션으로 취급하여 메모리 할당을 수행하고, 그에 따라 현대에 합당하는 최적화된 빈공간리스트를 재작성할 수 있도록 하는 것이다.
즉, 초기화단계(S300)를 통해 빈공간리스트가 초기화된 경우에는 다시 제1이터레이션단계부터 이터레이션을 수행할 수 있다. 그리고, 제2이터레이션단계에서 빈공간리스트가 유지된 경우에는 다음 이터레이션시 제2이터레이션단계를 반복할 수 있는 것이다.
본 발명의 임베디드 시스템에서의 메모리 관리방법은, 최초 이터레이션시에는 최초 빈공간부터 순차적으로 메모리를 할당하고 해제하며 메모리가 할당된 영역을 빈공간리스트로 인식하고, 빈공간리스트가 인식된 경우에는 빈공간리스트 영역 내에서 메모리를 할당하고 해제하며, 빈공간리스트가 부족하여 빈공간리스트가 확장되도록 재인식된 경우에는 할당된 메모리를 해제한 후 빈공간리스트를 초기화하고 다시 최초 빈공간부터 순차적으로 메모리를 할당할 수 있다.
따라서, 평상시에는 빈공간리스트의 초기화작업을 진행하지 않아 빠르게 메모리의 할당이 가능하며, 만약 메모리 양이 증대되더라도 바로 다음 이터레이션부터 빈공간리스트를 리셋하고 다시 작성하여 대응하게 되는바, 메모리의 단편화와 낭비가 줄어들게 되는 것이다.
이러한 시스템은 특히 정해진 데이터량이 반복적으로 할당 및 해제되는 임베디드 시스템에서 매우 유용하며, 실시예로는 배터리 관리 시스템을 들 수 있다. 차량 배터리의 경우 온도, 전류, 전압 등의 정보를 매 주기마다 입력하여 저장하고 이를 통해 배터리 상태를 추정하기 때문에 정해진 주기마다 정해진 양의 메모리가 할당과 해제를 반복하게 된다. 그리고, 이러한 데이터의 종류나 크기가 변동되더라도 바로 적응하여 메모리를 최적으로 운용하는바, 제어로직의 변경 등에 유효하게 대처할 수 있게 되는 것이다.
본 발명은 특정한 실시예에 관련하여 도시하고 설명하였지만, 이하의 특허청구범위에 의해 제공되는 본 발명의 기술적 사상을 벗어나지 않는 한도 내에서, 본 발명이 다양하게 개량 및 변화될 수 있다는 것은 당 업계에서 통상의 지식을 가진 자에게 있어서 자명할 것이다.
S100 : 제1이터레이션단계 S200 : 제2이터레이션단계
S300 : 초기화단계

Claims (7)

  1. 메모리를 순차적으로 할당하고 순차적으로 해제하며, 최초메모리부터 최종메모리까지 위치되었던 영역을 빈공간리스트로 인식하는 제1이터레이션단계;
    빈공간리스트 영역 내에 메모리를 순차적으로 할당하되 빈공간리스트의 종점부터 할당을 시작하며, 할당시 빈공간리스트가 부족할 경우에는 빈공간리스트 영역 외측에 메모리를 할당하고 최종메모리까지 위치되었던 영역으로 빈공간리스트를 확장하여 재인식하며, 할당시 빈공간리스트가 부족하지 않은 경우에는 빈공간리스트를 유지하고, 할당된 메모리는 순차적으로 해제하는 제2이터레이션단계; 및
    빈공간리스트가 재인식된 경우에는 빈공간리스트를 초기화하는 초기화단계;를 포함하는 임베디드 시스템에서의 메모리 관리방법.
  2. 청구항 1에 있어서,
    제1이터레이션단계에서는 메모리의 할당시 가장 최초로 위치하는 빈공간부터 메모리의 할당을 시작하고, 그 후 순차적으로 메모리를 할당하는 것을 특징으로 하는 임베디드 시스템에서의 메모리 관리방법.
  3. 청구항 1에 있어서,
    제2이터레이션단계에서는 메모리의 할당시 빈공간리스트의 종점부터 시점을 향해 역방향으로 순차적으로 메모리를 할당하는 것을 특징으로 하는 임베디드 시스템에서의 메모리 관리방법.
  4. 청구항 3에 있어서,
    제2이터레이션단계에서는 빈공간리스트가 부족할 경우에는 빈공간리스트의 종점 외측의 영역에 메모리를 할당하는 것을 특징으로 하는 임베디드 시스템에서의 메모리 관리방법.
  5. 청구항 1에 있어서,
    초기화단계를 통해 빈공간리스트가 초기화된 경우에는 다시 제1이터레이션단계부터 이터레이션을 수행하는 것을 특징으로 하는 임베디드 시스템에서의 메모리 관리방법.
  6. 청구항 1에 있어서,
    제2이터레이션단계에서 빈공간리스트가 유지된 경우에는 다음 이터레이션시 제2이터레이션단계를 반복하는 것을 특징으로 하는 임베디드 시스템에서의 메모리 관리방법.
  7. 최초 이터레이션시에는 최초 빈공간부터 순차적으로 메모리를 할당하고 해제하며 메모리가 할당된 영역을 빈공간리스트로 인식하고, 빈공간리스트가 인식된 경우에는 빈공간리스트 영역 내에서 메모리를 할당하고 해제하며, 빈공간리스트가 부족하여 빈공간리스트가 확장되도록 재인식된 경우에는 할당된 메모리를 해제한 후 빈공간리스트를 초기화하고 다시 최초 빈공간부터 순차적으로 메모리를 할당하는 것을 특징으로 하는 임베디드 시스템에서의 메모리 관리방법.
KR20140055517A 2014-05-09 2014-05-09 임베디드 시스템에서의 메모리 관리방법 KR101510054B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR20140055517A KR101510054B1 (ko) 2014-05-09 2014-05-09 임베디드 시스템에서의 메모리 관리방법
US14/509,385 US9317425B2 (en) 2014-05-09 2014-10-08 Memory management method in embedded system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20140055517A KR101510054B1 (ko) 2014-05-09 2014-05-09 임베디드 시스템에서의 메모리 관리방법

Publications (1)

Publication Number Publication Date
KR101510054B1 true KR101510054B1 (ko) 2015-04-08

Family

ID=53033874

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20140055517A KR101510054B1 (ko) 2014-05-09 2014-05-09 임베디드 시스템에서의 메모리 관리방법

Country Status (2)

Country Link
US (1) US9317425B2 (ko)
KR (1) KR101510054B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070045612A (ko) * 2005-10-27 2007-05-02 삼성전자주식회사 임베디드 시스템에서 메모리 할당 방법 및 시스템
KR20110121362A (ko) * 2010-04-30 2011-11-07 삼성전자주식회사 메모리 풀에서 메모리 단편화를 방지하는 데이터 관리 방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2899353B1 (fr) 2006-03-31 2008-06-27 Infovista Sa Sa Systeme de gestion memoire pour la reduction de la fragmentation memoire

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070045612A (ko) * 2005-10-27 2007-05-02 삼성전자주식회사 임베디드 시스템에서 메모리 할당 방법 및 시스템
KR20110121362A (ko) * 2010-04-30 2011-11-07 삼성전자주식회사 메모리 풀에서 메모리 단편화를 방지하는 데이터 관리 방법

Also Published As

Publication number Publication date
US9317425B2 (en) 2016-04-19
US20150324286A1 (en) 2015-11-12

Similar Documents

Publication Publication Date Title
CN110058794B (zh) 用于动态执行垃圾回收数据储存装置与操作方法
CN108038002B (zh) 一种嵌入式软件内存管理方法
CN108132842B (zh) 一种嵌入式软件内存管理系统
CN106874031B (zh) 一种终端设备系统程序的启动方法及装置
US8180991B2 (en) Adaptive memory allocation
JP2017102908A (ja) ソリッドステートドライブ及びその動作方法
CN101320351A (zh) 内存的分配、清理和释放方法及内存管理的装置
CN107783812B (zh) 虚拟机内存管理方法及装置
US11182105B2 (en) Storage devices, storage systems including storage devices, and methods of accessing storage devices
CN110780823B (zh) 小对象内存管理方法、装置、电子设备和计算机可读介质
US20060149915A1 (en) Memory management technique
US10489204B2 (en) Flexible in-order and out-of-order resource allocation
US7721065B2 (en) Reducing memory fragmentation by learning memory allocation patterns
CN105138481A (zh) 存储数据的处理方法、装置和系统
KR20220082917A (ko) 성능 향상을 위한 사용자 인터페이스 기반 페이지 마이그레이션
US10162636B2 (en) Control apparatus, integrated circuit and management method for stack
US8274521B2 (en) System available cache color map
KR101510054B1 (ko) 임베디드 시스템에서의 메모리 관리방법
US20060236065A1 (en) Method and system for variable dynamic memory management
CN103019858A (zh) 媒体访问控制老化方法及网络处理器
EP3188026A1 (en) Memory resource management method and apparatus
CN104750425A (zh) 一种存储系统及其非易失性存储器的控制方法
JP7217341B2 (ja) プロセッサおよびレジスタの継承方法
CN113966532A (zh) 一种内容可寻址存储装置、方法及相关设备
CN108376051B (zh) 数据存储装置

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
FPAY Annual fee payment

Payment date: 20180329

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190327

Year of fee payment: 5