[시스템 소프트웨어] 06-1 Memory Management

yesman·2022년 1월 11일
0

시스템 소프트웨어

목록 보기
23/23

Memory Hierachy

메모리는 계층구조로 구성된다.

  1. 2-level 메모리 계층
  2. 3-level 메모리 계층
  3. n-level 메모리 계층

메모리 계층 i와 i+1 간에 다음 관계가 성립한다.

  • Ci > Ci+1 : 레벨이 낮을수록 단위 메모리당 구축비용이 낮다.
  • ti < ti+1 : 레벨이 낮을수록 평균 액세스 시간이 빠르다.
  • Si < Si+1 : cpu에 가까울수록, 레벨이 낮을수록 사이즈가 작아진다.

계층적 메모리 구성을 통해 성능은 가장 빠른 레벨인 M1과 근접하게, 비용은 가장 저렴한 레벨인 Mn과 근접하도록 이루도록 하는 것이 목적이다.

계층을 구성하는 메모리 종류를 다음과 같이 분류할 수 있다.
접근 방법: RAM, SAM, DASD
접근 시간: Primary memory, Secondary memory

레벨 i 메모리의 주소 공간은 레벨 i+1 메모리 주소공간의 부분집합이다.

레벨 i 메모리 주소공간 내의 특정 주소 A는 레벨 i+1 메모리 주소공간의 주소 A와 일치하지 않을 수 있다.
i에서 주소가 100이었으면 i+1에서 주소가 200일 수 있다. 따라서 Address Mapping이 잘 되어 주소 유지가 잘 되어야 한다.

Hit ratio(or success function)

주어진 메모리 레벨에서 요청한 정보를 발견할 확률이다. 계층 메모리의 성능 척도이며 각 레벨에서 사용한 메모리 용량, 얼마나 논리주소를 참조하는지에 따라 달라진다.

레벨 i에서 발견할 확률은 hi라고 한다. 또 hi = H(Si) - H(Si-1) 이라고 할 수 있다.

참조의 지역성, Locality of reference

단시간에 생성되는 주소들은 논리적인 주소 공간의 작은 영역에 제한되어 나타나는 경향을 참조의 지역성이라고 한다. 컴퓨터 프로그램 실행 시에 나타나는 일반적인 특성이다. cpu가 생성하는 주소가 가지는 특성이라고도 할 수 있다.

실행중인 프로세스에서 나타나는 참조의 지역성을 구성하는 3가지 요소가 있다.

  1. Temporal locality(한시적 지역성)
    프로그램 실행에서 시간적 특성을 가지며 나타나는 참조 주소 현상이다. 최근에 참조했던 요소들을 가까운 미래에서 또 다시 참조하는 경향을 말한다. 각 메모리 레벨에 포함될 블록들의 수를 결정하는 하나의 척도 역할을 한다.

  2. Spatial locality(공간적 지역성)
    프로그램 실행에서 공간적 특성을 가지며 나타나는 참조 주소 현상이다. 마지막에 참조했던 요소에 이웃한 부근의 주소공간의 요소를 참조하는 경향을 말한다. 각 메모리 레벨 간의 이동되는 블록의 크기를 결정하는 하나의 척도 역할을 한다.

  3. Sequential locality(순차적 지역성)
    최근에 참조한 주소가 r(t)이라면 r(t)의 바로 다음 것을 참조하는 현상이다.

profile
유니티

0개의 댓글