[Lecture/Python] 02강 - 컴퓨터의 구성

김찬미·2025년 5월 1일

[Lecture] Python

목록 보기
2/13

2강 요약: 컴퓨터의 구성

✅ 하드웨어와 소프트웨어

컴퓨터의 구성요소

  • 하드웨어: 컴퓨터를 구성하는 물리적 부품
  • 소프트웨어: 다양한 장치를 동작시켜 작업을 수행하는 프로그램

하드웨어 - 폰 노이만 구조

🔸 장치 종류

  • 입력장치
  • 기억·저장장치
  • 제어장치
  • 연산장치
  • 출력장치

소프트웨어 - 응용, 시스템

  • 응용 소프트웨어: 사용자의 업무나 목적에 맞게 처리 절차를 표현명령어 집합
  • 시스템 소프트웨어: 하드웨어를 제어·관리, 응용 소프트웨어 실행 가능한 환경 제공

✅ 하드웨어의 이해

입력장치

  • 명령과 데이터를 컴퓨터에 전달하는 장치
  • 컴퓨터가 처리할 수 있는 2진수 형태로 변환

ex) 키보드, 마우스, 스캐너, 터치스크린, 마이오(팔찌 형태), 립 모션(동작인식장치)


출력장치

정보 처리 결과를 인간이 인식 가능한 형태로 변환
→ 2진수 형태의 데이터를 문자, 숫자, 도형, 음성, 영상 등의 형태로 변환

ex) 모니터, 스피커, 프린터, HUD(유리창에 정보를 표시), HMD(가상현실 표시)


기억(저장) 장치

  • 명령과 데이터를 기억(저장)하는 하드웨어
  • 역할에 따라 주기억장치, 보조기억장치로 구분

ex) ROM, RAM, 플로피디스크, 자기디스크, 광학디스크, 플래시 드라이브, SSD

💡 SSD란?

  • RAM을 이용한 저장장치
  • 빠른 속도, 외부 충격에 강함, 전력소모 적음
  • 하드디스크 대체재로 각광받는 중

제어와 연산 장치

  • 명령어와 데이터를 읽고 데이터를 연산 또는 처리하는 장치
  • 현대의 컴퓨터는 제어 장치와 연산 장치 구분❌

🔄 CPU 동작 방식

  • 레지스터: 초고속 메모리, 유닛 간 데이터 전달에 도움됨
  • 제어 유닛: 데이터를 받고 연산 논리 유닛에게 명령 전달
  • 연산 논리 유닛: 처리 결과를 다시 레지스터에게 전달

✅ 소프트웨어의 이해

시스템 소프트웨어

다양한 장치들을 서로 유기적으로 동작시켜 특정 작업을 수행할 수 있는 환경 조성

  • 운영체제(커널): 사용자가 컴퓨터를 효율적으로 사용할 수 있도록 하드웨어 제어
  • 컴파일러: 소스코드를 컴퓨터가 이해할 수 있도록 기계어로 번역
  • 유틸리티: 부가적인 기능을 제공하여 컴퓨터를 편리하게 사용할 수 있도록 지원

운영체제의 역할

응용 소프트웨어가 효과적으로 작동할 수 있는 환경 조성

컴퓨터의 자원(하드웨어)를 효율적으로 관리하고 응용 프로그램에 자원 할당
→ 사용자 인터페이스
→ 프로세스 관리
→ 네트워크 관리
→ 기억장치 관리
→ 입출력장치 관리


1) 사용자 인터페이스

컴퓨터와 사용자를 매개하여 상호작용하는 방법 제공

  • CLI(Command Line Interface): 명령어로 상호작용
  • GUI(Graphic User Interface): 화면(그래픽)으로 상호작용

2) 프로세스 관리

여러 프로그램 실행이 요청되면 한정된 자원(기억장치 등)을 효과적으로 사용하도록 조율

  • 프로세스: 실행되고 있는 상태의 프로그램


3) 네트워크 인터페이스

컴퓨터는 네트워크를 통해 상호 데이터 교환
→ 응용 프로그램이 통신할 수 있는 환경 제공통신 장치(하드웨어) 관리

ex) Wi-Fi 관리


4) 기억·저장장치 관리

  • 보조기억장치에 저장된 컴퓨터 프로그램은 실행되기 위해서 주기억장치에 적재
  • 주기억장치 크기<<보조기억장치 크기 → 효율적 관리 필수
profile
백엔드 지망 학부생

0개의 댓글