컴퓨터 시스템의 기본 구조
- 하드웨어(전자회로 등의 물리적 장치) + 소프트웨어(하드웨어를 활용할 수 있는 기본적인 프로그램과 관련 기술)
하드웨어
- 컴퓨터를 구성하는 물리적인 장치들의 집합
- 중앙처리장치, 롬, 램 등의 핵심 부품을 장착한 메인보드 + 디스크 드라이브 등의 보조 기억장치 + 전원/입력/출력 장치 등
중앙처리장치 : 연산장치, 제어장치, 레지스터 등
- 연산장치(ALI) : 사칙연산 및 논리연산을 통해 자료의 비교, 판단, 이동, 편집 등을 수행
- 제어장치(Control Unit) : 프로그램의 명령을 해석하고 명령에 따라 각 장치의 작업을 지시하고 감독
- 개인용 컴퓨터에서는 중앙처리장치를 마이크로프로세서라고도 부름
- 명령을 수항해고 데이터를 처리하는 장치로, 주기억장치에 입력된 데이터를 처리하여 결과를 출력(두뇌)
입력장치 : 문자, 기호 등의 데이터를 컴퓨터가 인식할 수 있는 전기적 신호장치로 변환(키보드, 마우스, 터치스크린, 센서 등)
출럭장치 : 중앙처리장치가 처리한 결과를 출력하는 장치(모니터, 스피커, 프린터, 플로터 등)
주기억장치 : 컴퓨터 내에서 명령어와 데이터들을 기억하는 저장장치(입력장치에서 입력된 데이터를 저장)
보조기억장치 : 하드디스크, SSD 등(교안 : 자기 디스크, 자기 테이프, 디스켓, 하드 디스크, CD-ROM, DVD, USB 등)
소프트웨어
시스템 소프트웨어(System Software)
- 사용자가 복잡한 하드웨어를 모르고서도 사용할 수 있도록 도와주는 프로그램
- 운영체제, 언어 번역 프로그램, 유틸리티 등
- 운영체제 : 컴퓨터의 전체적인 작동을 관리하는 프로그램, 사용자가 컴퓨터 시스템을 편리하고 효율적으로 사용할 수 있는 방법을 제공
- 언어 번역 프로그램 : 어셈블러(어셈블리 프로그램 번역), 컴파일러(고급 언어 번역), 인터프리터, 프리프로세서
- 유틸리티 프로그램 : 컴퓨터의 조작을 편리하게 해주는 프로그램(컴퓨터 제조사에서 대부분 제공)
디바이스 드라이버(Device Driver) : 하드웨어와 운영체제의 중간에 위치, 하드웨어 장치들을 동작시키는 일을 담당
펌웨어(Firmware) : 시스템 효율을 높이기 위해 ROM에 들어 있는 기본적인 프로그램, 하드웨어의 특성을 가지고 있으나 소프트웨어에 가까움, 전형적인 처리 루틴, 비휘발성, 변경 불가 등의 특징
중앙처리장치 구조
마이크로프로세서
- 중앙처리장치를 한 개의 칩으로 구현한 것으로 비트 수가 클수록 성능이 좋음
- 중앙처리장치의 한 종류이므로 연산장치, 제어장치, 레지스터 등으로 구성
- 과거에 인텔 80286, 80386, 80486, 펜티엄 시리즈가 있었으며, 현재 Inter Core, AMD RYZEN 등이 대중적
연산장치(Arithmetic and Logic Unit : ALU) : 산술연산(사칙연산) 및 논리연산(논리합, 논리곱, 논리부정 등)
제어장치(Control Unit)
- 프로그램에 의해 주어지는 연산의 순서를 차례대로 실행하기 위해 기억장치, 연산장치, 입출력장치에 제어신호를 보내고, 이들 장치로 부터 신호를 받아 다음에 처리할 작업을 제어
- 페치 단계(Fetch Cycle) : 명령어를 해독(Decode)하여 제어장치 내의 명령어 레지스터에 저장하는 단계
- 실행 단계(Execution Cycle) : 명령어 레지스터에 기억된 명령어에 따라 명령어를 실행하는 단계
중앙처리장치 종류
CISC(Complex Insturction Set Computer)
- 마이크로 프로그래밍을 통해 다양한 명령어 형식을 제공
- 명령어의 수가 많고 구조가 복잡하여 생산 단가가 비쌈
- 일반 PC에 사용되는 인텔/AMD 계열의 CPU에 사용
RISC(Reduced Instruction Set Computer)
- 연산속도를 향상시키기 위해 제어 논리를 단순화시킴
- CISC에 비해 단순화된 명령어 구조, 가격이 저렴하여 주로 워크스테이션에 쓰임
- 특별한 설계 방법을 통해 속도를 최대한 높일 수 있음
- ARM에서 RISC CPU를 생산
명령어
- 중앙처리장치는 주기억장치에 기억된 프로그램 명령어를 호출(페치 과정)하고 해독하여, 자료를 이동시키고 연산/입출력을 수행(실행 과정)
- 명령어를 페치하는 시간을 페치 사이클(Fetch Cycle)이라고 하고, 명령어가 수행되는 시간을 실행 사이클(Execution Cycle)이라고 함
- 하나의 명령어 실행 사이클이 실행되는 시간을 명령어 사이클(Instruction Cycle : 페치 + 실행)이라고 함
인터럽트 : 프로그램의 실행 도중 운영체제나 시스템에 의해서 실행 중인 프로그램이 잠시 중단된 후 특정한 작업을 수행하는 것으로, I/O(입출력) 인터럽트, 시스템 호출 인터럽트 등이 있음
명령어의 실행 사이클
- 페치 사이클 : 프로그램 카운터가 지시하는 명령을 페치, 명령어를 해석하여 데이터에 대한 유효 주소(Effective Address)를 생성
- 실행 사이클 : 데이터를 페치하고 명령어를 실행함
- 인터럽트 사이클 : 인터럽트가 발생하면 위의 두 사이클을 마친 후 인터럽트를 처리함
레지스터
- 레지스터는 실행의 중간 결과나 적은 양의 자료를 임시로 저장하는 플립플롭(Flip-flop, 비트정보 보관 회로)으로 구성된 중앙처리장치 내의 임시 기억장치로, 명령어 실행 시 명령의 내용 또는 자료를 일시적으로 유지하는데 사용
- CPU 내부에는 MAR, MBR, IR 등 여러 개의 레지스터로 구성
레지스터의 종류와 역할
- 메모리 버퍼 레지스터(Memory Buffer Register : MBR) 모든 자료가 임시로 거치게 되는 자료 출입용 레지스터
- 메모리 어드레스 레지스터(Memory Adress Register : MAR) : 기억장치 내의 정보를 호출하기 위한 주소 저장용 레지스터
- 명령어 레지스터(Instruction Register : IR) : 현재 수행 중인 명령어를 임시로 기억해 두는 레지스터
- 프로그램 카운터(Program Counter : PC) : 다음에 실행될 명령어의 주소를 기억하는 레지스터
- 명령어 해독기(Intstruction Decoder) : 명령어 코드를 해독하여 필요한 실행 신호를 발생시킴
- 주소 해독기(Address Decode) : 주소를 해독하여 그 정보를 MBR로 전달
- 인덱스 레지스터(Index Register) : 명령어 실행 중 상대 주소를 결정하는 레지스터
- 범용 레지스터(General Purpose Register : GPR) : 사용자가 프로그램을 다목적으로 활용할 수 있는 범용 레지스터
- 베이스 레지스터(Base Register : BR) : 프로그램 기준 주소를 가지고 있는 레지스터
기억장치
- 프로그램, 명령어, 처리 결과 등을 저장하는 장치로, '메모리'라고 함
- 컴퓨터에서 사용하는 모든 프로그램/데이터를 기억시키고 필요할 때 이용할 수 있도록 함
- 처리 속도와 사용 속도, 용도, 용량에 따라 주기억장치, 보조기억장치, 레지스터, 캐쉬 등으로 나뉘어짐
기악정치의 종류와 특징
장치 | 접근 속도 | 메모리 용량에 따른 비용 | |
주기억장치 | 동적 RAM(DRAM) | 빠름 | 높음 |
캐시기억장치 | 캐시(정적 RAM : SRAM) | 가장 빠름 | 가장 높음 |
보조기억장치 | 하드디스크 | 보통 | 보통 |
CD-ROM | 느림 | 낮음 | |
백업 테이프 | 매우 느림 | 매우 낮음 | |
USB | 비교적 빠름 | 가장 낮음 | |
SSD | 매우 빠름 | 보통(HDD에 비해 높음) |
기억장치 계층구조
주기억장치
- 중앙처리장치와의 정보 교환을 위해 프로그램과 데이터를 기억
- 초기에는 자기 코어(Magnetic Core)를 사용했으나 현재는 대부분 초고집적도(ULSI) 반도체 사용
- 중앙처리장치와 직접 자료를 교환할 수 있는 기억장치, 프로그램 수행에 필요한 기본적인 명령어와 데이터를 기억
초창기 기억 소자 - 진공관과 자기 코어
- 초창기의 컴퓨터는 진공관을 주기억장치의 기억소자로 사용, 부피가 크고 전력 소모가 많으며 처리 속도가 느린 단점
- 단점을 보완하기 위해 자기코어, 트랜지스터 등을 순차적으로 개발
RAM : 1970년대 초에 얇고 작은 실리콘 판에 트랜지스터를 집적한 반도체가 개발, 이후 현재의 RAM 형태로 발전
조셉슨 소자 : 반도체의 실리콘 대신에 니오브(Nb)와 같은 특수금속을 사용하여 극저온에서 일어나는 초전도 현상을 이용, 반도체 소자보다 100배 이상 빠르며 소비전력도 1,000배 이상 적은 특성을 가짐
VRAM : 그래픽카드 등에 사용하기 위해 설계된 칩, 데이터를 기록하는 핀과 읽는 핀이 구분됨(데이터를 기록하는 동시에 읽을 수 있음)
주기억장치의 구성 : 프로그램 기억 장소, 작업 장소, 입력 데이터 기억 장소, 출력 데이터 기억 장소로 구성
주기억장치의 종류와 특성
- 집적회로의 실리콘 판에다 기억 소자 회로를 대량 집적
- 크기가 작고 속도가 빠르며 전력 소모가 작음 / 대량 생산이 가능하여 성능에 비해 저렴
ROM(Read Only Memory)
- 기억된 내용을 자유롭게 읽을 수는 있으나, 데이터를 임의로(추가로) 기억시킬 수 없는 읽기 전용의 비휘발성 기억장치
- 전자회로로 기억하기 때문에 전원이 끊어져도 그 내용이 보관됨
- Mask ROM : 제조 과정에서 내용을 미리 프로그래밍하여 기억시킨 것으로, 사용자가 내용을 변경할 수 없음
- PROM(Programmable ROM) : 사용자가 내용을 일단 기억시킨 후에도 필요에 따라 프로그램을 다시 기억시킬 수 있음
- EPROM(Erasable Programming ROM) : PROM을 개량한 것으로 자외선이나 높은 압력을 이용하여 내용 변경이 가능
RAM(Random Access Memory)
- 사용자가 작성한 문장이나 프로그램이 기억되는 기억 장소
- 임의이 메모리 주소에 기억되어 있는 데이터를 주소 지정에 의해 즉시 판독하고 기록할 수 있는 기억장치
- 전원이 끊어지면 기억된 내용이 모두 지워지는 휘발성 메모리(ROM과 차이)
- 정적 RAM(SRAM)과 동적 RAM(DRAM)으로 구분됨
SRAM | DRAM | |
구성 | 플립플롭으로 구성된 기억 장치 -> 전원이 끊어지면 기억된 내용이 모두 지워짐 |
콘덴서 -> 기억된 자료를 유지하기 위해 Refresh Pulse를 항상 공급해야 하며, 가격이 싸 대용량에 적합 |
사용 | 고속 처리가 요구되는 기억장치에 사용 | 주기억장치로 사용(대부분의 PC RAM) |
장점 | 고속, 원하는 내용에 즉시 접근, 특수 목적 | 회로가 간단, 집적도가 높음(ULSI), 소비전력이 적고 가격이 저렴 |
단점 | 소비전력이 크고 집적도가 낮음, 고가 | 속도가 느리고 일정한 주기로 재생해야 함 |
보조기억장치
- 주기억장치의 제한된 용량을 지원하는 장치
- 중대형 컴퓨터에서는 자기 디스크, 자기 테이프 등이 쓰임
- 개인용 컴퓨터에서는 하드 디스크, SSD, DVD 등이 사용(과거 : 플로피 디스크, CD-ROM)
종류 | 내부/외부 | 속도 | 매체 용량 | 미디어 교체 가능 | 접근 방법 | 가격 |
디스켓 | 내외부 | 저속 | 매우 저용량 | 가능 | 직접 접근 | 낮음 |
테이프 | 내외부 | 매우 저속 | 고용량 | 가능 | 순차 접근 | 중간 |
하드디스크 | 내외부 | 고속 | 초대용량 | 불가능 | 직접 접근 | 중간 |
CD-ROM | 내외부 | 중간 | 고용량 | 가능 | 직접 접근 | 낮음 |
USB | 외부 | 고속 | 다양한 용량 | 가능 | 직접 접근 | 높음 |
SSD | 내외부 | 초고속 | 매우 고용량 | 가능 | 직접 접근 | 가장 높음 |
중대형 컴퓨터의 보조기억장치
- 자기 테이프 장치(Magnetic Tape) : 플라스틱 테이프 표면에 자성 재료인 산화철 분말을 바른 것으로 반영구적 상태로 저장됨
- 자기 디스크 장치(Magnetic Disk) : 디스크에는 원주를 따라 동심원 트랙이 있고 각각의 트랙은 섹터로 나뉨
- 자기 드럼 장치(Magnetic Drum) : 알루미늄 합금 원통형 표면에 자성 자료를 바른 기억장치로 트랙들은 각각 자신의 헤드를 가지고 있음
개인용 컴퓨터의 보조기억장치
- 플로피 디스크 : 초창기의 보조기억장치, 디스켓(Diskette)으로 불림
- 하드 디스크 : 많은 프로그램과 자료들을 저장하는 보조기억장치, 단단한 금속 상자 바닥에 PCB 기판과 칩이 붙어 있는 형태
- CD-ROM : 용량/가격 비율이 가장 저렴, 읽기만 가능하며 1,2,4배속 등의 속도로 발전(1배속은 150Kbyte/sec & 200~530RPM)
- CD-RW : 읽기 및 쓰기가 가능한 CD
- USB Flash Drive : 크기가 작아 휴대가 간편, 보안용 암호 장치가 있어 자료를 안전하게 보관할 수 있음
최근의 기억장치/보조기억장치 동향
- 낸드 플래시 메모리(NAND Flash Memory) : 전기적으로 데이터를 지우고 다시 기록(비휘발성), 현재 가장 많이 사용됨(스마트폰 등)
- SSD : 하드디스크를 대체하는 차세대 저장매체, HDD보다 가볍고 처리속도가 빠르며 전력 소모가 적고 안정성이 높음
- 외장 하드 : 외장형 케이스에 하드디스크를 결합, 대용량 데이터 백업, 용량 확장, 휴대용 하드디스크 등으로 활용
컴퓨터의 속도와 성능
CPU 속도 지표 : Hz(사이클의 정도 : 주파수), IPC(사이클당 명령어 처리 정도)
CPU의 종류
- X86계열 : 인텔 중앙처리장치를 통합하여 부르기 위해 고안된 이름, 최근에는 오히려 비인텔 계열의 중앙처리장치를 지칭
- 모토롤라 계열 : 68XXX 계열, RISC 방식이며 인텔과 호환성이 없음, 애플컴퓨터에서 사용되었음
데이터 전송과 버스(Bus)
- 컴퓨터의 데이터 전송은 버스를 통해 이루어짐(데이터를 이동시키려면 반드시 버스를 이용)
- 주변 장치나 주기억장치와의 연결 시에는 모두 버스를 이용
- 시스템 버스에는 데이터 버스, 주소 버스, 제어 버스(<-CPU/메모리/입출력장치 등에서 데이터 최초 전달)가 있음
- 데이터 전송 폭은 비트로 나타내며, 비트의 배수만큼 속도 증가(16비트에 비해 32비트가 2배만큼의 속도)
버스의 대역폭(Bandwidth) : 버스의 전송량을 의미(클수록 한번에 많은 데이터 전송), 버스의 대역폭이 컴퓨터의 성능을 좌우하기도 함
버스의 종류
- ISA(Industrial System Architecture)
- EISA(Enhanced ISA)
- Vesa Local Bus, PCI, AGP 등)
입력장치
키보드 : PC의 가장 대표적인 입력장치,문자 키패드, 숫자 키패드, 특수키, 기능키 등으록 ㅜ성
마우스 : 그래픽 사용자 환경인 윈도우의 대표적 입력 장치, 마우스 포인터를 움직여 메뉴, 아이콘 등을 쉽게 선택
스캐너 : 텍스트, 그림, 사진 등의 영상 자료를 읽음, 최근에는 가격이 많이 저렴해짐
영상 카메라 : 영상을 그래픽 파일 형태로 곧바로 컴퓨터에 입력
광학 마크 판독기(Optical Mark Reader : OMR) : 광학 마크를 읽어들이는 장치
광학 문자 판독기(Optical Character Reader : OCR) : 손으로 쓴 글씨나 인쇄된 문자에 빛을 쏘아 반사시켜 문자를 판독
바코드 판독기 : 빛을 쏘아 반사시켜 상품에 인쇄된 바코드를 인식, POS(Point of Sale) 기기 등에 사용
터치 스크린 : 손으로 접촉하면 그 위치를 입력받는 화면, 일반적으로 모니터에 터치패널을 덧붙여 사용
출력 장치
그래픽 카드 : 컴퓨터가 처리한 자료를 인간이 볼 수 있도록 변환하여 모니터에 송출
표시장치(디스플레이)
음극선관(CRT) : 브라운관 TV와 같이 전자 빔이 발광하여 표시하는 형식
유기발광 다이오드(OLED) TV : 형광성 유기 화합물에 전류가 흐르면 빛을 내는 발광현상을 이용, 잔상이 거의 없음
인쇄 장치
잉크젯 프린터 : 프린터 헤드의 노즐을 통해 잉크를 분사하여 인쇄, 비용이 적음
레이저 프린터 : 감광 드럼에 빛을 쏘아 토너를 묻혀 인쇄하는 방식
플로터 : 그림 등을 인쇄하는 장치로서 주로 대형 인쇄물이나 CAD 출력 장치에 쓰임, 출력 용지 크기에 제한받지 않음
음성 출력 장치
사운드카드 : 컴퓨터에 저장된 소리와 음악 등의 데이터를 실제 소리와 음악으로 변환하여 스피커로 보내주는 장치
스피커 시스템 : 음향에 대한 관심의 증대와 멀티미디어 개념의 확산에 힘입어 성능이 향상되고 있음
공무원 두문자 암기
✽ 책 구매 없이 PDF 제공 가능
✽ adipoman@gmail.com 문의