컴퓨터의 정의 : 입력 받은 데이터를 정해진 규칙대로 처리해서 처리 결과를 저장하고 출력하는 전자 장치이다.
컴퓨터의 구성요소 : 입력 장치, 출력 장치, 프로그램, 중앙 처리 장치, 기억 장치
이를 크게 나누면 소프트웨어와 하드웨어로 구분 지을 수 있다.
소프트웨어 : 명령어의 집합으로 논리적인 요소
- 시스템 소프트웨어 (System Software)
응용 소프트웨어를 실행하기 위한 플랫폼 역할으로,
하드웨어와 직접적으로 소통하여 하드웨어가 제대로 동작하도록 한다.
- 응용 소프트웨어 (Application Software)
시스템 소프트웨어를 제외한 모든 소프트웨어를 의미하며, 프로그램으로 불린다.
하드웨어 : 물리적인 요소로 컴퓨터 내의 기계적 장치들
- 중앙 처리 장치 (CPU, Central Processing Unit)
프로세서라고도 하며, 프로그램의 실행과 데이터 처리를 담당함.
연산 속도가 매우 빠르며, 주기억장치와 직접적으로 소통함.
제어 장치, 연산 장치, 레지스터로 구성되며, 각 요소를 통해 CPU의 기능을 수행함.
# 제어 장치 : CPU의 모든 동작과 데이터 흐름의 통제 및 관리, OS와 소통하며 컴퓨터 자원을 관리함.
# 연산 장치 : 프로그램에 기술된 명령어를 수행, 코드를 실질적으로 실행시킴.
# 레지스터 : CPU 내에 존재하는 작고 빠른 기억 장치, 연산 동작에 필요한 데이터를 임시 보관 및 제공함.
- 기억 장치 (Memory Device)
저장 장치라고도 하며, CPU의 동작에 필요한 데이터들을 보관하는 곳
# 보조기억장치 : 정보를 반영구적으로 저장하는 장치, 큰 용량과 느린 데이터 읽고 쓰기
(Ex. SSD, HDD)
# 주기억장치 : 프로그램이 수행되는 동안 필요한 정보를 저장하는 장치, 작은 용량(상대적)과 빠른 데이터 읽고 쓰기
(Ex. RAM, ROM)
# 캐시 메모리 (Cache Memory) : CPU가 사용한 데이터 중 재사용 가능성이 높은 데이터를 주기억 장치에서 미리 불 러와서 대기시켜놓는 역할
- 입ㆍ출력 장치 (Input/Output Device)
사용자로부터 컴퓨터 내부로 데이터를 입력 받는 장치는 입력 장치라고 하며,
컴퓨터 내부로부터 사용자에게 감각이 가능한 형태로 데이터를 출력해주는 장치를 출력 장치라고 한다.
- 시스템 버스 (System Bus)
각 하드웨어 장치 간의 통로로 물리적으로 연결한 전선을 의미함.
# 데이터 버스 : 하드웨어 간에 데이터를 전달하는 통로
# 주소 버스 : 데이터의 도착지 정보를 전달하는 통로
# 제어 버스 : 제어 장치가 생성한 제어 신호를 다른 장치로 전달하는 통로
로딩 Loading
: CPU가 작업을 할 수 있도록 보조 기억장치에서 주기억장치로 프로그램 파일을 옮겨오는 과정 (메모리에 적재)
프로세스 Process
: 실행 중인 프로그램
프로그래밍 Programming
: 프로그램을 만드는 과정으로 특정 목적을 달성하기 위해 설계된 알고리즘을 프로그래밍 언어로 코드로 작성하는 과정
빌드 Build
: 작성한 소스 코드를 실행 가능한 산출물로 변환하는 과정으로, .exe .msi 확장자의 실행 파일로 만들면 실행이 가능한 하나의 프로그램이 됨.
컴파일 Compile
: 프로그래밍 언어로 작성된 소스 코드를 컴퓨터가 이해할 수 있는 기계어로 번역하는 과정이며, 빌드 과정에 포함됨.
'▶CodeStates Back-End > Section 1' 카테고리의 다른 글
TIL [0506] 제어문 (0) | 2022.05.12 |
---|---|
TIL [0504] Java (2) | 2022.05.10 |
TIL [0503] Git (0) | 2022.05.03 |
TIL [0502] Linux (0) | 2022.05.03 |
TIL [0427] HTML, CSS (4) | 2022.04.28 |