Computer Science

[CS] 컴퓨터의 구성

Dongi 2023. 2. 22. 14:56

컴퓨터의 구성

컴퓨터는 단단한 하드웨어와 소프트웨어로 구성되어 있다.

  • 하드웨어: 지금 옆에 있는 컴퓨터 안에 단단한 것들이 하드웨어다.
  • 소프트웨어: 컴퓨터 내부에 구동하는 모든 프로그램이다.

 


 

하드웨어

중앙 처리 장치(Central Processing Unit)

  • 인간으로 치면 두뇌에 해당하는 부분
  •  기억, 해석, 연산, 제어를 담당한다. -> 주 기억장치에서 프로그램 명령어와 데이터를 읽어와 처리하고 명령어의 수행 순서를 제어한다.
  • 비교와 연산을 담당하는 산술논리장치(ALU Arithmetic and Logical Unit)와 명령어 해석과 실행하는 제어장치, 속도가 빠른 데이터 기억장소인 레지스터로 구성되어있음
  • 개인용 컴퓨터와 같은 소형 컴퓨터에서는 CPU를 마이크로 프로세서라고도 부름

 

필자는 AMD사의 라이젠 마이크로 프로세서를 사용하고 있다.

 

기억 장치(RAM, HDD)

  • 주기억장치와 보조기억장치로 나누어지며 RAM과 ROM도 이곳에 해당함
  • // RAM: Random Access Memory, 컴퓨터를 작동하는 순간부터 연산을 하고 동작에 필요한 모든 내용이 전원이 유지되는 내내 이 기억장치에 저장된다고 한다. 전원이 꺼지면 모두 사라지는 RAM도 있고 기억을 해두는 RAM도 있다고 한다. 필자는 8GB 두 개, 16GB를 사용 중이다.
  • // ROM: 고정 기억 장치, 데스크탑을 만들어 봤거나 관심이 많은 사람이면 이곳에 건전지를 장착해 봤을 가능성이 아주 높다! '아 그거?'라고 생각이 든다면 그곳이 그것이다! -> 보통 컴퓨터에 기본적인 운영 체제 기능이나 언어의 해석 장치(interpreter)를 내장시키기 위해 이용한다고 한다.
  • 실행 중인 프로그램과 같은 프로그램에 필요한 데이터를 일시적으로 저장한다.
  • 보조 기억 장치는 하드디스크(HDD) 등을 말하며, 주 기억 장치에 비해 속도는 느리지만 많은 자료를 영구적으로 보관할 수 있는 장점이 있다. -> 쉽게 말해 우리가 게임을 까는(?) 곳, 필자는 Seagate사의 HDD와 삼성 SSD를 사용하고 있다.

SDD와 HDD

 

입출력 장치

  • 입력: 마우스, 키보드 등등
  • 출력: 스피커, 프린터, 모니터 등등

 


 

소프트웨어

시스템 소프트웨어

  • 운영체제(Operating System): 윈도우, 맥 OS, 리눅스, 유닉스 등등
  • 컴파일러: 우리가 배운 컴퓨터 용어(필자의 경우 Java)를 컴퓨터가 알아들을 수 있는 언어인 기계어로 번역해주는 친구 -> 이 번역 행위를 컴파일(Compile)이라고 한다.

응용 소프트웨어

  • 워드프로세서: 대표적으로 Word가 있고 한국에서는 한글과 컴퓨터를 많이 쓴다(.hwp)라고 적혀있는 문서
  • 스프레드시트: 대표적으로 엑셀이 있다.

 


 

시스템 버스

  • 하드웨어 구성 요소를 물리적으로 연결하는 선
  • 각 구성요소가 다른 구성요소로 데이터를 보낼 수 있도록 통로가 되어줌
  • 용도에 따라 데이터 버스, 주소 버스, 제어 버스로 나누어진다.

 

데이터 버스

  • 중앙처리장치와 기타 장치 사이에서 데이터를 전달하는 통로
  • 기억 장치와 입출력 장치의 명령어와 데이터를 중앙처리장치로 보내거나 중앙처리장치의 연산 결과를 기억 장치와 입출력 장치로 보내는 '양방향' 버스.

주소 버스

  • 데이터를 정확히 실어 나르기 위해 기억장치에 '주소'를 정해 주어야 한다. 주소 버스는 중앙처리장치가 주 기억 장치나 입출력 장치로 기억 장치 주소를 전달하는 통로이기 때문에 '단방향' 버스.

제어 버스

  • 주소 버스와 데이터 버스는 모든 장치에 공유되기 때문에 이를 제어할 수단이 필요하다.
  • 제어 버스는 중앙처리장치가 기억 장치나 입출력 장치에 제어 신호를 전달하는 통로.
  • 제어 신호 종류: 기억 장치 읽기 및 쓰기, 버스 요청 및 승인, 인터럽트 요청 및 승인, 클락, 리셋 등
  • 제어 버스는 읽기 동작과 쓰기 동작을 모두 수행하기 때문에 '양방향' 버스.

 

컴퓨터는 기본적으로 읽고 처리한 뒤 저장하는 과정으로 이루어진다.

 

READ ➡ PROCESS ➡ WRITE

 

이 과정을 진행하면서 끊임없이 주기억 장치(RAM)와 소통한다. 이때 운영체제가 64비트라면 CPU는 RAM으로부터 데이터를 한 번에 64bit씩 읽어온다!!!

 


 

출처(References)

gyoogle님이 만드신 신입 개발자 전공지식 & 기술 면접 백과사전의 내용을 복습하는 글입니다.
https://github.com/gyoogle/tech-interview-for-developer/blob/master/Computer%20Science/Computer%20Architecture/%EC%BB%B4%ED%93%A8%ED%84%B0%EC%9D%98%20%EA%B5%AC%EC%84%B1.md
 

GitHub - gyoogle/tech-interview-for-developer: 👶🏻 신입 개발자 전공 지식 & 기술 면접 백과사전 📖

👶🏻 신입 개발자 전공 지식 & 기술 면접 백과사전 📖. Contribute to gyoogle/tech-interview-for-developer development by creating an account on GitHub.

github.com

, 나무위키