SSAFY CS 스터디: 2주차 리뷰
- 범위: 이취컴 Chapter 02-4 ~ 02-5 (p.90~131)
- 참여형태: 🏹공격조
RAM의 특징을 설명하고, 용량이 크면 컴퓨터 속도가 무조건 빨라지는지 답변해주세요.
답변
RAM은 실행할 프로그램을 저장하는 휘발성 저장장치로, 임의의 위치에 곧장 접근할 수 있는 직접 접근 방식을 사용합니다.
RAM 용량이 크면 보조기억장치에서 데이터를 가져오는 빈도가 줄어들어 여러 프로그램을 동시에 실행할 때 유리하지만,
필요 이상으로 커진다고 해서 연산 속도 자체가 비례하여 향상되는 것은 아닙니다.
DRAM과 SRAM의 차이를 설명하고, 각각 어떤 용도로 주로 사용되는지 말씀해주세요.
답변
DRAM은 데이터가 점차 사라져 주기적인 재활성화가 필요하지만, 집적도가 높고 저렴해 메인 메모리로 주로 사용됩니다.
SRAM은 전원이 공급되는 한 데이터가 유지되고 속도가 매우 빠르지만, 비싸고 집적도가 낮아 캐시 메모리에 주로 사용됩니다.
빅 엔디안과 리틀 엔디안의 차이와 각각의 장점을 설명해주세요.
답변
빅 엔디안은 낮은 주소에 상위 바이트(MSB)부터 저장하며 사람이 읽고 디버깅하기에 직관적이라는 장점이 있습니다.
리틀 엔디안은 낮은 주소에 하위 바이트(LSB)부터 저장하며, 하위 비트부터 연산이 시작되는 컴퓨터 특성상 수치 계산이 효율적이라는 장점이 있습니다.
캐시 메모리의 역할과 L1, L2, L3 캐시의 일반적인 위치를 설명해주세요.
답변
캐시 메모리는 CPU와 메모리 사이의 속도 차이를 줄이기 위해 자주 사용하는 데이터를 미리 가져다 놓는 저장장치입니다.
일반적으로 L1과 L2 캐시는 각 코어 내부에 독립적으로 위치하고, L3 캐시는 코어 외부에 위치하여 여러 코어가 공유하는 구조를 가집니다.
캐시 적중률을 높이기 위한 참조 지역성의 원리 두 가지를 설명해주세요.
답변
최근에 접근했던 메모리 위치에 다시 접근하려는 경향인 시간 지역성과, 접근한 메모리 위치 근처에 다시 접근하려는 경향인 공간 지역성이 있습니다.
캐시는 이 원리를 바탕으로 다음에 CPU가 사용할 데이터를 예측하여 저장합니다.
캐시 쓰기 정책 중 '즉시 쓰기'와 '지연 쓰기'의 차이를 설명해주세요.
답변
즉시 쓰기는 캐시와 메모리에 데이터를 동시에 기록하여 일관성을 보장하지만 쓰기 속도가 느리고,
지연 쓰기는 캐시에만 먼저 기록한 뒤 나중에 메모리에 반영하여 속도가 빠르지만 캐시와 메모리 간 데이터가 일치하지 않는 구간이 발생할 수 있습니다.
RAID 0, 1, 5의 특징을 각각 짧게 요약해주세요.
답변
RAID 0: 데이터를 분산 저장(스트라이핑)하여 속도가 가장 빠르지만 하나만 고장 나도 데이터가 복구 불가능합니다.
RAID 1: 데이터를 복사본으로 저장(미러링)하여 안전성이 높지만 가용 용량이 절반으로 줄어듭니다.
RAID 5: 패리티 정보를 분산 저장하여 성능과 안전성을 모두 고려한 방식이며, 디스크 하나가 고장 나도 복구가 가능합니다.
장치 컨트롤러와 장치 드라이버의 차이를 설명해주세요.
답변
장치 컨트롤러는 입출력장치와 CPU 사이의 통신을 중개하는 하드웨어이며,
장치 드라이버는 이 컨트롤러를 동작시키고 운영체제와 연결해주는 소프트웨어입니다.
DMA가 왜 필요한지, 그리고 사이클 스틸링이 무엇인지 설명해주세요.
답변
모든 입출력 데이터를 CPU가 처리하면 오버헤드가 크기 때문에, CPU를 거치지 않고 장치와 메모리가 직접 데이터를 주고받기 위해 DMA가 필요합니다.
이 과정에서 DMA 컨트롤러와 CPU가 동시에 시스템 버스를 사용할 수 없으므로, DMA가 CPU로부터 버스 사용권을 얻어오는 것을 사이클 스틸링이라고 합니다.
GPU가 CPU를 완전히 대체할 수 없는 이유를 설명해주세요.
답변
GPU는 단순하고 반복적인 산술 연산을 수천 개의 코어로 병렬 처리하는 데 특화되어 있지만, 개별 코어의 성능은 CPU보다 낮고 복잡한 제어 로직을 수행하기 어렵기 때문입니다.
따라서 CPU는 범용적인 연산을, GPU는 대량의 그래픽이나 딥러닝 연산을 보조하는 형태로 협업합니다.