운영체재, 서버

컴퓨터의 구조를 알아야 하는 이유

JiHxxn 2024. 7. 19. 21:55

  • 문제 해결 능력
  • 성능, 용량, 비용을 계산할 수 있다.

문제 해결 능력이 필요한 case.

  • 환경에 따라 작동하지 않는 소스 코드에 대한 대처
  • 컴퓨터 구조를 이해한다면 관조 할 수 있다.

성능, 용량, 비용 계산이 필요한 case.

  • PC를 구매할 때 기준을 계산할 수 있다.
  • 클라우드 서비스를 사용하더라도 성능 용량 비용을 비교해 결제해야 한다.

💻 컴퓨터 구조

  1. 컴퓨터가 이해하는 정보
    • 데이터 : 숫자, 문자, 이미지 등 정적인 정보(컴퓨터와 주고받는 저장된 정보를 통칭)
    • 명령어 : 컴퓨터를 실질적으로 움직이는 정보(컴퓨터를 한마디로 정의한다면 "컴퓨터는 명령어를 처리하는 기계"라고 할 수 있다.
  2. 컴퓨터의 네가지 핵심 부품
    • CPU : 메모리에 있는 데이터와 명령어를 가져와 실행한다.
      • ALU : 계산기
      • 레지스터 : CPU 내부의 작은 저장 장치
      • CU : 제어 신호를 내보내고, 명령어를 해석하는 장치
    • 메모리 : 현재 실행되는 명령어와 데이터를 저장한다.
    • 보조기억장치 : RAM은 PC 종료 시 데이터가 사라지고, 가격 또한 비싸다. 그걸 보완한 게 보조 기억장치(HDD, SSD 등)
    • 입출력장치 : 모니터, 키보드, 마우스 등

이 모든 부품을 연결 시켜주는 대상 2가지

  • 메인보드(마더보드) : 판에 핵심 부품들이 연결되어 있음.
  • Bus : 정보를 주고받는 통로

🤔 운영체제란?

자원 : 프로그램이 실행되기 위해 필요한 요소(4가지 핵심 부품 포함) 운영체제 : 실행 중인 프로그램(프로세스)을 관리하는 *특별한 프로그램

  • 운영체제 또한 메모리에 저장되어 있음. 하지만 특별하기 때문에 *커널 영역에 저장되어 있다.
  • 자원(CPU)를 관리해 준다. 여러 개의 프로세스들의 작업 순서를 관리해 준다.
  • 시스템 호출(시스템 Call)을 통해 자원을 보호한다. 가령 데이터들이 겹쳐 저장되는 상황들을 막아줌. [자원 접근을 대행)

운영체제를 알아야 하는 이유

  • 내가 만드는 프로그램을 운영체제로부터 어떤 도움을 받을지 이해
  • 오류 메시지에 대한 깊은 이해(문제 해결 능력)