
TLB(Translation Lookaside Buffer)는 가상 주소를 물리적 주소로 변환하는 속도를 높이는 캐시 메모리 역할을 하는 최신 운영 체제의 필수 구성 요소이다.
최근에 사용한 트랜잭션을 추적하는 데 사용되는 특수 캐시다.
가장 최근에 사용된 페이지 테이블 항목(PTE)이 포함되어 있으며, 가상 주소가 주어지면 프로세서는 페이지 테이블 항목이 존재하는지 (TLB Hit) TLB를 검사하고 프레임 번호를 검색하여 실제 주소가 형성된다.
이 시점에서 TLB가 물리적 메모리의 위치에 대한 빠른 참조를 확인한다. 과정은 다음과 같다.
TLB Hit은 기본적으로 Temporal Locality 개념을 사용하여 TLB Hit Rate를 높인다.
→ 데이터 검색이 빨라진다.
TLB에 페이지 테이블 엔트리가 없으면 (TLB Miss) 페이지 테이블을 처리하는 동안 해당 페이지 번호를 인덱스로 사용한다.
TLB는 먼저 페이지가 이미 주 메모리에 있는지 확인하고, 주 메모리에 없으면 페이지 오류가 발생한 다음 TLB가 새 페이지 항목을 포함하도록 업데이트한다.
TLB를 사용하면 레지스터에 PTE를 배치할 필요가 없다. 또는 두 개의 주 메모리 참조가 필요한 주 메모리에 전체 페이지 테이블을 유지할 필요가 없다.
TLB는 참조 지역성 개념을 기반으로 한다. 즉, 중앙 처리 장치가 자주 액세스해야 하는 페이지의 항목만 포함한다.
TLB는 레지스터보다 저렴하고 크기가 크며, 주 메모리보다 빠르고 작은 메모리 유형이다.
메모리 주소가 TLB에 저장되어 있고 거기에서 검색할 수 있다면(TLB HIT) 속도가 향상된다.
단, TLB는 멀티태스킹 및 코드 오류로 인해 성능 문제가 발생할 수 있다.
캐시 스레시(cache thrash)라고 하는 성능 저하는 리소스의 과도한 사용이나 캐싱 시스템의 충돌로 인해 진행되지 않는 지속적인 컴퓨터 활동으로 인해 발생한다.