컴퓨터의 구성 요소
컴퓨터는 소프트웨어와 하드웨어로 구성되며, 둘의 상호작용을 통해 동작한다.
- 하드웨어 : 컴퓨터를 구성하는 물리적 기계 장치
- 소프트웨어 : 하드웨어의 동작을 지시하고 제어하는 명령어 집합
소프트웨어
시스템 소프트웨어(System Software)
- 응용 소프트웨어를 실행하기 위한 일종의 플랫폼 역할을 수행한다.
- 하드웨어와 직접적으로 소통하며 하드웨어 장치들이 제대로 동작할 수 있도록 한다.
- e.g) 운영체제, 컴파일러, 장치 드라이버
응용 소프트웨어(Application Software)
- 시스템 소프트웨어를 제외한 모든 소프트웨어로 일반적으로 프로그램이라 불린다.
- e.g) 계산기, 워드 프로세서
하드웨어
- 중앙처리장치(CPU)
- 기억장치(RAM,HDD)
- 입출력장치
- 시스템 버스
중앙처리장치(CPU)
주기억장치에서 프로그램 명렁어와 데이터를 읽어와 처리하고 명령어의 수행 순서를 제어하는 핵심 장치
- 산술논리연산장치(ALU)
- 제어장치의 명령에 따라 실제 연산을 수행한다.
- 제어장치
- 명령어의 해석과 실행 담당
- CPU의 모든 동작과 데이터 흐름을 통제 및 관리한다.
- 레지스터
- 속도가 빠른 데이터 기억장소
- 연산장치의 동작에 필요한 데이터를 임시로 보관 및 제공한다.
기억장치(Memory Device)
프로그램,데이터,연산의 중간 결과를 저장하는 장치
- 주기억장치
- 데이터를 읽고 쓰는 속도는 빠르지만, 큰 용량의 데이터를 저장할 수 없다.(실행중인 프로그램에 필요한 데이터를 일시적으로 저장)
- CPU의 연산 속도를 어느정도 따라 잡을 수 있을 정도로 빠르기 때문에 CPU와 직접적으로 소통한다.
- e.g) SSD,HDD
- 보조기억장치
- 데이터를 읽고 쓰는 속도는 느리지만, 큰 용량의 데이터를 영구 저장할 수 있다.
- CPU와 직접적으로 소통하지 않는다.
- e.g) RAM,ROM
시스템 버스(System Bus)
하드웨어 구성 요소를 물리적으로 연결하는 선
- 데이터 버스
- 중앙처리장치와 기타 장치 사이에서 데이터를 전달하는 통로
- 양방향 버스 : 중앙처리장치 <-> 주기억장치 or 입출력장치
- 주소 버스
- 데이터가 어디에 도착해야 하는지에 대한 정보(주소)를 전달하는 통로
- 단방향 버스 : 중앙처리장치 -> 주기억장치 or 입출력장치
- 제어 버스
- CPU의 제어장치가 생성한 제어 신호를 다른 장치로 전달하는 통로
- 양방향 버스 : 읽기,쓰기/요청,승인 동작 모두 수행
동작 과정
READ -> PROCESS -> WRITE
- 프로그램 실행
- 운영체게가 보조기억장치에 저장되어 있던 프로그램을 주기억장치인 RAM에 로드
- 로드 완료 후 프로그램 실행
- 입출력 및 연산
- 입력장치를 통해 데이터 입력
- CPU에서 명령어 해석 및 적용하여 연산 진행
- 출력 및 저장
- 주기억장치에 실행 결과 저장
- 출력장치를 통해 결과 출력