컴퓨터 시스템의 구성 요소
하드웨어와 소프트웨어로 구분된다.
하드웨어 : 컴퓨터의 기계적인 장치
소프트웨어 : 하드웨어의 동작을 제어하고 지시하는 모든 종류의 프로그램을 의미한다.
하드웨어
- 중앙처리 장치 (cpu)
- 기억장치 : RAM, HDD
- 입출력 장치 : 마우스, 프린터
소프트웨어
- 시스템 소프트웨어
- 컴퓨터 시스템을 제어하고 운영하는 프로그램이다.
- 운영체제, 컴파일러 등이 있다.
- 응용 소프트웨어
- 시스템 소프트웨어를 기반으로 특정 응용 분야에서 특수 목적을 위해 사용할 수 있는 프로그램이다.
- 워드프로세서, 스프레드 시트, 웹 브라우저 등이 있다.
CPU
주 기억장치에서 프로그램 명령어와 데이터를 인출, 해독, 실행, 저장한다.
CPU 구성
- 산술논리연산장치
- 덧셈, 뺄셈 같은 사순연산과 AND, OR, XOR 등 논리 연산을 계산한다.
- 제어장치
- 명령어를 해독하는 기능과 제어 신호를 해당장치에 전달하는 역할을 한다.
- 레지스터
- CPU내에서 데이터를 저장하는 장치로 속도가 빠른 것이 특징이다.
기억장치
프로그램과 데이터, 연산의 중간 결과들을 저장하는 장치이다.
- 주기억장치
- 컴퓨터에서 실행중인 프로그램, 실행에 필요한 데이터를 기억하는 장치이다.
- CPU에서 접근 속도가 빨르며 많은 양의 데이터를 기억할 수 있다.
- 보조기억장치
- 반영구적으로 데이터를 저장할 수 있다.
- 보조기억장치에 저장된 데이터는 중앙처리장치(CPU)와 직접 정보 교환이 불가능하여 주기억장치로 옮겨진 후 처리된다.
입출력장치
입력과 출력 장치로 나눠진다.
- 입력 장치 : 컴퓨터 내부로 자료를 입력하는 장치 (키보드, 마우스 등)
- 출력 장치 : 컴퓨터 외부로 표현하는 장치 (프린터, 모니터, 스피커 등)
시스템 버스
중앙처리장치(CPU)를 중심으로 주기억장치, 외부기억장치 그리고 입출력장치가 데이터를 교환하는 통로를 시스템 버스라고 한다. 용도에 따라서 데이터 버스, 주소 버스, 제어 버스로 나눠진다.
데이터 버스
컴퓨터 시스템을 구성하는 장치들 사이에 데이터를 전송하는 통로를 의미한다. 기억장치와 입출력장치의 명령어와 데이터를 CPU로 보내거나, CPU 연산 결과를 기억장치, 입출력장치로 보내는 양방향버스이다.
주소 버스
CPU가 주기억장치로 데이터를 write, read 동작 하기 위해서는 주소를 정해두어야한다. 주소버스는 CPU가 주기억장치나 입출력장치로 기억장치 주소를 전달하는 통로이기 때문에 단방향버스이다.
제어 버스
주소 버스와 데이터 버스는 모든 장치에 공유되기 때문에 이를 제어할 신호가 필요하다. 제어버스는 CPU와 주기억장치 및 입출력장치 사이에 제어 신호들의 통로이다. 제어 버스는 write, read 동작을 모두 수행하여 양방향버스이다.