KR20060033606A - 힙 메모리 관리장치 및 그 방법 - Google Patents
힙 메모리 관리장치 및 그 방법 Download PDFInfo
- Publication number
- KR20060033606A KR20060033606A KR1020040082791A KR20040082791A KR20060033606A KR 20060033606 A KR20060033606 A KR 20060033606A KR 1020040082791 A KR1020040082791 A KR 1020040082791A KR 20040082791 A KR20040082791 A KR 20040082791A KR 20060033606 A KR20060033606 A KR 20060033606A
- Authority
- KR
- South Korea
- Prior art keywords
- memory
- heap memory
- heap
- allocated
- area
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Memory System (AREA)
Abstract
본 발명은 메모리 관리기법에 관한 것으로, 특히 힙(heap) 메모리 할당 및 해제를 관리하는 힙 메모리 관리장치 및 그 방법에 관한 것이다. 이러한 힙 메모리 관리방법은 어플리케이션으로부터 힙 메모리 할당요구가 있는가를 검사하는 단계와; 할당 요구받은 메모리 사이즈를 미리 저장된 기준치와 비교하는 단계와; 상기 비교결과에 따라 상기 힙 메모리의 전위 혹은 후위로부터 자유영역을 순차 할당하는 단계와; 할당된 자유영역의 시작 어드레스 정보를 메모리 할당 테이블에 등록하는 단계;를 포함함으로서, 작은 사이즈의 조각(fragmentation) 블록들의 수를 최소화하여 결과적으로는 힙 메모리의 할당 실패율을 줄일 수 있는 효과가 있게 되는 것이다.
힙 메모리, 메모리 할당, 할당해제.
Description
도 1은 일반적인 힙(heap) 메모리 관리방법에 의해 할당된 메모리 할당 구획 예시도.
도 2는 본 발명의 실시예에 따른 힙 메모리 관리장치의 블록구성도.
도 3은 본 발명의 실시예에 따른 힙 메모리 할당 흐름도.
도 4는 본 발명의 실시예에 따른 힙 메모리 관리방법에 의해 할당된 메모리 할당 구획 예시도.
본 발명은 메모리 관리기법에 관한 것으로, 특히 힙(heap) 메모리 할당 및 해제를 관리하는 힙 메모리 관리장치 및 그 방법에 관한 것이다.
컴퓨터 시스템에서 메모리는 크게 정적 메모리와 동적 메모리로 나눌 수 있다. 이중 동적 메모리는 다시 명시적 동적 메모리 관리와 자동화된 동적 메모리 관리로 나눌 수 있다.
명시적 동적 메모리 관리의 예는 C에서의 malloc( ) 함수나 farmalloc( ) 함 수 등의 할당 관련 함수와 free( )함수의 수거 함수 등이 있다. 이들은 모두 프로그래머에 의해 명시적으로 이루어진다. 명시적 동적 메모리 관리의 장점은 메모리 활용의 최적화를 이룰 수 있는 반면 프로그래머가 신중하게 동적 메모리를 관리하여야 한다는 단점이 있다.
한편 자동화된 동적 메모리 관리 기법에는 주로 쓰레기 수집(Garbage Collection) 기법이 활용되고 있다. 이 기법의 장점은 프로그래머가 동적 메모리의 관리에 대하여 전혀 신경을 쓰지 않더라도 쓰레기 수집 알고리즘에 따라 앞으로 사용 가능성이 있는 객체는 보존해 주고 사용 가능성이 없는 객체는 자동적으로 수거하기 때문에 프로그램의 생산성을 향상시켜 준다는 장점이 있다.
예시한 바와 같은 동적 메모리 관리 기법에서 일반적으로 사용되고 있는 힙(heap) 메모리 할당에 대하여 부연 설명하면,
우선 힙 메모리 관리자는 어플리케이션(application)의 메모리 할당(alloc( )함수이용) 요구에 응답하여 힙 메모리(10)의 소정 영역을 순차적으로 할당하여 주고, 그 할당된 영역의 할당해제(free( )함수 이용) 요구에 응답하여 해당 영역을 자유영역으로 할당 해제시킨다.
예를 들어 힙 메모리(10)의 전체 사이즈가 10Mbyte이고, 힙 메모리 관리자가 어플리케이션의 메모리 할당 요구에 응답하여 도 1의 (a)에 도시한 바와 같이 순차적으로 3Mb, 1Mb, 3Mb, 2Mb를 할당하여 주었다고 가정하기로 한다.
이러한 가정하에서 만약 도 1의 (b)에 도시한 바와 같이 3Mb 사이즈를 가지는 첫 번째(A)와 세 번째(B) 영역에 대해 할당해제 요구가 접수되면, 힙 메모리 관 리자는 해당 영역을 재할당 가능한 자유영역으로 환원시켜 준다. 이러한 경우 힙 메모리(10)는 도 1의 (c)에 도시한 바와 같이 총 7Mb의 자유영역을 확보하여 이를 재할당하여 주는데 이용할 수 있으나, 3Mb를 초과하는 메모리 할당요구에 대해서는 메모리 할당 실패가 발생하게 된다.
그 이유는 힙 메모리 관리자가 소정 사이즈를 가지는 하나의 자유영역만을 할당하여 줄 수 있기 때문이다.
따라서, 전체 할당 가능한 메모리 사이즈가 충분함에도 불구하고 자유영역 에 해당하는 각각의 조각(fragmentation) 블록 보다 큰 메모리의 할당 요구가 있는 경우에는 정상적으로 힙 메모리를 할당하여 줄 수 없는 문제가 발생하게 된다. 이러한 문제를 해결하기 위해서는 메모리 할당과 할당 해제 요구에 응답하여 발생하게 되는 조각(fragmentation) 블록들의 수를 최소화하여야만 한다.
이에 본 발명의 목적은 힙 메모리의 할당(alloc)과 할당해제(free) 요구에 응답하여 발생하게 되는 작은 사이즈의 조각 블록들을 최소화하여 힙 메모리의 할당 실패율을 줄일 수 있는 힙 메모리 관리장치와 그 방법을 제공함에 있다.
상기 목적을 달성하기 위한 본 발명의 실시예에 따른 힙 메모리 관리방법은,
어플리케이션으로부터 힙 메모리 할당요구가 있는가를 검사하는 단계와;
할당 요구받은 메모리 사이즈를 미리 저장된 기준치와 비교하는 단계와;
상기 비교결과에 따라 상기 힙 메모리의 전위 혹은 후위로부터 자유영역을 순차 할당하는 단계와;
할당된 자유영역의 시작 어드레스 정보를 메모리 할당 테이블에 등록하는 단계;를 포함함을 특징으로 하며,
더 나아가 어플리케이션으로부터 힙 메모리 할당해제 요구가 있으면 그 할당해제 요구된 시작 어드레스 관련 정보를 상기 메모리 할당 테이블에서 소거하여 메모리 할당 해제함을 특징으로 한다.
아울러 본 발명의 실시예에 따른 힙 메모리 관리장치는,
어플리케이션에 임시 데이터 저장 공간을 제공하기 위한 힙(heap) 메모리 영역과 메모리 할당 테이블을 저장하기 위한 메모리 할당 테이블 영역을 포함하는 메모리와;
어플리케이션으로부터 할당 요구받은 메모리 사이즈에 따라 상기 힙 메모리의 전위 혹은 후위로부터 자유(free)영역을 할당하여 주고, 그 할당 영역의 시작 어드레스 정보를 상기 메모리 할당 테이블에 등록하는 힙 메모리 관리자;를 포함함을 특징으로 한다.
상술한 본 발명의 특징에 따르면, 어플리케이션의 메모리 할당 요구에 응답하여 작은 사이즈의 영역은 예를 들어 힙 메모리의 전위 영역으로부터 순차 할당하여 주고 큰 사이즈의 영역은 힙 메모리의 후위 영역으로부터 순차 할당하여 주기 때문에, 결과적으로 할당된 메모리 영역이 할당 해제되더라도 작은 사이즈의 조각(fragmentation) 블록들이 최소화되어 힙 메모리의 할당 실패율을 줄일 수 있는 효과를 얻게 되는 것이다.
이하 본 발명의 바람직한 실시예를 첨부 도면을 참조하여 상세히 설명하기로 한다. 본 발명을 설명함에 있어 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그에 대한 상세한 설명은 생략하기로 한다.
우선 도 2는 본 발명의 실시예에 따른 힙 메모리 관리장치의 블록구성도를 도시한 것이며, 도 3은 본 발명의 실시예에 따른 힙 메모리 할당 흐름도를, 그리고도 4는 본 발명의 실시예에 따른 힙 메모리 관리방법에 의해 할당된 메모리 할당 구획 예시도를 각각 도시한 것이다.
우선 본 발명의 실시예에 따른 힙 메모리 관리장치는 도 2에 도시한 바와 같이 어플리케이션(40)에 임시 데이터 저장 공간을 제공하기 위한 힙(heap) 메모리 영역(24)을 포함하는 메모리(20)를 구비한다. 이러한 메모리(20)는 메모리 할당 테이블(Memory Allocation Table:MAT라고 함)을 저장하기 위한 메모리 할당 테이블 영역(22)을 더 포함한다. 상기 메모리 할당 테이블(22)에는 적어도 어플리케이션(40)에게 할당되는 자유영역의 시작 어드레스 정보와 할당되는 메모리의 사이즈 정보가 함께 등록된다.
한편 본 발명의 실시예에 따른 힙 메모리 관리장치는 어플리케이션(40)으로부터 할당 요구받은 메모리 사이즈에 따라 상기 힙 메모리(24)의 전위 혹은 후위로부터 자유(free)영역을 할당하여 주고, 그 할당 영역의 시작 어드레스 정보를 상기 메모리 할당 테이블(22)에 등록하는 힙 메모리 관리자(30)를 더 포함한다. 상기 힙 메모리 관리자(30)는 어플리케이션(40)으로부터 힙 메모리(24) 할당해제 요구가 있 으면 그 할당해제 요구된 시작 어드레스 관련 정보를 상기 메모리 할당 테이블(22)에서 소거하여 할당된 메모리 영역을 자유영역으로 환원시키는 역할도 수행한다.
이러한 힙 메모리 관리자(30)는 어플리케이션(40)으로부터 할당 요구받은 메모리 사이즈에 따라 상기 힙 메모리(24)의 전위 혹은 후위로부터 자유(free)영역을 할당하여 주고, 그 할당 영역의 시작 어드레스 정보를 상기 메모리 할당 테이블(22)에 등록하기 위한 제어 프로그램 데이터를 저장한 메모리(32)와, 그 메모리(32)에 저장된 제어 프로그램 데이터에 기초하여 힙 메모리(24)를 관리하여 주는 CPU(34)를 포함한다.
이하 상술한 바와 같은 기본 구성을 가지는 힙 메모리 관리장치의 동작을 도 3과 도 4를 참조하여 보다 구체적으로 설명하면,
우선 소정의 어플리케이션(40)으로부터 힙 메모리(24) 할당요구가 있으면(50단계) 힙 메모리 관리자(30)는 52단계로 진행하여 상기 어플리케이션(40)으로부터 할당 요구받은 메모리 사이즈가 미리 저장된 기준치를 초과하는지를 비교한다. 상기 기준치는 사용 가능한 힙 메모리(24)의 전체 사이즈에 따라 가변될 수 있는 값으로 실험에 의해 설정되어 미리 저장된다. 이와 같이 할당 요구받은 메모리 사이즈를 미리 저장된 기준치와 비교하는 이유는 작은 사이즈의 메모리 영역을 힙 메모리(24)의 전위 혹은 후위 어느 한쪽에 집중적으로 할당 배치함으로서, 그 작은 사이즈의 메모리 영역이 큰 사이즈의 메모리 영역 사이사이에 분산 배치되어 발생하게 되는 자유영역들의 사이즈를 제한하는 효과를 극복하기 위함이다.
참고적으로 하기 설명에서는 어플리케이션(40)으로부터 할당요구 받은 메모 리 사이즈가 기준치를 초과하는 경우, 즉 기준치 보다 큰 사이즈의 메모리 할당요구가 있는 경우 힙 메모리(24)의 후위에서부터 계산된 자유영역을 할당하여 주는 것으로 가정하기로 한다.
즉, 52단계의 비교결과 어플리케이션(40)으로부터 할당 요구받은 메모리 사이즈가 기준치를 초과하면 큰 사이즈의 메모리 할당요구로 받아들여 힙 메모리 관리자(30)는 힙 메모리(24)의 후위 어드레스에서부터 계산된 사이즈의 자유영역을 해당 어플리케이션(40)에게 할당(54단계)하여 준다. 이러한 힙 메모리(24) 할당은 할당된 자유영역의 시작 어드레스를 리턴하여 줌으로서 이루어진다.
만약 52단계의 비교결과 어플리케이션(40)으로부터 할당 요구받은 메모리 사이즈가 기준치 이하이면 작은 사이즈의 메모리 할당요구로 받아들여 힙 메모리 관리자(30)는 힙 메모리(24)의 전위 어드레스에서부터 계산된 사이즈의 자유영역을 해당 어플리케이션(40)에게 할당(56단계)하여 준다.
이와 같이 어플리케이션(40)으로부터 할당 요구받은 메모리 사이즈와 기준치를 비교하여 힙 메모리(24)의 전위 혹은 후위로부터 자유영역을 할당하여 나가는 보다 구체적인 예를 도 4를 참조하여 보충 설명하면, 우선 힙 메모리(24)의 전체 사이즈가 10Mb이고 미리 저장된 기준치가 2.5Mb이며 어플리케이션(40)으로부터 3Mb, 1Mb, 3Mb, 2Mb의 순으로 메모리 할당요구가 있는 것으로 가정하기로 한다.
이러한 가정하에 따르면 상술한 52단계 내지 56단계에 의해서 도 4의 (a)에 도시한 바와 같이 힙 메모리(24)의 할당이 우선적으로 이루어지게 된다.
그리고 자유영역의 할당이 이루어질 때마다 힙 메모리 관리자(30)에 의해서 할당된 자유영역의 시작 어드레스 정보는 메모리 할당 테이블(MAT)(22)에 등록(58단계)된다.
상술한 바와 같이 힙 메모리(24)의 할당이 이루어진 상태에서 어플리케이션(40)으로부터 힙 메모리(24)의 할당해제 요구가 있으면(60단계), 힙 메모리 관리자(30)는 그 할당해제 요구된 시작 어드레스 관련 정보를 상기 메모리 할당 테이블(22)에서 소거하여 할당해제 요구된 영역을 자유영역으로 환원(62단계)시킨다.
예를 들어 어플리케이션(40)으로부터 할당해제 요구된 영역이 도 4의 (a)에서 첫 번째(①)와 세 번째(③) 영역이라면, 힙 메모리 관리자(30)는 그러한 할당해제 요구에 응답하여 도 4의 (b)에서와 같이 첫 번째(①)와 세 번째(③)로 할당된 영역을 할당 해제시켜 자유영역으로 환원시킨다.
그러면 도 4의 (c)에서와 같이 최대 7Mb의 자유영역을 확보할 수 있게 되기 때문에, 힙 메모리 관리자(30)는 최대 7Mb의 사이즈를 가지는 메모리 할당 요구에 응답할 수 있게 되는 것이다.
이러한 본 발명의 효과는 도 1과 도 4를 대비하여 봄으로서 더욱 명료해진다. 즉, 도 1에서는 첫 번째와 세 번째로 할당된 3Mb의 영역을 할당 해제한 경우 최대 3Mb의 사이즈를 가지는 메모리 할당 요구에 응답할 수밖에 없지만, 본 발명은 이와는 달리 도 4의 (c)에서와 같이 최대 7Mb의 사이즈를 가지는 메모리 할당 요구에 응답할 수 있기 때문에 본 발명의 힙 메모리 관리 기법이 종래의 힙 메모리 관리 기법 보다 우수한 결과를 가져온다고 말할 수 있는 것이다.
상술한 바와 같이 본 발명은 메모리 할당 요구에 응답하여 작은 사이즈의 영역은 예를 들어 힙 메모리의 전위 영역으로부터 순차 할당하여 주고 큰 사이즈의 영역은 힙 메모리의 후위 영역으로부터 순차 할당하여 주기 때문에, 결과적으로 할당된 메모리 영역이 할당 해제되더라도 작은 사이즈의 조각(fragmentation) 블록들이 최소화되어 결과적으로는 힙 메모리의 할당 실패율을 줄일 수 있는 효과가 있게 되는 것이다.
한편 본 발명은 도면에 도시된 실시예들을 참고로 설명되었으나 이는 예시적인 것에 불과하며, 당해 기술분야에 통상의 지식을 지닌자라면 이로부터 다양한 변형 및 균등한 타실시예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위에 의해서만 정해져야 할 것이다.
Claims (5)
- 어플리케이션에 임시 데이터 저장공간을 제공하기 위한 힙 메모리 관리방법에 있어서,어플리케이션으로부터 힙 메모리 할당요구가 있는가를 검사하는 단계와;할당 요구받은 메모리 사이즈를 미리 저장된 기준치와 비교하는 단계와;상기 비교결과에 따라 상기 힙 메모리의 전위 혹은 후위로부터 자유영역을 순차 할당하는 단계와;할당된 자유영역의 시작 어드레스 정보를 메모리 할당 테이블에 등록하는 단계;를 포함함을 특징으로 하는 힙 메모리 관리방법.
- 청구항 1에 있어서, 어플리케이션으로부터 힙 메모리 할당해제 요구가 있으면 그 할당해제 요구된 시작 어드레스 관련 정보를 상기 메모리 할당 테이블에서 소거하여 메모리 할당 해제하는 단계;를 더 포함함을 특징으로 하는 힙 메모리 관리방법.
- 청구항 1 또는 청구항 2에 있어서, 상기 힙 메모리의 후위로부터 자유영역을 할당하는 경우에 그 자유영역의 최하위 어드레스를 기점으로 하여 상기 할당 요구받은 메모리 사이즈만큼의 영역을 자유영역으로 할당함을 특징으로 하는 힙 메모리 관리방법.
- 어플리케이션에 임시 데이터 저장 공간을 제공하기 위한 힙(heap) 메모리 영역과 메모리 할당 테이블을 저장하기 위한 메모리 할당 테이블 영역을 포함하는 메모리와;어플리케이션으로부터 할당 요구받은 메모리 사이즈에 따라 상기 힙 메모리의 전위 혹은 후위로부터 자유(free)영역을 할당하여 주고, 그 할당 영역의 시작 어드레스 정보를 상기 메모리 할당 테이블에 등록하는 힙 메모리 관리자;를 포함함을 특징으로 하는 힙 메모리 관리장치.
- 청구항 4에 있어서, 상기 힙 메모리 관리자는,어플리케이션으로부터 할당 요구받은 메모리 사이즈가 기준치 보다 크면 상기 힙 메모리의 후위로부터 자유영역을 순차 할당하고, 그 반대이면 상기 힙 메모리의 전위로부터 자유영역을 순차 할당하여 나감을 특징으로 힙 메모리 관리장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020040082791A KR20060033606A (ko) | 2004-10-15 | 2004-10-15 | 힙 메모리 관리장치 및 그 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020040082791A KR20060033606A (ko) | 2004-10-15 | 2004-10-15 | 힙 메모리 관리장치 및 그 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20060033606A true KR20060033606A (ko) | 2006-04-19 |
Family
ID=37142711
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020040082791A KR20060033606A (ko) | 2004-10-15 | 2004-10-15 | 힙 메모리 관리장치 및 그 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20060033606A (ko) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100801001B1 (ko) * | 2006-03-08 | 2008-02-11 | 삼성전자주식회사 | 자바 가상 머신에서 힙 메모리를 관리하는 방법 및 상기자바 가상 머신이 탑재된 장치 |
KR100951845B1 (ko) * | 2007-12-12 | 2010-04-12 | 한국전자통신연구원 | 캐시 미스를 줄일 수 있는 힙 메모리의 동적 할당 장치 및방법 |
KR20140035416A (ko) * | 2011-06-20 | 2014-03-21 | 마이크로소프트 코포레이션 | 강화된 어플리케이션 메타데이터를 갖는 메모리 매니저 |
WO2018088596A1 (ko) * | 2016-11-10 | 2018-05-17 | (주) 글루시스 | 메모리 포렌식을 이용한 인메모리 데이터 추출 방법 |
WO2022030964A1 (ko) * | 2020-08-04 | 2022-02-10 | 삼성전자 주식회사 | 가상 메모리의 할당 방법 및 이를 지원하는 전자 장치 |
-
2004
- 2004-10-15 KR KR1020040082791A patent/KR20060033606A/ko not_active Application Discontinuation
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100801001B1 (ko) * | 2006-03-08 | 2008-02-11 | 삼성전자주식회사 | 자바 가상 머신에서 힙 메모리를 관리하는 방법 및 상기자바 가상 머신이 탑재된 장치 |
KR100951845B1 (ko) * | 2007-12-12 | 2010-04-12 | 한국전자통신연구원 | 캐시 미스를 줄일 수 있는 힙 메모리의 동적 할당 장치 및방법 |
KR20140035416A (ko) * | 2011-06-20 | 2014-03-21 | 마이크로소프트 코포레이션 | 강화된 어플리케이션 메타데이터를 갖는 메모리 매니저 |
WO2018088596A1 (ko) * | 2016-11-10 | 2018-05-17 | (주) 글루시스 | 메모리 포렌식을 이용한 인메모리 데이터 추출 방법 |
WO2022030964A1 (ko) * | 2020-08-04 | 2022-02-10 | 삼성전자 주식회사 | 가상 메모리의 할당 방법 및 이를 지원하는 전자 장치 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10409526B2 (en) | Adaptive garbage collection | |
US6941437B2 (en) | Memory allocation scheme | |
CN109582227B (zh) | 固态硬盘写入方法、装置、计算机设备和存储介质 | |
CN106326133B (zh) | 存储系统、存储管理装置、存储器、混合存储装置及存储管理方法 | |
US7975123B2 (en) | Computer system, management computer and storage system, and storage area allocation amount controlling method | |
US7404062B2 (en) | System and method of allocating contiguous memory in a data processing system | |
US7231504B2 (en) | Dynamic memory management of unallocated memory in a logical partitioned data processing system | |
KR101618634B1 (ko) | 비휘발성 메모리와, 이의 페이지 동적할당장치 및 페이지 매핑장치와, 이의 페이지 동적할당방법 및 페이지 매핑방법 | |
US10049040B2 (en) | Just in time garbage collection | |
CN110727395B (zh) | 闪存控制器、方法及存储装置 | |
US20110246742A1 (en) | Memory pooling in segmented memory architecture | |
US20180067850A1 (en) | Non-volatile memory device | |
JP2006338341A5 (ko) | ||
US20170228191A1 (en) | Systems and methods for suppressing latency in non-volatile solid state devices | |
EP0493012A2 (en) | Control system for cache storage unit | |
CN110199265B (zh) | 存储装置和存储区域管理方法 | |
KR20060033606A (ko) | 힙 메모리 관리장치 및 그 방법 | |
KR101950759B1 (ko) | 저장 장치의 메모리 컨트롤러가 수행하는 가비지 컬렉션 방법 및 메모리 컨트롤러 | |
CN117806989A (zh) | 基于持久化内存的高速数据处理方法、装置、设备及介质 | |
CN114518962A (zh) | 内存的管理方法及装置 | |
US9170929B2 (en) | Memory controller | |
US5761738A (en) | Computer system which stores management or control information in different address space but same offset as corresponding data | |
WO2008044865A1 (en) | Device and method for allocating memory of terminal device | |
US20090327640A1 (en) | Method for expanding logical volume storage space | |
CN118708502B (zh) | 一种在freeRTOS下改善heap堆使用中产生大量内存碎片的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application | ||
J201 | Request for trial against refusal decision | ||
J501 | Disposition of invalidation of trial |