[OS] 3-2. 기억장치의 구조 및 관리 기법

공부 스파이럴·2024년 3월 13일
0

운영체제

목록 보기
17/27

기억장치의 계층적 구조

  • 레벨-1 (L1) 캐시(cache)는 마이크로프로세서와 같은 칩 내에 있음
  • 레벨-2 캐시는 보통 별도로 분리된 SRAM 칩
  • 메인 메모리는 보통 DRAM 칩을 사용
  • RAM은 DRAM과는 달리 전자기적으로 재생시킬 필요가 없기 때문에 값이 더 비쌈

기억장치 계층

  • 상위 층으로 갈수록 비트당 가격이 높아지고, 용량이 감소하며, 액세스 시간은 짧아지고, CPU에 의한 액세스 빈도는 높아짐
  • 내부 기억장치(internal memory)
    • CPU가 직접 액세스할 수 있는 기억장치들
    • 예) CPU 레지스터, 캐시 기억장치, 주기억장치, 디스크 캐시
  • 외부 기억장치(external memory)
    • CPU가 직접 액세스할 수 없고, 장치 제어기(device controller)를 통해서만 액세스할 수 있는 기억장치들
    • 예) 디스크, CD-ROM

캐시 기억장치 / 디스크 캐시

  • 캐시 기억장치(cache memory)
    • 주기억장치의 액세스 속도가 CPU에 비하여 현저히 느리기 때문에 주기억장치로부터 데이터를 읽어오는 동안에 CPU가 오랫동안 기다려야 하는데, 그에 따른 성능 저하를 줄이기 위하여 CPU와 주기억장치 사이에 설치하는 고속의 반도체 기억장치
  • 디스크 캐시(disk cache)
    • 디스크와 주기억장치의 액세스 속도 차이를 줄이기 위하여 그 사이에 설치하는 반도체 기억장치
    • 주기억장치로부터 디스크로 읽혀나갈(swap-out) 정보들을 일시적으로 저장하는 버퍼 역할
    • 위치 : 주기억장치, I/O 프로세서 보드, 혹은 제어기 보드
  • 디스크 캐시의 장점
    • 디스크 쓰기 동작들을 묶음 별로 처리할 수 있게 해줌
    • 적은 수의 데이터들을 여러 번에 걸쳐서 디스크로 저장하는 대신에, 그들을 모아서 큰 단위로 한 번에 디스크에 저장
  • 디스크 캐시
    • CPU와 장치 제어기 모두 직접 액세스 할 수 있으므로, 내부 및 외부 기억장치에 모두 속함

제조 기술에 따른 분류

  • DRAM (Dynamic RAM)
    • 캐패시터(capacitor)에 전하(charge)를 충전하는 방식으로 데이터를 저장하는 기억 소자들(memory cells)로 구성
      -> 집적 밀도가 높음
    • 데이터의 저장 상태를 유지하기 위하여 주기적인 재충전(refresh) 필요
    • 집적 밀도가 더 높으며, 같은 용량의 SRAM 보다 가격이 더 쌈
    • 용량이 큰 주기억장치로 사용
  • SRAM (Static RAM)
    • 기억 소자로서 플립-플롭(flip-flop)을 이용
      -> 집적 밀도가 낮음
    • 전력이 공급되는 동안에는 재충전 없이도 데이터를 계속 유지 가능
    • DRAM보다 다소 더 빠름
    • 높은 속도가 필요한 캐시 기억장치로 사용

기억장치 관리 기법(3가지 범주)

  • 인출(fetch) 기법
    • 주기억장치에 적재할 다음 프로그램이나 데이터를 언제 가져올 것인가를 결정하는 문제
    • 요구 인출(demand fetch) 기법
      • 실행 프로그램에 의해 어떤 프로그램이나 데이터가 참조될 때 그것을 주기억장치로 옮기는 기법
    • 예상 인출(anticipatory fetch) 기법
      • 앞으로 요구될 가능성이 큰 데이터 또는 프로그램을 예상하여 주기억장치로 미리 옮기는 방법
  • 배치(placement) 기법
    • 새로 인출된 데이터나 프로그램을 주기억장치의 어디에 위치시킬 것인가를 결정하는 기법
    • 최초 적합(first-fit), 최적 적합(best-fit) 및 최악 적합(worst-fit) 등이 있음
  • 교체(replacement) 기법
    • 새로 들어온 프로그램이 들어갈 장소를 마련하기 위해서 어떤 프로그램 및 어떤 데이터를 제거할 것인가를 결정함

0개의 댓글