카테고리 없음

[혼공컴운 3주차] Chapter 6 ~ 8

Ejxnzn 2024. 1. 17. 22:09

 

RAM의 종류

  • DRAM : 저장된 데이터가 동족으로 사라지는 RAM, 데이터 소멸을 막기 위해 주기적으로 재활성화
  • SRAM : 전원을 끄지 않으면 저장된 데이터가 사라지지 않음
  • SDRAM : 클럭 신호에 맞춰 CPU와 정보를 주고받을 수 있는 DRAM
  • DDR SDRAM : 최근 가장 흔히 사용되는 RAM, 대역폭을 넓혀 속도를 빠르게 만든 SDRAM

메모리의 주소 공간

  • 물리 주소 : 메모리 하드웨어가 사용하는 주소
  • 논리 주소 : CPU와 실행 중인 프로그램이 사용하는 주소
  • 메모리 관리 장치(MMU) : 논리 주소와 물리 주소 간의 변환은 CPU와 주소 버스 사이에 위치한 MMU라는 하드웨어에 의해 수행

메모리 보호 기법

  • 한계 레지스터 : 논리 주소의 최대 크기를 저장

캐시 메모리

  • 캐시 메모리 : 레지스터보다 용량이 크기 메모리보다 빠른 SRAM 기반의 저장 장치
  • L1캐시 : 코어 내부에 위치해 있고 코어와 가장 가까운 캐시 메모리
  • L2캐시 : 코어 내부에 위치해 있고 L1캐시보다는 먼 캐시 메모리
  • L3캐시 : 코어 외부에 위치

참조 지역성 원리

  • 캐시 메모리 : CPU가 사용할 법한 대상을 예측하여 저장
  • 캐시 히트 : 캐시 메모리가 예측한 데이터가 맞은 경우
  • 캐시 미스 : 캐시 메모리가 예측한 데이터가 틀린 경우
  • CPU는 최근에 접근했던 메모리 고안에 다시 접근하려는 경향이 있음
  • CPU는 접근한 메모리 공간 근처를 접근하려는 경향이 있음

 

다양한 보조기억장치

  • 하드 디스크 : 자기적인 방식으로 데이터를 저장하는 보조기억장치
    • 플래터 : 하드 디스크에서 실질적으로 데이터가 저장되는 곳 아래 동그란 원판 
    • 스핀들 : 플래터를 회전시키는 구성 요소
    • RPM : 분당 회전수를 나타내는 단위
    • 헤드 : 플래터를 대상으로 데이터를 읽고 쓰는 구성 요소
    • 디스크 암 : 원하는 위치로 헤드를 이동
    • 트랙 : 플래터를 여러 동심원으로 나누었을 때 그중 하나의 원
    • 섹터 : 트랙의 한 조각
    • 실린더 : 여러 겹의 플래터 상에서 같은 트랙이 위치한 곳을 모아 연결한 논리적 단위
  • 하드 디스크가 저장된 데이터를 접근하는 시간
    • 탐색 시간 : 접근하려는 데이터가 저장된 트랙까지 헤드를 이동시키는 시간
    • 회전 지연 : 헤드가 있는 곳으로 플래터를 회전시키는 시간 
    • 전송 시간 : 하드 디스크와 컴퓨터 간에 데이터를 전송하는 시간
  • 플래시 메모리
    • 플래시 메모리 : 전기적으로 데이터를 읽고 쓸 수 있는 반도체 기반의 저장 장치
      1. SLC 타입 : 한 셀로 2개의 정보를 표현
      2. MLC 타입 : 한 셀로 4개의 정보를 표현
      3. TLC 타입 : 한 셀로 8개의 정보를 표현
구분 SLC MLC TLC
셀 당 bit 1bit 2bit 3bit
수명 길다 보통 짧다
읽기 / 쓰기 속도 빠르다 보통 느리다
용량 대비 가격 높다 보통 낮다

 

 

RAID의 정의와 종류

  • RAID : 데이터의 안전성 혹은 높은 성능을 위해 여러 하드 디스크나 SSD를 마치 하나의 장치처럼 사용하는 기술
  • RAID의 종류
    • RAID 0 : 여러 개의 보조기억장치에 데이터를 단순히 나누어 저장하는 구성 방식
    • RAID 1 : RAID 0의 단점을 보완하고자 RAID 0과 같은 저장 공간에 절반을 완전한 복사본을 만듦
    • RAID 4 : 패리티를 저장한 장치를 따로 두는 방식
    • RAID 5 : 패리티를 분산하여 저장하는 방식
    • RAID 6 : 서로 다른 2개의 패리티를 두는 방식

 

 

장치 컨트롤러와 장치 드라이버

  • 장치 컨트롤러 : 입출력장치는 컴퓨터에 직접 연결되지 않고 장치 컨트롤러라는 하드웨어를 통해 연결
  • 장치 컨드롤러 기능
    • CPU와 입출력장치 간의 통신 중개
    • 오류 검출
    • 데이터 버퍼링 : 전송률이 높은 장치와 낮은 장치 사이에 주고받는 데이터를 버퍼라는 임시공간에 저장하여 전송률을 비슷하게 맞추는 방법
  • 장치 컨트롤러으 간략화된 내부 구조
    • 데이터 레지스터 : CPU와 입출력장치 사이에 주고받을 데이터가 담기는 레지스터
    • 상태 레지스터 : 입출력장치가 입출력 작업을 할 준비가 되었는지, 입출력 작업이 완료되었는지, 입출력장치에 오류는 없는지 등의 상태 정보 저장되는 레지스터
    • 제어 레지스터 : 입출력장치가 수행할 내용에 대한 제어 정보와 명령을 저장
  • 장치 드라이버 : 장치 컨트롤러가 컴퓨터 내부와 정보를 주고받을 수 있게 하는 프로그램

다양한 입출력 방법

  • 프로그램 입출력 : 프로그램 속 명령어로 입출력장치를 제어하는 방법
    • 메모리 맵 입출력 : 메모리에 접근하기 위한 주소 공간과 입출력장치에 접근하기 위한 주소 공간을 하나의 주소 공간으로 간주하는 방법
    • 고립형 입출력 : 메모리를 위한 주소 공간과 입출력장치를 위한 주소 공간을 분리하는 방법
  • 인터럽트 기반 입출력 : 인터럽트로써 입출력을 수행하는 방법
  • DMA 입출력 : CPU를 거치지 않고 메모리와 입출력장치 간의 데이터를 주고받는 입출력 방식
    • DMA : 입출력장치와 메모리가 CPU를 거치지 않고도 상호작용할 수 있는 입출력 방식
    • DMA 컨트롤러 : DMA 입출력을 하기 위해서는 시스텀 버스에 연결된 DMA 컨트롤러라는 하드웨어가 필요
    • DMA 입출력 과정
      1. CPU는 DMA 컨트롤러에 입출력장치의 주소, 수행할 연산, 읽거나 쓸 메모리의 주소 등과 같은 정보로 입출력 작업을 명령
      2. DMA 컨트롤러는 CPU 대신 장치 컨트롤러와 상호작용하며 입출력 작업을 수행, 이때 DMA 컨트롤러는 필요한 경우 메모리에 직접 접근하여 정보를 읽거나 씀
      3. 입출력 작업이 끝나면 DMA 컨트롤러는 CPU에 인터럽트를 걸어 작업이 끝났음을 알림
  • 입출력 버스 : 입출력장치와 컴퓨터 내부를 연결 짓는 통로

 

 

기본미션 p.185 확인 문제 3번 정답

 

1 SRAM

2. DRAM

3. DRAM

4. SRAM

 

기본미션 p.205 확인 문제 1번 정답

 

1. 레지스터

2. 캐시 메모리

3. 메모리

4. 보조기억장치

 

선택 미션 RAID의 정의와 종류를 간단히 정리 

  • RAID : 데이터의 안전성 혹은 높은 성능을 위해 여러 하드 디스크나 SSD를 마치 하나의 장치처럼 사용하는 기술
  • RAID의 종류
    • RAID 0 : 여러 개의 보조기억장치에 데이터를 단순히 나누어 저장하는 구성 방식
    • RAID 1 : RAID 0의 단점을 보완하고자 RAID 0과 같은 저장 공간에 절반을 완전한 복사본을 만듦
    • RAID 4 : 패리티를 저장한 장치를 따로 두는 방식
    • RAID 5 : 패리티를 분산하여 저장하는 방식
    • RAID 6 : 서로 다른 2개의 패리티를 두는 방식