반응형
1. 컴퓨터의 기능
프로그램 코드를 정해진 순서대로 수행
데이터를 읽어서(read), 처리(processing)하고, 저장(store)함
기본적인 수행 기능들
프로그램 실행 : CPU가 주기억장치로부터 프로그램 코드를 읽어서 실행
데이터 저장 : 프로그램 실행 결과를 주기억장치에 저장
데이터 이동 : 하드 디스크 같은 보조 기억 장치에 저장되어 있는 명령어와 데이터 블록을 주기억장치로 이동.
데이터 입력 /출력 : 사용자가 키보드나 마우스를 통해 입력하는 명령어나 데이터를 입력하거나 CPU가 처리한 결과를 모니터나 프린터로 출력
제어 : 프로그램에서 정해진 순서에 따라 실행되도록 각종 제어 신호를 발생
- 필요에 따라서 실행 순서를 변경하도록 조정
2. 컴퓨터의 기본구조
컴퓨터의 기본 구성
하드웨어 : 컴퓨터 정보들의 전송 통로를 제공해 주고, 그 정보에 대한 처리가 실제 일어나게 해주는 물리적인 실체들
소프트웨어 : 정보들이 이동하는 방향과 정보 처리의 종류를 지정해주고, 그러한 동 작들이 일어나는 시간을 지정해주는 명령(command)들의 집합(프로그램)

컴퓨터 하드웨어의 주요 요소들
컴퓨터 시스템의 하드웨어
주요 하드웨어 구성 요소들
- 중앙 처리 장치
- 기억장치 : 주기억장치(RAM), 보조기억장치(SSD,HDD)
- 입출력장치 : 입력장치, 출력장치
- 시스템버스
- 컴퓨터의 기능을 수행하기 위해 각 구성요소들은 시스템 버스를 통해 상호연결
중앙 처리 장치(Central Processing Unit, CPU)
컴퓨터의 특성을 결정하며, 컴퓨터의 핵심 기능인 프로그램 실행과 데이터 처리를 담당
- 프로세서(processor) 또는 마이크로프로세서(microprocessor)라고도 부름
- 산술 논리 연산 장치(Arithmetic and Logic Unit, ALU): 산술 연산, 논리 연산, 보수 연산, 시프트 연산을 수행
- 제어 장치(Control Unit, CU): 프로그램의 명령어를 해독하여 명령어 실행에 필요한 제어 신호를 발생시키고 컴퓨터의 모든 장치를 제어
- 레지스터(register): 중앙 처리 장치 내부에 있는 데이터를 일시적으로 보관 하는 임시기억 장치로, 프로그램 실행 중에 사용되며 고속으로 액세스함

기억 장치(memory)
주기억장치(Main Memory, MM)
- 반도체 칩으로 구성되어 고속 접근(access)이 가능하지만, 가격이 높고 면적을 많이 차지 -> 저장 용량에 한계가 존재
- 프로그램 실행 중에 일시적으로만 사용되는 휘발성(volatility) 메모리 • 전원이 꺼지면 데이터가 지워짐
- CPU <-> 시스템 버스 <-> 주기억장치
- CPU 내부의 레지스터들과 시스템 버스가 직접 연결됨
보조 기억장치: 2차 기억장치(secondary memory)
- 하드 디스크, SSD(solid state drive), 플래시 메모리(flash memory)와 같은 비휘발성 메모리이며, 저장 밀도가 높고 저가이지만 속도가 느림
- CPU에서 당장 필요하지 않은 많은 양의 데이터나 프로그램을 저장
- CPU가 직접 접근(읽기/쓰기)하지 못하고 별도의 제어기를 통해 접근
- CPU <-> 시스템 버스 <-> 보조 기억장치의 제어기 <-> 보조 기억장치
입출력 장치(Input / Output device, I/O device)
사용자-컴퓨터 간의 상호작용(interaction)을 위한 장치
- CPU가 직접 데이터를 교환하지 못하고 별도의 제어기를 통해 접근
입력 장치(input device) : 데이터를 전자적인 2진 형태로 변환하여 컴퓨터 내부로 전달
- 키보드, 마우스, 마이크 등
출력 장치(output device) : 중앙 처리 장치가 처리한 전자적인 형태의 데이터를 사람이 이해할 수 있는 데이터로 변환하여 출력
- 모니터, 스피커, 프린터 등
시스템 소프트웨어
소프트웨어
- 컴퓨터를 구성하고 있는 하드웨어를 잘 동작시킬 수 있도록 제어하고, 지시하는 모든 종류의 프로그램
- 프로그램 : 컴퓨터를 사용해 어떤 일을 처리하기 위해 순차적으로 구성된 명령들의 집합
- 소프트웨어는 시스템 소프트웨어와 응용 소프트웨어로 구분
시스템 소프트웨어
- 하드웨어를 관리하고 응용 소프트웨어를 실행하는데 필요한 프로그램
- 운영체제OS), 언어 번역 프로그램, 유틸리티 프로그램 등
- 유틸리티 프로그램 : 각종 주변 장치들을 구동하는데 필요한 드라이버 프로그램, 백신 프로그램, TCP/IP 같이 컴퓨터를 네트워크로 연결하는 데 필요한 각종 프로그램 등
응용 소프트웨어
- 애플리게이션, 앱, 어플 등으로 불림.
- 컴퓨터 시스템을 이반 사용자들이 특정한 용도에 활용하기 위해 만든 프로그램
