운영체제(OS) 란

Lee Jun Hyeong·2023년 4월 21일
post-thumbnail

운영체제 (OS, Operating System)


컴퓨팅 자원들을 효율적으로 관리해서 사용자에게 서비스를 제공하는 소프트웨어를 운영체제라고 한다.

컴퓨터 시스템 개요

프로세서 (Processor)

계산 영역, 연산을 위해서 사용된다.

  • CPU
  • 그래픽 카드(GPU)
  • 응용 전용 처리장치 등

메모리 (Memory)

무언가 저장하는 영역

  • 주 기억장치
  • 보조 기억장치 등

주변장치

  • 키보드/마우스
  • 모니터, 프린터
  • 네트워크 모뎀 등

프로세서 (Processor)

큰 틀에서 생각면 CPU라고 이해하면 쉬움.

  • 컴퓨터의 두뇌 (중앙처리장치)
  • 연산 수행
  • 컴퓨터의 모든 장치의 동작 케어

레지스터

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

레지스터의 종류

  • 용도에 따른 분류
    전용 레지스터, 범용 레지스터

  • 사용자가 정보 변경 가능 여부에 따른 분류
    사용자 가시 레지스터, 사용자 불가시 레지스터

  • 저장하는 정보의 종류에 따른 분류
    데이터 레지스터, 주소 레지스터, 상태 레지스터

프로세서의 동작

프로세스는 PC, MAR, IR, MBR, ALU, ACC, DR 등 다양한 레지스터를 통해 연산이 이루어진다.

운영체제와 프로세서

  • 프로세서에게 처리할 작업 할당 및 관리
    프로세스 생성 관리
  • 프로그램의 프로세서 사용 제어
    프로그램의 프로세서 이용 시간 관리, 복수 프로그램간 사용 시간 조율 등

메모리

  • 데이터를 저장하는 장치 (기억장치)
    프로그램(OS, 사용자 SW 등), 사용자 데이터 등

  • 메모리 종류

속도가 빠르고 용량이 제일 작은 레지스터만 쓰면 되지 않냐고 생각할 수 있지만 비현실적이다.
최소한의 비용으로 최고의 효율을 내기 위해 메모리들을 적당히 잘 섞어서 사용해야 최고의 성능을 얻을 수 있다.

주기억장치 (Main memory)

  • 프로세서가 수행할 프로그램과 데이터 저장
    프로세서는 메인 메모리까지 접근할 수 있기 때문에 무언가 수행할 때 반드시 메인 메모리 안에 들어가 있어야 된다.

  • DRAM을 주로 사용(보통 DRAM이라고 부름). 용량이 크고, 가격이 저렴

  • 디스크 입출력 병목현상(I/O bottleneck) 해소
    프로세서가 디스크까지 가는 게 느려서 성능을 빠르게 하는데 방해요소가 된다. 이 부분을 해소하기 위해 가운데 메모리를 가져다 놓았다.

캐시 (Cache)

  • 프로세서 내부에 있는 메모리(L1, L2 캐시 등)
  • 메인 메모리의 입출력 병목현상 해소

캐시의 동작

  • 일반적으로 HW적으로 관리됨 -> 직접 관리하지 않는다고 보면 됨
  • 캐시 히트(Cache hit)
    필요한 데이터 블록이 캐시 존재
  • 캐시 미스(Cache miss)
    필요한 데이터 블록이 없는 경우

지역성 (Locality)

  • 공간적 지역성 (Spatial locality)
    참조한 주소와 인접한 주소를 참조하는 특성. 예) 순차적 프로그램 수행
  • 시간적 지역성 (Temporal locality)
    한 번 참조한 주소를 곧 다시 참조하는 특성. 예) For 문 등의 순환 문
  • 지역성은 캐시 적중률(cache hit ratio)과 밀접
    알고리즘 성능 향상 위한 중요한 요소 중 하나

보조기억 장치

(Auxiliary memory / secondary memory / storage)

  • 프로그램과 데이터를 저장
  • 프로세서가 직접 접근할 수 없음 (주변장치)
    주기억장치를 거쳐서 접근, (프로그램/데이터 > 주기억장치)인 경우 가상메모리
    가상메모리는 하드디스크의 일부를 메모리처럼 사용한다.
  • 용량이 크고, 가격이 저렴

메모리 할당 관리

  • 프로그램의 요청에 따른 메모리 할당 및 회수
  • 할당된 메모리 관리

가상 메모리 관리

  • 가상메모리 생성 및 관리
  • 논리주소 -> 물리주소 변환

시스템 버스 (System Bus)


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

주변 장치

프로세서와 메모리를 제외한 하드웨어들이다. 입력장치, 출력장치, 저장장치가 있다.

  • 장치드라이버 관리
    주변 장치 사용을 위한 인터페이스 제공

  • 인터럽트(Interrupt) 처리
    주변 장치의 요청 처리

  • 파일 및 디스크 관리
    파일 생성 및 삭제, 디스크 공간 관리 등


참고
https://www.youtube.com/watch?v=EdTtGv9w2sA&list=PLBrGAFAIyf5rby7QylRc6JxU5lzQ9c4tN
https://images.velog.io/images/hyun0310woo/post/40357fb7-5946-4cac-95ca-e34b38ec3f8b/%EC%8D%B8%EB%84%AC.png
profile
"왜" 사용하며, "어떻게" 사용하는지에 대해

0개의 댓글