[CSAPP 6장 완전 정복] 6.1~6.2 저장장치 기술과 지역성(Locality) 개념 이해하기

2025. 4. 28. 13:08·크래프톤 정글/컴퓨터구조(CSAPP)

저장장치 기술과 지역성(Locality) 개념 이해하기

이번 포스트에서는 6장의 첫 걸음을 떼 보려고 하는데요. 컴퓨터 시스템에서 데이터를 저장하는 다양한 저장장치 기술과, 프로그램 성능과 직결되는 지역성(Locality) 개념을 함께 살펴보겠습니다.

 

 

저장장치 기술(Storage Technology)

컴퓨터 시스템은 다양한 종류의 저장장치를 사용합니다. 각 저장장치는 가격, 용량, 속도 면에서 서로 다르지요.

  • 레지스터(Register): CPU 내부에 존재, 가장 빠르지만 용량은 매우 작음
  • 캐시(Cache): CPU와 메인 메모리 사이에 존재, 빠른 접근 속도를 제공
  • 메인 메모리(Main Memory, DRAM): 현재 실행 중인 프로그램과 데이터를 저장
  • 보조 저장장치(Secondary Storage): SSD, HDD와 같은 대용량, 상대적으로 느린 장치
  • 원격 저장장치(Remote Storage): 클라우드 스토리지, 네트워크를 통해 접근

속도는 레지스터 > 캐시 > 메인 메모리 > SSD > HDD 순으로 느려지고, 용량은 그 반대 방향으로 커집니다.

 

 

지역성(Locality) 개념

프로그램은 메모리를 무작위로 접근하는 것이 아니라, 특정 패턴을 가지고 접근하는데요. 이를 지역성(Locality)이라고 부릅니다. 다시말해 프로그램이 메모리를 접근할 때, 최근 접근했던 데이터 근처를 다시 접근하려는 경향이지요. 그리고 지역성에는 시간 지역성, 공간 지역성 두 종류가 있습니다.

  • 시간 지역성(Temporal Locality)
    - 최근에 접근한 데이터가 가까운 미래에도 다시 접근할 가능성이 높은 경향
    - 예: 반복문 안의 변수 접근
  • 공간 지역성(Spatial Locality)
    - 최근 접근한 데이터 근처에 있는 데이터도 곧 접근할 가능성이 높은 경향
    - 예: 배열을 순차적으로 접근할 때

이러한 지역성 덕분에 캐시 메모리가 큰 효과를 발휘할 수 있습니다.

 

 

지역성과 저장장치 설계

컴퓨터 아키텍처를 설계할 때 지역성의 특성을 적극 활용하면, 빠르고 효율적인 메모리 계층구조를 구성할 수 있습니다.

  • 자주 접근하는 데이터는 빠른 저장장치(캐시, 레지스터)에 위치
  • 덜 자주 접근하는 데이터는 느린 저장장치(HDD 등)에 위치
  • 지역성이 좋을수록 캐시 적중률이 높아지고 성능이 개선됨

 

마치면서

이번 편에서는 컴퓨터 시스템에 존재하는 다양한 저장장치 기술과, 프로그램이 메모리에 접근하는 핵심 패턴인 지역성 개념을 살펴보았는데요. 지역성을 이해하는 것은 앞으로 배울 메모리 계층 구조와 캐시를 제대로 이해하는 데 있어 필수적입니다.

 

다음 편에서는 메모리 계층구조를 본격적으로 파헤치면서, 컴퓨터가 왜 다양한 속도의 저장장치를 계층적으로 구성하는지 알아보겠습니다. 감사합니다.

저작자표시 비영리 변경금지 (새창열림)

'크래프톤 정글 > 컴퓨터구조(CSAPP)' 카테고리의 다른 글

[CSAPP 6장 완전 정복] 6.4 캐시 메모리 핵심 정리  (0) 2025.04.29
[CSAPP 6장 완전 정복] 6.3 메모리 계층구조 제대로 이해하기  (0) 2025.04.29
[CSAPP 9장 완전 정복] 9.11~9.12 C 프로그램에서 자주 발생하는 메모리 버그와 9장 전체 요약  (0) 2025.04.26
[CSAPP 9장 완전 정복] 9.10 가비지 컬렉션(Garbage Collection) 이해하기  (0) 2025.04.26
[CSAPP 9장 완전 정복] 9.9(Part 12) 최종 정리: 간단한 동적 메모리 할당기 설계 방향  (0) 2025.04.26
'크래프톤 정글/컴퓨터구조(CSAPP)' 카테고리의 다른 글
  • [CSAPP 6장 완전 정복] 6.4 캐시 메모리 핵심 정리
  • [CSAPP 6장 완전 정복] 6.3 메모리 계층구조 제대로 이해하기
  • [CSAPP 9장 완전 정복] 9.11~9.12 C 프로그램에서 자주 발생하는 메모리 버그와 9장 전체 요약
  • [CSAPP 9장 완전 정복] 9.10 가비지 컬렉션(Garbage Collection) 이해하기
그냥사람_
그냥사람_
IT 관련 포스팅을 합니다. 크래프톤 정글 8기 정경호
  • 그냥사람_
    그냥코딩
    그냥사람_
  • 전체
    오늘
    어제
    • 글 전체보기 N
      • 크래프톤 정글 N
        • 로드 투 정글(입학시험)
        • CS기초(키워드, 개념정리)
        • 컴퓨터구조(CSAPP)
        • Code 정글(C언어)
        • Equipped in 정글(나만무) N
        • 마이 정글(WIL, 에세이)
      • 자료구조&알고리즘
        • 자료구조
        • 알고리즘
      • 일상
  • 블로그 메뉴

    • 홈
  • 링크

    • Github
  • hELLO· Designed By정상우.v4.10.3
그냥사람_
[CSAPP 6장 완전 정복] 6.1~6.2 저장장치 기술과 지역성(Locality) 개념 이해하기
상단으로

티스토리툴바