참고 : [Course] Operating System (CPA310) - 운영체제 강의


[ 운영체제 1강. 컴퓨터 시스템 개요 ]

HW : CPU, GPU, Memory, HDD/SDD, LAN..

OS ( Operating System, 운영체제 )

  • HW (컴퓨터 시스템 자원)를 효율적으로 관리하여, 사용자/응용프로그램에게 서비스를 제공하는 역할을 한다


1. 컴퓨터 하드웨어

  1. 프로세서 : 계산하는 장비
    • CPU, GPU, 응용 전용 처리장치 등
  2. 메모리
    • 주 기억장치
    • 보조 기억장치
    • ex) DRAM, Disk..
  3. 주변장치
    • 키보드,마우스
    • 모니터, 프린터
    • 네트워크 모뎀


2. 프로세서

컴퓨터의 두뇌 (중앙 처리 장치)

  • 연산 수행
  • 컴퓨터의 모든 장치의 동작 제어


CPU는 두 부분으로 구성

  • 1) 데이터 부분
    • 연산 장치 & 레지스터
  • 2) 제어 부분
    • 제어 장치


figure2


(1) 레지스터

  • “프로세서 내부”에 있는 메모리

    ( 프로세서가 사용할 데이터 저장 )

  • 가장 “빠른” 메모리


레지스터의 종류

  • 1) 용도에 따른 분류 :
    • 전용 레지스터 / 범용 레지스터
  • 2) 사용자가 정보 변경 가능 여부에 따른 분류
    • 사용자 가시/불가시 레지스터
  • 3) 저장하는 정보 종류에 따른 분류
    • 데이터 / 주소 / 상태 레지스터


(2) 운영체제와 프로세스

운영체제는…

  • 프로세서에서 처리할 작업 할당&관리 (3장)
  • 프로그램의 프로세서 사용 제어
    • ex) 여러 프로그램 간 사용 시간 관리/중재


3. 메모리 (Memory)

메모리 : 데이터를 저장하는 장치 (기억 장치)

무엇을 저장?

  • 프로그램, 사용자 데이터 등

메모리의 종류

( 1) fast/expensive/small <—-> 4) slow/cheap/big )

  • 1) 레지스터
  • 2) 캐시(Cache) ( 레지스터보다는 core에서 멀리 떨어짐)
  • 3) 메인 메모리 ( ex. DRAM )
    • 프로세서가 직접 접근할 수 있는것은 1)~3) 까지
  • 4) 보조 기억장치 ( ex. HDD )


(1) 주기억장치 ( Main memory )

  • 프로세서가 수행할 프로그램&데이터 저장
  • ex) DRAM : huge & cheap
  • 디스크 입출력 병목현상 해소 (I/O bottleneck)
    • processor에서 disk 사이의 거리가 너무 멀어! 그 중간다리 역할
    • 그 중간인 “주 기억장치”에, 데이터를 미리 가져다 놓자!


(2) 캐시 ( Cache )

  • Register와 마찬가지로, 프로세서 내부에 있는 메모리
    • L1,L2,L3 캐시
  • 속도가 빠르지만, 비싸다
  • 메인메모리 입출력 병목현상 해소 (I/O bottleneck)


figure2


캐시의 동작

  • HW적으로 관리됨
  • 캐시에 데이터가 있는지 여부에 따라…
    • 1) 캐시 히트 ( Cache hit ) : 필요한 데이터 블록이 “캐시 안에 존재 O”
      • 빠르게 가져올 수 있어!
    • 2) 캐시 미스 ( Cache miss ) : 필요한 데이터 블록이 “캐시 안에 존재 X”
      • 메인 메모리까지 가야!


캐시가 이러한 효과를 가져다 주는 이유는? 지역성

  1. 공간적 지역성
    • 참조한 주소와 인접한 주소를 참조
  2. 시간적 지역성
    • 한번 참조한 주소를, 곧 다시 참조

이러한 지역성이 캐시 적중률 (cache hit ratio)와 밀접!


(3) 보조 기억 장치

ex) HDD, USB, CD/DVD, SD카드…

프로세서가 직접 접근 불가 ( 주변 장치 )

  • 주기억 장치를 거쳐서 접근 가능

Cheap & Big


(4) 메모리와 운영체제

운영체제는…

  • 메모리를 할당/관리 한다
    • 프로그램의 요청에 따라 할당&회수
    • 할당된 메모리를 관리
  • 가상 메모리 고나리
    • 가상 메모리 생성&관리
    • 논리 주소를 물리 주소로 변환


4. 시스템 버스

프로세스 & 메인메모리 & 주변장치에 대해 알아봤다.

이 들이 서로 통신을 하기 위해 필요!

이 물리적인 통로가 “시스템 버스” 이다

  • 1) 데이터 버스
  • 2) 주소 버스
  • 3) 제어 버스


figure2


5. 주변 장치

프로세서 & 메모리 제외 HW

  • 입력 장치 : 키보드/마우스/터치패드..
  • 출력 장치 : 모니터/프린터/스피커…
  • 저장 장치 : 보조 기억 장치


(1) 주변 장치와 운영 체제

  • 장치 드라이버 관리
  • Interrupt 처리
  • 파일 & 디스크 관리