기어가더라도 제대로

[운영체제 - 김덕수 교수님] 운영체제 개요 본문

CS/운영체제

[운영체제 - 김덕수 교수님] 운영체제 개요

Damagucci-juice 2022. 7. 23. 20:18

운영체제 강의 보고 필기본 입니다.

  • 컴퓨터에는 다양한 하드웨어가 있다.
  • HW 를 사용하기 위해 OS가 있어야 효율적으로 관리할 수 있다.
  • 서비스를 제공하는 역할을 한다.

하드웨어

프로세서(Processor)

  • CPU
  • GPU
  • 응용 전용 처리 장치 등

메모리(Memory)

  • 주 기억장치 - RAM
  • 보조 기억 장치 - Disk

주변장치

  • 키보드/ 마우스
  • 프린터

레지스터

  • 프로세서 내부에 있는 메모리
  • 컴퓨터에서 가장 빠른 메모리
  • 프로세서가 사용할 데이터 저장

레지스터 종류

  • 용도에 따른 분류
    • 전용 레지스터, 범용 레지스터
  • 변경 가능성
    • 사용자 가시 레지스터, 불가시 레지스터
  • 저장하는 정보의 종류에 따른 분류
    • 데이터 레지스터, 주소 레지스터, 상태 레지스터

예시

  • 프로그램 카운터
    • 다음에 실행할 명령의 메모리 상의 주소를 가지고 있는 레지스터
  • 누산기
    • 데이터를 일시적으로 저장하는 레지스터
  • 명령어 레지스터
    • 현재 실행하는 명령어를 보관하는 레지스터

프로세서의 동작

실제 계산을 할 땐 다양한 레지스터를 이용해 연산이 이루어진다.

  • 운영 체제는 프로세서에게 명령을 할당하고, 자원을 관리하는 역할을 하게 된다.
  • 프로그램의 프로세서 사용 제어

‏‏‎ ‎

메모리

  • 데이터를 저장하는 장치( 기억장치)
  • 프로그램(os, 사용자sw 등), 사용자 데이터 등
  • 메모리의 종류

운영체제 개요 image

‏‏‎ ‎

메모리의 종류

  • 주 기억장치(Main Memory)
  • 프로세서가 수행할 프로그램과 데이터 저장
  • DRAM을 주로 사용
- 용량이 크고, 가격이 저렴
  • 디스크 입출력 병목현상(I/O bottlenck) 해소
  • 캐시(Cache)
  • 프로세서 내부에 있는 메모리(L1, L2캐시 등)
- 속도가 빠르고, 가격이 비쌈
  • 메인 메모리의 입출력 병목현상 해소

‏‏‎ ‎

캐시의 동작

  • 일반적으로 HW 적으로 관리됨
  • 캐시 히드(Cache hit)
  • 필요한 데이터 블록이 캐시 존재
  • 캐시 미스(Cache miss)
  • 필요한 데이터 블록이 없는 경우

운영체제 개요 image

지역성(Locality)

  • 공간적 지역성(Spatial Locality)
  • 참조한 주소와 인접한 주소를 참조하는 특성
- 예) 순차적 프로그램 수행, 배열 등 자료구조
  • 시간적 지역성(Temporal Locality)
  • 한 번 참조한 주소를 곧 다시 참조하는 특성
- 예) For 문 등의 순환 문
  • 지역성은 캐시 적중률(cache hit ratio)과 밀접
  • 알고리즘 성능 향상을 위한 중요한 요소 중 하나
  • 캐시 라인 만큼 캐시 메모리에 등록 시켜놓는다.

‏‏‎ ‎

‏‏‎ ‎

운영체제 개요 image

블록 사이즈 16이니까 마침, m 이 16이라고 한다면, a는 이중 배열인데, 배열의 메모리는 순차적으로 저장되는 특성이 있다.

B - 방식으로 저장

  1. cpu 가 캐시에 a[0][0] 을 요청
  1. 캐시 미스
  1. 메모리에서 캐시에 저장 a[0][0~15]
  1. cpu 가 캐시에 a[1][0] 을 요청
  1. 캐시 미스
  1. 메모리에서 캐시 저장 a[1][0~15]

‏‏‎ ‎

A 방식으로 저장

  1. cpu 가 캐시에 a[0][0] 을 요청
  1. 캐시 미스
  1. 메모리에서 캐시에 저장 a[0][0~15]
  1. cpu 가 캐시에 a[0][1] 을 요청
  1. 캐시 히트
  1. 총 15번 정도 더 캐시 히트가 일어날 것이다. 속도 향상

‏‏‎ ‎

메모리의 종류

  • 보조 기억 장치
  • 프로그램과 데이터를 저장
  • 프로세서가 직접 접근 할 수 없음(주변장치)
  • 프로그램/데이터 > 주기억 장치 인 경우는?
- 가상 메모리

‏‏‎ ‎

시스템 버스(System Bus)

  • 하드웨어들이 데이터 및 신호를 주고 받는 물리적인 통로
  • 데이터 버스
  • 주소 버스
  • 제어 버스

운영체제 개요 image

  1. 프로그램 카운터에 담긴 다음 명령의 주소를 MAR(Memory Adress Register) 에 담아 주소 버스에 보낸다.
  2. MAR에 저장된 주소에 해당하는 메모리 위치에서 명령어를 인출한 후 이 명령어를 MBR에 저장한다.
    1. 이 때 제어 장치는 메모리에 저장된 내용을 읽도록 제어 신호를 발생시킨다.
  3. 다음 명령어를 인출하려고 PC를 증가시킨다.
  4. MBR 에 저장된 내용을 IR에 전달한다. 
Comments