자격증

정보처리기능사 - 5. 입출력 제어 및 기억장치

Beekei 2025. 3. 16. 01:56
반응형

채널/DMA

채널(Channel)

CPU의 제어장치로부터 명령어를 받아 CPU 대신 독립적으로 입출력을 관리하는 것

주기억장치와 입출력장치 중간에 위치, 입출력장치와 CPU의 속도차로 인한 단점을 해결

채널의 종류

채널 설명
Selector Channel(선택 채널) 특정한 한개의 고속 입출력장치 제어하는 채널
Multiplexer Channel
Byte Multiplexer Channel
(다중 채널)
동시에 여러개의 저속 입출력장치를 제어하는 채널
Block Multiplexer Channel 동시에 여러개의 고속 입출력장치를 제어하는 채널

DMA(Direct Memory Access, 직접 메모리 접근)

CPU의 참여 없이 입출력장치와 메모리가 직접 데이터를 주고받는 것, 시스템의 전방적인 속도가 향상

주요 구성 요소

  • 인터페이스 회로
  • 주소 레지스터
  • 데이터 카운터 레지스터
  • 제어 레지스터
  • 데이터 레지스터

버퍼링과 스풀링

구분 버퍼링  스풀링
목표 입출력장치와 CPU간의 속도 차리 해결
저장장치 주기억장치 보조기억장치
운영장치 단일 작업 다중 작업
구현방식 하드웨어 소프트웨어

인터럽트(Interrupt)

프로그램을 실행하는 도중에 예기치 않은 상황이 발생할 경우, 현재 실행 중인 작업을 즉시 중단하고 발생된 상황을 우선 처리한 후 실행 중인 작업으로 복귀하여 계속 처리하는 것(끼어들기)

인터럽트가 발생하면 인터럽트를 처리하고 되돌아올 주소를 스택(Stack)에 저장

인터럽트 우선순위 판별

동시에 여러 인터럽트가 발생할 경우 우선순위 판별 방법에는 소프트웨어 방법으로는 폴링, 하드웨어 방법으로는 데이지 체인, 병렬 우선 처리가 존재

인터럽트의 종류 및 발생 원인

인터럽트 발생원인
정전 인터럽트(하드웨어) 정전이 되거나 전원의 이상에 의해 발생
기계 착오 인터럽트(하드웨어) CPU의 기능적인 오류 동작에 의해 발생
외부 인터럽트(하드웨어) 입출력장치, 타이밍 장치, 오퍼레이터의 조작에 의해 발생
입출력(I/O) 인터럽트(하드웨어) 입출력 조작의 종료 및 입출력 착오 등에 의해 발생
소프트웨어 인터럽트 프로그램 처리 중 명령의 요청에 의해 발생 (SVC: SuperVisor Call)

 


주기억장치

CPU가 직접 접근하여 데이터를 처리할 수 있는 기억장치(Memory)

현재 수행되는 프로그램과 데이터를 저장하고 주소(Address)에 의해 저장된 위치를 구분

ROM(Read Only Memory, 롬)

기억된 내용을 읽을 수만 있는 기억장치

전원이 꺼져도 기억된 내용이 지워지지 않는 비휘발성 메모리

ROM의 종류와 특징

내용의 수정 가능 여부 및 기록 방법에 따라 분류

종류 특징
Mask ROM 제조 과정에서 미리 내용을 기억, 사용자가 임의로 수정할 수 없음
PROM(Programmable ROM) 특수 프로그램을 이용하여 한번만 기록 가능, 이후엔 읽기만 가능
EPROM(Erasable PROM) 자외선을 이용하여 내용을 기록 및 여러 번 수정 가능
EEPROM(Electrically EPROM) 전기적인 방법을 이용하여 내용을 기록 및 여러번 수정 가능

 

RAM(Random Access Memory, 램)

자유롭게 읽고(Read) 쓸(Write) 수 있는 기억장치

전원이 꺼지면 기억된 내용이 사라지는 휘발성 메모리

RAM의 종류와 특징

재충전 여부에 따라 분류

구분 동적 램(DRAM: Dynamic RAM) 정적 램(SRAM: Static RAM)
구성 소자 콘덴서 플립플롭
특징 전원이 공급되어도 일정 시간이 지나면 전하가 방전되므로 주기적인 재충전(Refresh) 필요 전원이 공급되는 동안에는 기억 내용이 유지
전력 소모 적음 많음
접근 속도 느림 빠름
집적도(밀도) 높음 낮음
가격 저가 고가
용도 일반적인 주기억장치 캐시 메모리

기타 메모리

명칭 특징
캐시 메모리(Cache Memory) CPU와 주기억장치 사이에 위치, 컴퓨터의 처리 속도 향상
접근 속도가 가장 빠른 정적 램(SRAM) 사용
캐시 적중률(Cache Hit Ratio)이 높을수록 시스템 속도 향상
일반 메모리보다 고가
가상 메모리(Virtual Memory) 보조기억장치(하드디스크)의 일부를 주기억장치처럼 사용하는 메모리 기법
주기억장치보다 큰 프로그램을 불러와 실행해야 할 때 유용하게 사용
버퍼 메모리(Buffet Memory) 두 개의 장치가 데이터를 주고받을 때 속도 차이를 해결하기 위해 중간에 데이터를 임시로 저장해 두는 공간
캐시 메모리도 일종의 버퍼
연관 메모리(Accociative Memory) 주소를 참조하지 않고 저장된 내용의 일부를 이용하여 접근 후 데이터를 읽어오는 기억장치
가상 메모리나 캐시 메모리의 주소 변환 데이블에서 사용
검색 자료(데이터), 레지스터, 키(마스크), 레지스터, 매치 레지스터(일치 지시기)
플래시 메모리(Flash Memory) EEPROM의 일종으로 비휘발성 메모리
MP3플레이어, 개인용 정보단말기, 휴대전화, 디지털 카메라 등 널리 사용

보조기억장치

주기억장치의 단점을 보완하기 위한 기억장치

주기억장치에 비해 속도는 느리지만 용량이 크고, 전원이 차단되어도 내용이 그대로 유지

자기 테이프(Magnetic Tape)

SASD 방식으로 데이터가 처리되는 대용량 저장 매체

가격이 저렴하고 용량이 커서 자료 백업용으로 사용

※ 순차 접근 저장 매체(SASD: Sequential Access Storage Device)
자료가 저장된 위치에 접근할 때, 처음부터 순서대로 접근하여 원하는 위치를 검색하는 메모리

자기 테이프의 구조 및 관련 용어

자기 테이프

용어 설명
BOT(Beginning Of Tape) 자기 테이프의 시작 위
EOT(End Of Tape) 자기 테이프의 끝 위치
BPI(Byte Per Inch) 1인치에 기억할 수 있는 Byte 수(기록밀도)
GAP 레코드와 레코드 사이의 데이터를 기록할 수 없는 공간
IRG(Inter Record Gap) 레코드와 레코드 사이의 갭
IBG(Inter Block Gap) 블록과 블록 사이의 갭
Block 한 개 이상의 논리 레코드의 집합으로 입출력의 단위(물리 레코드)

블로킹(Blocking)

한 개 이상의 논리 레코드를 묶어서 테이프에 기록하는 방식

많은 데이터를 저장, 처리 속도를 향상, 기억공간 낭비 감소, 입출력 횟수 감소를 위해 사용

 

블로킹(Blocking) / 비블로킹(Unblocking)

※ 블록화 인수(BF: Blocking Factor)
하나의 블록을 구성하는 논리 레코드의 개수 (위 이미지의 블록화 인수는 3)

자기 디스크(Magnetic Disk)

자성 물질을 입힌 금속 원판을 여러 장 겹쳐서 만든 기억매체, 용량이 크고 접근 속도가 빠름

순차, 비순차(직접) 처리가 모두 가능한 DASD 방식으로 데이터 처리

※ 직접 접근 저장 매체(DASD: Direct Access Storage Device)
순서를 거치치 않고 자료가 저장된 위치를 직접 접근할 수 있는 메모리(자기 테이프를 제외한 모든 기억장치)
※ 디스크의 양면 기록
디스크는 양면에 기록할 수 있지만, 디스크 팩의 가장 윗면과 가장 아랫면은 데이터를 기록하지 못함
예를 들어 디스크 팩이 6장으로 구성되었을 때 기록할 수 있는 면은 10장
6 x 2(양면) = 12 - 2(윗면, 아랫면) = 10

자기 디스크 관련 용어

출처: https://www.datarecoverytools.co.uk/2009/12/22/chs-lba-addressing-and-their-conversion-algorithms

용어 설명
트랙(Track) 회전축(스핀들 모터)를 중심으로 데이터가 기록되는 공간
섹터(Sector) 트랙을 일정하게 나눈 구간으로 정보 저장의 기본 단위
실린더(Cylinder) 여러 장의 디스크 판에서 같은 위치에 있는 트랙의 모임
실린더의 수는 트랙의 수와 일치
클러스터(Cluster) 여러 개의 섹터를 모은 것, 운영체제가 관리하는 파일 저장의 기본 단위
TPI(Tracks Per Inch) 1인치(Inch)에 기록할 수 있는 트랙의 수, 디스크의 기록밀도 단위
Seek Time(탐색 시간) 읽기/쓰기 헤드가 지정된 트랙(실린더)에 도달하는 데 걸리는 시간
Search Time
(Latency Time, 지연 시간)
읽기/쓰기 헤드가 지정된 트랙(실린더)를 찾은 후 원판이 회전하며 원하는 섹터의 읽기/쓰기가 시작될 때까지의 시간
Transmission Time(전송 시간) 읽은 데이터를 주기억장치로 보내는 데 걸리는 시간
Access Time(접근 시간) 데이터를 읽고 쓰는 데 걸리는 시간의 합
(Seek Time + Search Time + Transmission Time)

기억 용량의 단위

단위 Byte KB MB GB TB PB EB
읽기 바이트 키로 바이트 메가 바이트 기가 바이트 테라 바이트 페타 바이트 엑사 바이트
용량 8Bit 1,024Byte 1,024KB 1,024MB 1,024GB 1,024TB 1,024PB
2진수 표기 210 220 230 240 250 260
10진수 표기 103 106 109 1012 1015 1018
  • 크기 비교 : Byte < KB < MB < GB < TB < PB < EB

하드디스크

자성 물질을 입힌 금속 원판을 여러 장 겹쳐서 만든 기억매체, 개인용 컴퓨터에서 보조기억장치로 사용

저장 용량이 크고, 데이터 접근 속도가 빠르나 충격에 약해 본체 내부에 고정시켜 사용(이동이 불편)

CD-ROM(Compact Disk Read Only Memory)

두께 1.2mm, 지름 12cm 크기에 약 650MB의 대용량 정보를 저장하는 매체

화상이나 음성 정보 등의 멀티미디어 데이터를 저장하기에 적합

자기 디스크와 달리 연속된 나선형 트랙을 사용하므로 섹터의 길이가 일정

DVD(Digital Video Disk, Digital Versatile Disk)

화질과 음질이 뛰어난 멀티미디어 데이터를 저장할 수 있는 대용량 저장매체

CD와 같은 크기지만 양면을 모두 사용 가능, 4.7 ~ 17GB의 대용량 데이터 기록 가능

반응형