[os] 1. 개요

SINHOLEE·2020년 6월 30일
0

os강의 정리

목록 보기
1/2

os introduction

1. 운영체제란?

  • 컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층
  • 협의의 운영체제(커널): 운영체제의 핵심 부분으로 메모리에 상주하는 부분을 뜻함.
  • 광의의 운영체제: 커널 뿐 아니라 각종 주변 시스템 유틸리티를 포함한 개념

2. 운영체제 목적

  1. 하드웨어의 자원을 효율적으로 관리하는 역할.
  • 자원이란?
    • 하드웨어자원: 프로세서, 기억장치, 입출력 장치 등
    • 소프트웨어 자원: 프로세스, 파일, 메시지 등
  • 키워드
    • 효율성: 시, 공간의 자원을 최대한 낭비없이,
    • 형평성: 효율성만 따지다보면 특정 작업이나 사용자의 명령을 후순위로 두게 된다. 이를 제어하기 위해 형평성을 보장한다.
  • os resource sharing
  • 메모리 할당 조정
  1. 유저 인터페이스의 역할

3. 운영 체제의 분류

3.1. 작업의 수

  1. 단일작업
    • ms-dos 프롬프트 상에서는 한 명령의 수행을 끝내기 전에 다른 명령을 수행시킬 수 없음
    • ex) 엘리베이터, 과거 벽돌폰 등
  2. 다중작업
    • unix, ms windows 등에서는 한 명령의 수행이 끝나기 전에 다른 명령이나 프로그램을 수행할 수 있음

3.2. 사용자의 수

  1. 단일 사용자
    • ms-dos, ms windows
  2. 다중 상용자
    • unix, nt server
    • 보안, 형평성 이슈

3.3. 처리방식

  1. 일괄처리(batch processing)
    • 작업 요청의 일정량을 모아서 한꺼번에 처리
    • 작업이 완전 종료될때까지 기다려야 함
    • ex) 초기 punch card 처리 시스템
  2. 시분할(time sharing)
    • 여러 작업을 수행할 때 컴퓨터 처리 능력을 일정한 시간 단위로 분할하여 사용
    • 일괄 처리 시스템에 비해 짧은 응답 시간을 가짐
    • interactive한 방식: 키보드를 칠 때 마다 반응이 보인다는 특성, 하지만 시간의 데드라인이 없어 정확한 시간을 지켜주진 않는다.(예를들어, 멀티테스킹이 많으면 버벅거린다면 조금 느림)
  3. 실시간(realtime os)
    • 정해진 시간 안에 어떠한 일이 반드시 종료됨이 보장되어야 하는 실시간 시스템을 위한 os
    • ex) 원자로/ 공장제어, 미사일제어, 반도체장비, 로보트 제어
    • 실시간 시스템의 개념 확장
      • Hard realtime system(경성 실시간 시스템): 데드라인을 지키지 못한다면 치명적인 결함이 발생하는 시스템
      • Soft realtime system(연성 실시간 시스템): 데드라인은 있지만, 조금의 오차가 있다고 해서 큰 손실을 보는 경우가 아닐때, ex) 영화 초당 24프레임을 지켜야하는데, 초당 20프레임으로 퍼포먼스를 낸다면 치명적이진 않다.

4. 용어 정리

  • multitasking : 한 컴퓨터가 여러개의 일을 동시에 한다는 의미, cpu가 빠르게 돌면서 각각의 task를 번갈아가면서 일을 수행 -> 행위에 강조
  • multiprograming: 메모리 측면을 강조, 여러 프로그램이 메모리에 올라감
  • time sharing: cpu에서 번갈아 가며 작업을 수행한다는 부분을 강조
  • multiprocess: 여러 프로그램이 동시에 실행된다.
  • multiprocesser: cpu가 여러 개 있다는 의미

5. 구조

6. 출처

profile
엔지니어로 거듭나기

0개의 댓글