CS/Computer Architecture

[Computer Architecture] 컴퓨터의 구성 요소

hanseongbugi 2024. 3. 24. 15:58

컴퓨터의 구성 요소

  • 컴퓨터 시스템은 크게 하드웨어와 소프트웨어로 나누어진다.
    • 하드웨어 : 컴퓨터를 구성하는 기계장치 (물리적 장치)
    • 소프트웨어 : 하드웨어의 동작을 지시하고 제어하는 명령어 집합
  • 하드웨어와 소프트웨어가 함께 상호작용을 하며 원하는 일을 수행하게 된다.
  • 컴퓨터는 기본적으로 읽고 처리한 뒤 저장하는 과정으로 이루어진다
    • READ → PROCESS → WRITE 
    • 이 과정을 진행하면서 끊임없이 주기억장치(RAM)과 소통한다
    • 이때 운영체제가 64bit라면, CPU는 RAM으로부터 데이터를 한번에 64비트씩 읽어온다.

하드웨어

메인 보드(Main Board)

  • 마더 보드(Mather Board)라고도 불리며 주회로가 내장된 보드
  • CPU나 RAM과 같이 시스템이 작동하기 위한 주요 부품 장착과 주변 장치를 연결할 수 있는 인터페이스를 제공하는 인쇄회로기판을 의미
  • 컴퓨터 전원 공급 장치로부터 전기를 받아 CPU, 메인 메모리에 전력을 보내는 전원 커넥터 및 회로를 포함

전원 공급 장치(Power Supply)

  • 파워라고도 불리며 구동에 필요한 전력을 공급해주는 전기 장치
  • 외부에서 들어오는 교류 전압을 직류로 변환해 각각의 시스템에 맞게 전원을 공급하는 역할

중앙 처리 장치(CPU)

  • 인간으로 따지면 두뇌에 해당하는 부분
  • 명령어의 해석자료의 연산, 비교등의 처리를 제어하는 컴퓨터 시스템의 핵심 장치
  • 다양한 입력 장치로부터 명령을 받아 처리한 후, 그 결과를 출력 장치로 보내는 일련의 과정을 제어하고 조정하는 일을 수행
  • 주기억장치에서 프로그램 명령어와 데이터를 읽어와 처리하고, 명령어의 수행 순서를 제어함
  • 중앙 처리 장치는 다음과 같이 구성되어 있다.
    1. 비교와 연산을 담당하는 산술 논리 연산 장치(ALU)
    2. 명령어의 해석과 실행을 담당하는 제어장치
    3. 속도가 빠른 데이터 기억 장소인 레지스터
  • 개인용 컴퓨터와 같은 소형 컴퓨터에서는 CPU를 마이크로프로세서라고도 부름

주기억장치(Primary Storage - Computer Memory)

  • 컴퓨터 내부에서 현재 CPU가 처리하고 있는 내용을 저장하고 있는 기억 장치
  • 프로그램, 데이터, 연산의 중간 결과를 저장
  • 주기억장치와 보조기억장치로 나누어지며, RAM과 ROM도 이곳에 해당함.
  • 실행중인 프로그램과 같은 프로그램에 필요한 데이터를 일시적으로 저장

ROM(Read Only Memory)

  • 전원이 끊어져도 기록된 데이터들이 소멸되지 않는 비휘발성 메모리
  • 저장된 데이터를 읽기만 가능한 장치
  • 시스템에 기억시키고 변화시키면 안 되는 BIOS와 같은 주요 데이터가 저장됨

RAM(Random Access Memory)

  • 읽고 쓰기가 가능한 메모리
  • 응용 프로그램, 운영체제 등을 불러와 CPU가 작업할 수 있도록 하는 기억장치
  • 임의 접근이 가능한 메모리
  • 전원을 끄면 데이터가 사라지는 휘발성 메모리
    • 읽고 쓰는 속도가 빨라 휘발성임에도 사용

보조기억장치(Secondary Memory)

  • 물리적인 디스크가 연결되어 있는 기억장치
  • 주기억장치에 비해 속도는 느리지만 많은 자료를 영구적으로 보관할 수 있는 장점이 있다.
  • 대표적인 보조기억장치는 HDD와 SSD가 있음

HDD(Hard Disk Driver)

  • 물리적인 디스크를 고속으로 회전시켜 데이터를 저장하는 장치
  • 충격에 약하며 소음이 다소 발생함
  • SSD가 나오면서 최근에 많이 소멸되는 추세

SDD(Soild State Driver)

  • 우리가 흔히 쓰는 USB가 발전한 형태
  • 물리적으로 회전하거나 움직이는 요소가 없음
    • 전기적으로 데이터를 저장
  • 가격이 비싸지만 속도가 HDD에 비해 훨씬 빠름

입출력 장치

  • 입력과 출력 장치로 나누어짐
  • 입력 장치는 컴퓨터 내부로 자료를 입력하는 장치
    • 키보드, 마우스 등
  • 출력 장치는 컴퓨터에서 외부로 표현하는 장치
    • 프린터, 모니터, 스피커

시스템 버스(System Bus)

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

데이터 버스

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

주소 버스

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

제어 버스

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

소프트웨어

  • 시스템 소프트웨어
    • 운영체제, 컴파일러
  • 응용 소프트웨어
    • 워드프로세서, 스프레드시트

 

 

 

출처

https://velog.io/@2seunghye/%EC%BB%B4%ED%93%A8%ED%84%B0%EC%9D%98%EC%9E%91%EB%8F%99%EC%9B%90%EB%A6%AC

 

컴퓨터의 구성 요소 및 작동 원리

컴퓨터 = 크게 두 부분으로 나눈다면 하드웨어/소프트웨어로 구분할 수 있다 우리가 손으로 만질 수 있는 것 = 하드웨어 순수한 정보 = information = 소프트웨어 = (정보화기기) 함께 힘을 합쳐 원하

velog.io

https://github.com/gyoogle/tech-interview-for-developer/tree/master

 

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

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

github.com