본문 바로가기
컴퓨터 구조

제 6장 외부 기억장치(I/O 모듈에 연결된 기억장치)

by ash9river 2024. 3. 28.

제 6장 외부 기억장치(I/O 모듈에 연결된 기억장치)

자기 디스크

  • 디스크는 자성 물질로 코팅된 서브스트레이트라고 불리는, 비자성 물질로 만들어진 원형 평판
    • 최근에는 유리 서브스트레이트가 소개됨
  • read current가 자기저항을 읽고, write currnet가 유도성 쓰기를 함

디스크 배치

KakaoTalk_20231023_153538725


윈체스터 디스크 형식



디스크의 특성들

  • 고정-헤드 디스크
    • 트랙당 한 개의 읽기-쓰기 헤드
  • 이동가능-헤드 디스크
    • 하나의 읽기-쓰기 헤드
  • 제거 불가능 디스크
    • 디스크 드라이브 내에 영구히 장착
  • 제거 가능 디스크
  • 이중-면 디스크
    • 평판의 양면에 자성을 가지고 있는 물질이 코팅

디스크 헤드 메커니즘

  • 읽기와 쓱기를 올바르게 수행하기 위해서는 헤드가 충분한 전자장을 발생시키고, 감지할 수 있어야 한다.
  • 헤드는 가늘수록 평판에 더 가깝게 접근해야 한다.
    • 헤드가 좁으면 트랙도 좁아져서 밀도가 증가한다.
  • 디스크에 헤드가 가까울수록 불순물이나 결함에 의한 오류 발생 가능성이 더 크다.


전형적인 하드 디스크 파라미터



디스크 I/O 전송의 타이밍



디스크 성능 파라미터들

  • 디스크 드라이브가 동작 중일 때 디스크는 일정한 속도로 회전한다.
  • 읽기나 쓰기를 하려 할 때는 헤드가 원하는 트랙과 그 트랙 내의 원하는 섹터의 시작점에 위치
  • 탐색 시간(seek time)
    • 이동-헤드 시스템에서 헤드가 원하는 트랙까지 이동하는데 걸리는 시간
  • 회전 지연(rootational latency)
    • 섹터가 헤드에 도달할 때까지 걸리는 시간
  • 액세스 시간
    • 액세스 시간 = 탐색 시간 + 회전 지연
    • 읽거나 쓸 위치를 정하는데 걸리는 시간
  • 전송 시간(transfer time)
    • 헤드가 적절한 위치에 놓이면 읽기/쓰기 동작은 그 섹터가 헤드 밑을 지나가는 동안 수행
    • 이 동작의 데이터 전송 부분에 해당된다.


RAID(cluster:bank와 유사)

  • 7 가지 레벨
  • 레벨들은 서로 계층적인 관계를 갖지 않으며, 세가지 공통적인 특징을 공유하는 다른 설계 구조이다.
    1. RAID는 운영체제에 의해 하나의 논리적 드라이브로 보여지는 물리적 디스크 드라이브들의 집합
    2. 데이터는 스트라이핑(striping)으로 알려진 방법으로 배열을 이루고 있는 물리적인 디스크 드라이브들에 분산
    3. 여분의 디스크 용량(redundant disk capacity)은 디스크 오류 발생 시 데이터 복구를 보장하기 위한 패리티 정보를 저장할 때 사용

RAID 레벨들


KakaoTalk_20231023_155714392


RAID 레벨 0 데이터 매핑



RAID 레벨에 따른 특징

RAID 레벨 0

  • 높은 데이터 전송 용량

    • 높은 전송률의 두가지 조건
      • 호스트 메모리와 각 디스크 드라이브 사이의 모든 경로들이 높은 전송 능력을 가지고 있어야 한다.
      • 디스크 배열을 효과적으로 구동할 수 있도록 I/O requset를 만들어야 한다.
  • 높은 I/O request rate

    • 각 I/O request를 처리하는 데 걸리는 I/O 시간은 디스크 헤드의 움직임(탐색 시간)과 디스크의 움직임(회전 지연)이 대부분이다.

    • 디스크 배열이 여러 디스크들에 I/O request를 균등하게 분배함으로써 high I/O requset rate 제공한다.

    • 만약 스트립의 크기가 커서 하나의 I/O request가 단 한번의 액세스로 처리될 수 있다면, 대기중인 여러 개의 I/O request가 병렬로 처리해서 각 요구 대기시간 감소한다.


RAID 레벨 1

  • 특성
    • RAID 레벨 1은 여분을 구현하는 방법이 다른 RAID들과 다르다.
    • 단순히 모든 데이터를 복사해서 여분을 구현.
    • 데이터 스트라이핑(data striping)이 사용되었다.
    • 각 논리적 스트립이 두 개의 물리적 디스크로 사상되어서 배열 내의 모든 디스크들은 동일한 데이터를 저장하는 미러 디스크(mirror disk)를 가지게 됨.
  • 긍정적인 면
    • 읽기 요구는 요구된 데이터를 가지고 두 개의 디스크들 중에서 탐색 시간과 회전 시간이 더 짧은 디스크에 의해 서비스 받을 수 있다.
    • 쓰기 패널티가 없다.
    • 오류에 대한 복구가 간단하다.
    • 모든 데이터의 실시간 복사를 제공한다.
    • 주요 단점은 비용

RAID 레벨 2

  • 특성
    • 병렬 액세스 기술을 사용
    • 병렬 액세스 배얄에서는 각 I/O request의 처리에 모든 디스크들이 참여
    • 드라이브들의 회전은 동기화 되어서 각 디스크 헤드는 어느시간이든 디스크 상의 동일한 위치에 있다.
    • 데이터 스트라이핑 사용
    • 스트립은 byte or word 정도로 매우 작다.
  • 성능
    • 단일 오류 비트는 고칠 수 있고, 두 비트 오류는 검출까지만 할 수 있는 해밍 코드 사용
    • 야분 디스크들의 수는 데이터 디스크 수의 로그 값에 비례
    • 디스크 오류가 많이 발생하는 환경에서만 효과적

RAID 레벨 3

  • 여분
    • 배열이 아무리 크더라도 여분 디스크는 한개만 필요
    • 병령 액세스가 사용되며, 데이터는 작은 스트립으로 분산
    • 오류 정정 코드 대신에 모든 데이터들의 같은 위치에 있는 비트들에 대하여 계산되는 패리티 비트 사용
    • 높은 데이터 전송률
  • 성능
    • 어느 한 드라이브에 결함 발생시 패리티 드라이브 액세스하고 남아있는 다른 드라이브를 이용하여 데이터 재구성
    • 결함이 발생한 디스크 교체되면 잃어버린 데이터는 새로운 드라이브에 복구되고 다시 작동 시작
    • 디스크 결함이 발생하더라도 모든 데이터들은 축소 모드로서 사용가능
    • 트랜잭션 중심 환경에서는 성능 저하

RAID 레벨 4

  • 특성

    • 독립적인 액세스 기술 사용
    • 데이터 스트라이핑 사용
    • 새로운 패리티를 계싼하기 위해서 배열 관리 소프트웨어는 이전의 사용자 스트립과 이전의 패리티 스트립을 읽어햐함
  • 성능

    • 작은 크기의 I/O write request가 수행될 떄는 write penalty 수반
    • 쓰기가 발생될 때마다 패리티 비트도 갱신
    • 각 스트립 쓰기는 두 번의 read와 두 번의 write 포함(data+strip)
    • 패리티에 병목현상 발생

    RAID 레벨 5

  • 특성

    • RAID 4와 유사한 방식으로 구성
    • RAID 4와 다르게 패리티 스트립이 모든 디스크들에 분산 저장해서 I/O 병목 피함
    • 라운드-로빈 방식으로 패리티 배치

RAID 레벨 6

  • 특성

    • 두 가지 서로 다른 패리티 계산이 수행되어서 서로 다른 디스크들의 별도 블록들에 저장
    • 높은 데이터 가용성(신뢰도:data availability) 제공
    • 매 쓰기 동작마다 두 개의 패리티 블록 갱신해야 되서 상당한 쓰기 패널티 유발

    RAID 비교

KakaoTalk_20231023_171835926



솔리드 스테이트 드라이브(SSD)

  • 하드 디스크 드라이브의 대체물로서 사용될 수 있는 고체장치 요소들로 만들어지는 기억장치
  • 플래시 메모리
    • 반도체 기억장치의 한 유형
    • NOR
      • 주로 실행 관련
      • 액세스 기본 단위는 1 비트
      • 고속의 임의 액세스 제공
    • NAND
      • 기본 단위는 16 or 32 비트
      • 작은 블록 단위로 읽기/쓰기
      • 임의-액세스 외부 주소 버스를 제공하지 않아서 블록 단위 기반으로 읽어야함

SSD 조직



실제적 이슈들

  • HDD에서는 없지만 SDD에서만 존재하는 두가지 실제적 이슈
    • SSD의 성능은 그 장치가 사용될수록 저하된다.
      • 전체 블록이 플래시 메모리로부터 읽혀서 RAM 버퍼에 들어가야한다.
      • 블록이 플래시 메모리에 되쓰여지기(write back) 전에 플래시 메모리의 해당 블록 전체가 삭제되어야 한다.
      • 버퍼로부터 전체 블록이 플래시 메모리로 되쓰여진다.
    • 플래시 메모리는 어떤 횟수의 쓰기를 한 이후에는 사용할 수 없다.
      • 수명을 연장시키는 알고리즘 사용
      • 대부분의 플래시 장치들은 남은 수명 추정하여 결함 예측 및 선점 동작(preemptive action)을 취함.


CD-ROM(Compact Disk-Read Only Memory)

KakaoTalk_20231023_181431106

  • CD-ROM의 장점

    • 광 디스크는 저장된 정보와 함께 저렴한 가격으로 대량 복제 가능
    • 광 디스크는 제거될 수 있어서 디스크 자체가 기록 보관용 저장장치로 사용 가능
  • CD-ROM의 단점

    • 읽기만 가능하고 갱신 불가능
    • 액세스 시간이 자기 디스크보다 0.5초 더 길다.


    자기 테이프

    • 은행/전산/기록/신문 등 오래된 자료 보관할 때 사용

'컴퓨터 구조' 카테고리의 다른 글

제 8장 운영 체제 지원  (0) 2024.03.28
제 7장 입력/출력  (1) 2024.03.28
제 5장 내부 기억장치  (0) 2024.03.28
제 4장 캐시 메모리  (0) 2024.03.28
제 3장 최상위에서 본 컴퓨터의 기능 및 상호연결  (0) 2024.03.28