Etc./공부 요약2017. 5. 13. 00:11

1. 기억장치 계층구조(Memory Hierarchy)

크기, 속도, 가격당 성능에 따라 분류된 기억장치를 계층적으로 구성하여 평균 기억장치 액세스 속도를 높이고 가성비를 적절히 유지한다.


액세스 속도가 높아질수록 비트당 가격도 높아진다.

용량이 커질수록 비트당 가격도 낮아진다.

용량이 커질수록 액세스 속도는 낮아진다.



기억장치 계층구조

고속의 CPU와 저속의 보조기억장치 사이에 캐시와 주기억장치를 배치하여 성능차이 극복

빠르지만 고가인 SDRAM 사용량 줄여 가격 경쟁력 확보



2. 캐시 메모리(Cache Memory)

CPU와 주기억장치의 속도차이 극복을 위한 고속 버퍼 메모리

중앙처리장치에 읽어 들인 데이터들로 채워지는 버퍼 형태의 고속 기억장치


Index(색인) : 캐시의 순서 번호

Valid bit(유효) : 저장 데이터의 유효성 비트

Tag(태그) : 매핑된 메모리 주소의 캐시 식별을 위한 Index Bit로 사용되는 상위비트


캐시 메모리 사상(Mapping) 방식

직접 사상(Direct Mapping)

주메모리를 여러 구역으로 분할하여 캐시 슬롯과 매핑한다.


연관 사상(Associate Mapping)

주메모리의 각 블록이 캐시의 어느 슬롯이든 적재 가능하다.


집합 연관사상(Set Associate Mapping)

직접,연관 사상의 대안, 캐시와 메모리가 n대 1대응


3. 캐시 메모리 관리 방식

CPU가 원하는 데이터가 캐시 메모리에 있도록 하는 것


캐시 메모리 인출 방식

Demand Fetch : 필요 시 캐시 인출

Pre-Fetch : 예상되는 블록 미리 패치


캐시 메모리 교체(Reolacement) 알고리즘 종류 ( 중요 )

이름 

설명 

특징 

Random 

교체될 페이지 임의 선정 

오버헤드가 적다 

FIFO(First In First Out) 

캐시 내에 가장 오래있었던
페이지 교체 

자주 사용되는 페이지를 교체

가능성 있다

LFU(Least Frequcently Used) 

사용 횟수가 가장 적은 페이지
교체 

최근 적재된 페이지를 교체
가능성 있다 

LRU(Least Recently Used) 

가장 오랫동안 사용안한 페이지
교체 

오버헤드 존재 

Optimal 

가장 사용되지 않을 페이지
교체 

가능성 없음 

NUR(Not Used Recently) 

참조 비트와 수정 비트로
미사용 페이지 교체 

최근 사용되지 않은 페이지

교체 

SCR

(Second Chance Replacement) 

참조비트가 1이면 0으로 세트,
0이면 교체 

두번의 기회 


페이지 교체시 발생가능한 문제

이름

내용 

Page Fault(페이지 부재) 

기억장치에 적재되지 않은 페이지를 사용하려 할 때 

Demand Paging(요구 페이징)

요구 될 때에만 페이지를 적재하는 방식 

Thrashing(스레싱) 

Page 부재가 빈번하게 발생 


문제 해결

이름 

내용 

Load Control 

일정 시간 동안 새로운 프로세서가 생성되는 것을 지연, 큐에 대기시켜 스레싱 감소 

Locality(구역성) 

시간과 공간 지역성을 집중적으로 참조 

Working Set 

일정 시간 동안 참조되는 페이지의 집합을 유지 

PFF(Page Fault Frequency) 

Page Fault 빈도에 따라 조정 



Posted by BadSchool