STUDY/정글

[정글] W5 퀴즈 (주요 내용 정리)

Nobb 2025. 10. 14. 15:52

<퀴즈 내 주요 개념 정리>

 


1- C언어에서의 작은따옴표(')와 큰따옴표(")는 완전히 다르게 취급된다.

 - 'a': int형상수 / char형

 - "a" : 문자열 배열

 

 


2- 캐시에서 공간지역성과 시간지역성의 개념

> 공간지역성: "옆집도 곧 방문할 확률 높음"

> 시간지역성: "방금 쓴 거 또 쓸 확률 높음"

 

 


3- 파일이름 -> 파일내용을 저장하기에 가장 적절한 자료구조

    : "해시테이블"

        > 이유: 1) 파일 이름을 key, 파일 내용을 value로 저장하면 됨.

                     2) 탐색 속도도 O(n)으로 매우 빠름 -> 캐시에서 자주 접근되는 데이터에 적합함.

                   3) 충돌(단점)은 해시체인이나 open-addressing으로 해결 가능함.

 

 


4- 캐시 용량 제한이 있을 때 오래된 항목 제거할 때 사용하는 효율적 알고리즘

    : "LRU" (Least Recently Used)

        > 의미: 오래 사용하지 않은 항목 제거 (->현실적, 효율적)

        > 그 외의 제거 알고리즘: FIFO , LFU(Least Frequently Used ; 사용 빈도 낮은 항목 제거- 구현 복잡함)

 

** 기본적으로 캐시는 빠르게 찾고 오래된 건 버리는 구조

 

 


5- 버스의 개념

  : CPU, 메모리, I/O장치 등 컴퓨터의 구성요소들을 연결하여 데이터,주소,제어 신호를 전달하는 통로

    > 버스 종류:

        -주소 버스  (cpu가 접근할 메모리 주소 전달)

        -데이터 버스  (실제 데이터 전송 통로)

        -제어 버스  (읽기/쓰기 등 제어신호 전달)

 

 


6- 주소 버스 비트수&메모리 크기 관계

   : 주소 버스의 비트 수가 클수록 CPU가 접근할 수 있는 메모리 주소 공간이 커진다.

    > 공식: [  주소 가능 메모리 용량 = 2ⁿ Byte  ]

 

** cpu는 64비트라도, 실제 주소버스는 그보다 작게 구현하는 경우가 많음.

    (ex. x86-64에선 논리적으론 64bit지만 실제론 48비트 주소버스만 사용)

 

** 이렇게 보면 주소버스 비트 수가 무조건 클수록 좋아보이지만,

    hw복잡도 상승, 비용증가, 낭비 가능성(실제 프로그램이 그만큼의 메모리 안 쓰면) 등의 이유로

    실제 필요량에 맞게 설계함.