3주차
06 메모리와 캐시 메모리
06-1 RAM의 특징과 종류
- RAM은 휘발성 저장 장치(전원을 끄면 저장된 내용이 사라지는 저장 장치)
- 보조기억장치는 비휘발성 저장 장치(전원이 꺼져도 내용이 유지되는 저장 장치)
- RAM의 종류
06-2 메모리의 주소 공간
- 물리주소 : 메모리 하드웨어가 사용하는 주소
- 논리주소 : CPU와 실행 중인 프로그램이 사용하는 주소
- MMU : 논리 주소를 물리 주소로 변환합니다.
- 베이스 레지스터 : 프로그램의 첫 물리 주소를 저장
- 한계 레지스터 : 실행 중인 프로그램의 논리 주소의 최대 크기를 저장
06-3 캐시 메모리
- 저장 장치 계층 구조 : 각기 다른 용량과 성능의 저장 장치들을 계층화하여 표현한 구조
- 캐시 메모리 : CPU의 연산 속도와 메모리 접근 속도의 차이를 줄이기 위한 저장 장치
- 캐시 적중률이 높으면 CPU의 메모리 접근 횟수를 줄일 수 있습니다.
- 캐시 메모리는 참조 지역성의 원리에 따라 데이터를 예측하여 캐시 적중률을 높입니다.
- 참조 지역성 원리
- CPU가 메모리에 접근할 때의 주된 경향을 바탕으로 만들어진 원리
- 캐시 히트 : 자주 사용될 것으로 예측한 데이터가 실제로 들어맞아 캐시 메모리 내 데이터가 CPU에서 활용될 경우
- 캐시 미스 : 반대로 자주 사용될 것으로 예측하여 캐시 메모리에 저장했지만, 예측이 틀려 메모리에서 필요한 데이터를 직접 가져와야 하는 경우
- 캐시 적중률 : 캐시가 히트되는 비율
- 공간 지역성 : 접근한 메모리 공간 근처를 접근하려는 경향
07 보조기억장치
07-1 다양한 보조기억장치
- 하드 디스크의 구성 요소에는 플래터, 스핀들, 헤드, 디스크 암이 있습니다.
- 플래터는 트랙과 섹터로 나뉘고, 여러 플래터의 동일한 트랙이 모여 실린더를 이룹니다.
- 하드 디스크의 데이터 접근 시간은 크게 탐색 시간, 회전 지연, 전송 시간으로 나뉩니다.
- 플래시 메모리는 한 셀에 몇 비트를 저장할 수 있느냐에 따라 SLC, MLC, TLC로 나뉩니다.
- 플래시 메모리의 읽기와 쓰기는 페이지 단위로, 삭제는 블록 단위로 이루어집니다.
07-2 RAID의 정의와 종류
- RAID의 정의
- RAID는 주로 하드 디스크와 SSD를 사용하는 기술로, 데이터의 안정성 혹은 높은 성능을 위해 여러 개의 물리적 보조기억장치를 마치 하나의 논리적 보조기억장치처럼 사용하는 기술
- RAID의 종류
- RAID 레벨 : RAID 구성 방법
- RAID 0 : 여러 개의 보조기억장치에 데이터를 단순히 나누어 저장하는 구성 방식
- RAID 1 : 복사본을 만드는 방식, 속도는 RAID 0보다 느림
- RAID 4 : RAID 1처럼 완전한 복사본을 만드는 대신 오류를 검출하고 복구하기 위한 정보를 저장한 장치를 두는 구성 방식
- RAID 5 : 패리티 정보를 분산하여 저장하는 방식으로 RAID 4의 문제인 병목 현상을 해소
- RAID 6 : 기본적으로 RAID 5와 같으나, 다음 그림과 같이 서로 다른 두 개의 패리티를 두는 방식
08 입출력장치
08-1 장치 컨트롤러와 장치 드라이버
- 장치 컨트롤러 다루기가 까다로운 이유
- 첫째, 입출력장치에는 종류가 너무나도 많습니다.
- 둘째, 일반적으로 CPU와 메모리의 데이터 전송률은 높지만 입출력장치의 데이터 전송률은 낮습니다.
- 입출력장치는 장치 컨트롤러를 통해 컴퓨터 내부와 정보를 주고받습니다.
- 장치 드라이버는 장치 컨트롤러가 컴퓨터 내부와 정보를 주고받을 수 있게 하는 프로그램입니다.
08-2 다양한 입출력 방법
- 프로그램 입출력은 프로그램 속 명령어로 입출력 작업을 하는 방식입니다.
- 메모리 맵 입출력은 메모리에 접근하기 위한 주소 공간과 입출력장치에 접근하기 위한 주소 공간을 하나의 주소 공간으로 간주하는 입출력 방식입니다.
- 고립형 입출력은 메모리에 접근하기 위한 주소 공간과 입출력장치에 접근하기 위한 주소 공간을 별도로 분리하는 입출력 방식입니다.
- 인터럽트 기반 입출력은 인터럽트로써 입출력을 수행하는 방법입니다.
- DMA 입출력은 CPU를 거치지 않고 메모리와 입출력장치 간의 데이터를 주고받는 입출력 방식입니다.
- 입출력 버스는 입출력장치와 컴퓨터 내부를 연결 짓는 통로로, 입출력 작업 과정에서 시스템 버스 사용 횟수를 줄여줍니다.
[기본미션]
p. 185의 확인 문제 3번
다음 설명을 읽고 무엇에 대한 SRAM에 대한 설명인지 DRAM에 대한 설명인지 쓰세요.
SRAM, DRAM
- 주로 캐시 메모리로 활용됩니다.( 1 )
- 주로 주기억장치로 활용됩니다.( 2 )
- 대용량화하기 유리합니다.( 3 )
- 집적도가 상대적으로 낮습니다. ( 4 )
정답: 1번-SRAM , 2번-DRAM , 3번-DRAM , 4번-SRAM
p. 205의 확인 문제 1번
다음 보기에 있는 저장 장치들로 저장 장치 계층 구조 도식도를 채우세요.
보기 | 메모리, 보조기억장치, 캐시 메모리, 레지스터
정답: 1번-레지스터, 2번-캐시메모리, 3번-메모리, 4번-보조저장장치
[선택미션]
Ch.07(07-2) RAID의 정의와 종류를 간단히 정리해 보기
- RAID의 정의
- RAID는 주로 하드 디스크와 SSD를 사용하는 기술로, 데이터의 안정성 혹은 높은 성능을 위해 여러 개의 물리적 보조기억장치를 마치 하나의 논리적 보조기억장치처럼 사용하는 기술
- RAID의 종류
- RAID 레벨 : RAID 구성 방법
- RAID 0 : 여러 개의 보조기억장치에 데이터를 단순히 나누어 저장하는 구성 방식
- RAID 1 : 복사본을 만드는 방식, 속도는 RAID 0보다 느림
- RAID 4 : RAID 1처럼 완전한 복사본을 만드는 대신 오류를 검출하고 복구하기 위한 정보를 저장한 장치를 두는 구성 방식
- RAID 5 : 패리티 정보를 분산하여 저장하는 방식으로 RAID 4의 문제인 병목 현상을 해소
- RAID 6 : 기본적으로 RAID 5와 같으나, 다음 그림과 같이 서로 다른 두 개의 패리티를 두는 방식