1 |
1
플래시 메모리를 사용하는 전자 장치에 있어서, 상기 플래시 메모리 접근을 위해 물리주소와 논리주소 간의 변환을 수행하는 프로그램을 일시적으로 저장하는 메모리; 및상기 프로그램을 실행하는 프로세서를 포함하되, 상기 프로세서는, 상기 프로그램이 실행됨에 따라, 제1 논리페이지에 대한 접근 요청에 응답하여, 상기 제1 논리페이지에 대응하는 제1 파티션을 결정하고, 맵핑 테이블 중에서 상기 제1 파티션에 대응하는 테이블 정보를 독출하여 상기 제1 논리페이지에 대응하는 제1 물리페이지의 주소를 산출하며, 상기 플래시 메모리의 상기 제1 물리페이지로 접근하되, 상기 맵핑 테이블은, 접근 요청의 순서와 상기 접근 요청된 논리페이지의 인덱스가 증가하는 순서에 따라 복수의 논리페이지를 하나의 파티션 단위로 관리하고, 각 파티션에 포함된 각 논리페이지와 상기 각 논리페이지에 대응하는 물리페이지의 오프셋(offset) 정보를 나타내는 비트맵(bitmap)을 포함하는 것인 전자 장치
|
2 |
2
제 1 항에 있어서, 상기 맵핑 테이블은 상기 각 파티션에 대응하는 클러스터(cluster) 정보와 상기 각 파티션에 대응하는 시작 블록 정보 및 시작 물리페이지 정보를 포함하는 것인 전자 장치
|
3 |
3
제 2 항에 있어서, 상기 비트맵에 포함된 '1'비트의 위치는 상기 각 논리페이지의 오프셋 정보를 나타내며, 상기 비트맵에 포함된 '1'비트의 개수는 각 물리페이지의 오프셋 정보를 나타내는 것인 전자 장치
|
4 |
4
제 3 항에 있어서, 상기 프로세서는 상기 제1 논리페이지가 포함된 클러스터(cluster)를 기초로 상기 제1 파티션을 추출하고, 상기 제1 파티션의 비트맵과 상기 제1 논리페이지의 오프셋을 이용하여, 상기 제1 논리페이지에 기 맵핑된 물리페이지가 존재하는지 여부를 판단하는 것인 전자 장치
|
5 |
5
제 3 항에 있어서, 상기 접근 요청이 읽기 요청인 경우, 상기 프로세서는 상기 제1 논리페이지에 기 맵핑된 물리페이지가 존재하는 경우, 상기 제1 파티션의 비트맵, 상기 시작 블록 및 시작 물리페이지를 이용하여 상기 제1 물리페이지의 주소를 산출하고, 상기 제1 논리페이지에 기 맵핑된 물리페이지가 존재하지 않는 경우, 상기 클러스터에 대응되는 제2 파티션을 추출하되, 상기 제2 파티션의 인덱스는 상기 제1 파티션의 인덱스보다 작은 것인 전자 장치
|
6 |
6
제 5 항에 있어서, 상기 프로세서는 상기 제1 파티션의 비트맵에서, 상기 제1 논리페이지의 오프셋에 대응하여 독출된 비트의 앞 비트들을 독출하여 상기 제1 물리페이지의 오프셋을 산출하고, 상기 제1 파티션의 시작 물리페이지와 상기 오프셋의 합을 기초로 상기 제1 파티션의 시작 블록에 접근하는 것인 전자 장치
|
7 |
7
제 3 항에 있어서, 상기 접근 요청이 쓰기 동작인 경우, 상기 프로세서는상기 제1 논리페이지에 기 맵핑된 물리페이지가 존재하는 경우, 상기 제1 파티션의 비트맵, 상기 시작 블록 및 시작 물리페이지를 이용하여 상기 제1 물리페이지의 주소를 산출하고, 할당 상태의 제3 파티션을 탐색하되, 상기 제3 파티션은 마지막에 기입된 제2 논리페이지의 인덱스가 상기 제1 논리페이지의 인덱스보다 작은 것인 전자 장치
|
8 |
8
제 7 항에 있어서, 상기 프로세서는 스트림 테이블을 기초로 상기 할당 상태의 제3 파티션을 탐색하되, 상기 스트림 테이블은 비할당 상태의 페이지를 포함하는 할당 상태의 파티션들 각각에 대해, 각 파티션의 식별자, 상기 각 파티션에 마지막으로 기입된 논리페이지 및 마지막으로 할당된 물리페이지에 대한 정보를 포함하는 것인 전자 장치
|
9 |
9
제 8 항에 있어서, 상기 프로세서는상기 스트림 테이블을 기초로 상기 제3 파티션이 탐색되지 않으며, 기 할당된 파티션의 개수가 최대 사용가능한 파티션의 개수이면, 기 할당된 파티션들을 병합하는 것인 전자 장치
|
10 |
10
제 9 항에 있어서, 상기 프로세서는각 클러스터에 속하는 시작 논리페이지를 갖는 파티션들을 그룹핑하고, 그룹핑된 파티션들의 유효 페이지 수를 기초로 빅팀 파티션 그룹을 결정하되, 상기 빅팀 파티션 그룹에 포함된 파티션의 수는 (클러스터에 포함된 페이지 수/파티션의 비트맵 크기 +2) 이상인 것인 전자 장치
|
11 |
11
플래시 메모리를 이용하는 전자 장치의 메모리 관리 방법에 있어서, 타겟 논리페이지에 대한 접근 요청에 응답하여, 상기 타겟 논리페이지에 대응하는 제1 파티션을 결정하는 단계; 맵핑 테이블 중에서 상기 제1 파티션에 대응하는 테이블 정보를 독출하여 상기 타겟 논리페이지에 대응하는 물리페이지의 주소를 산출하는 단계; 및 상기 플래시 메모리의 상기 물리페이지로 접근하는 단계를 포함하되, 상기 맵핑 테이블은, 접근 요청의 순서와 상기 접근 요청된 논리페이지의 인덱스가 증가하는 순서에 따라 복수의 논리페이지를 하나의 파티션 단위로 관리하고, 각 파티션에 포함된 각 논리페이지와 상기 각 논리페이지에 대응하는 물리페이지의 오프셋(offset) 정보를 나타내는 비트맵(bitmap)을 포함하는 것인 메모리 관리 방법
|
12 |
12
제 11 항에 있어서, 상기 맵핑 테이블은 상기 각 파티션에 대응하는 클러스터(cluster) 정보와 상기 각 파티션에 대응하는 시작 블록 정보 및 시작 물리페이지 정보를 포함하는 것인 메모리 관리 방법
|
13 |
13
제 12 항에 있어서, 상기 비트맵에 포함된 '1'비트의 위치는 상기 각 논리페이지의 오프셋 정보를 나타내며, 상기 비트맵에 포함된 '1'비트의 개수는 각 물리페이지의 오프셋 정보를 나타내는 것인 메모리 관리 방법
|
14 |
14
제 13 항에 있어서, 상기 제1 파티션을 결정하는 단계는 상기 타겟 논리페이지가 포함된 클러스터(cluster)를 기초로 상기 제1 파티션을 추출하는 단계; 및 상기 제1 파티션의 비트맵과 상기 타겟 논리페이지의 오프셋을 이용하여, 상기 타겟 논리페이지에 기 맵핑된 물리페이지가 존재하는지 여부를 판단하는 단계를 포함하며, 상기 타겟 논리페이지에 대응하는 물리페이지의 주소를 산출하는 단계는 상기 제1 파티션의 비트맵, 상기 시작 블록 및 시작 물리페이지를 이용하여 상기 물리페이지의 주소를 산출하는 것인 메모리 관리 방법
|
15 |
15
제 11 항 내지 제 14 항 중 어느 한 항의 방법을 구현하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체
|