위키득계정 ↗
기술

TLSF

TLSF기술
이름
Two-Level Segregated Fit
분류
메모리 풀 할당 방식
주요 관점
일정한 관리 비용
구현 예
Matthew Conte의 C 구현
TLSF는 두 단계 크기 분류를 이용하는 메모리 할당 방식이다. 제한된 관리 비용과 낮은 단편화를 목표로 메모리 풀에서 적합한 빈 블록을 찾는다.

크기별 빈 공간 관리

요청 크기에 맞는 빈 블록을 찾도록 두 단계 분류와 관련 탐색 정보를 사용한다. 할당과 해제의 관리 경로를 예측하기 쉽게 하는 것이 중요한 목표다. 메모리 풀의 구성과 블록 정렬 조건도 실제 구현에서 함께 다룬다.

풀 추가와 제거

구현은 여러 메모리 풀의 추가와 제거를 지원한다. 제거할 풀은 비어 있어야 하는 등 지켜야 할 조건이 있다. 풀을 운영하는 정책과 블록을 선택하는 알고리즘은 구분하고 소유권 및 수명 규칙을 명확히 관리한다.

시간 보장과 동시성

할당기 자료 구조의 상수 시간 특성이 운영체제 스케줄과 잠금, 데이터 복사까지 포함한 전체 지연의 고정을 뜻하지는 않는다. 소개된 구현은 스레드 안전성을 사용자에게 맡긴다. 병렬 접근과 실시간 요구가 있다면 주변 동기화 및 실행 환경까지 평가한다.

관련 문서

RealtimeSanitizer / mimalloc / TCMalloc / Heap Layers