본문 바로가기
Computer Science/운영체제

[운영체제] OS란 무엇인가

by 히욤 2021. 7. 10.

📌 OS 란 무엇인가

  •  OS (operating system)
  • 사용자가 사용하는 Application Program과 Hardware를 연결하는 것
  • 쉽게 말하면, 아래 그림과 같이 사용자가 프로그램을 사용할 수 있도록 하드웨어 자원과 소프트웨어 자원을 운영 관리하며 편리함을 제공한다.
  • 따라서 하드웨어를 몰라도 컴퓨터를 잘 사용할 수 있도록 한다.
  • 종류 : window, Linux, MacOS 등

 

operating system

 

 

📌 OS가 하는 일

  • Sharing : 한정된 자원을 여러 프로세스가 공유할 수 있도록 관리함
  • Protection : 한 자원에 여러 프로세스가 동시에 수정/접근 하지 않도록 보호함
  • Fairness : 한 프로세스가 자원을 독점하지 않게 함
  • Efficiency : Power을 효율적으로 사용하여 Energy 낭비를 막음
  • Concurrency : 한번에 여러 프로세스들이 동시에 동작하게 함

 

📌 OS의 목적

  1. Throughput (처리 능력)
    • 일정 시간동안 처리하는 일의 양, 시스템 생산성을 나타내는 단위
    • 최대 일수록 좋다.
  2. Turnaround Time (응답 시간)
    • 작업 전체의 시간.
    • 어떤 작업이 시스템에 들어오고 종료되어 나가는 시간이다. 대기시간까지 포함한다.
    • 최소 일수록 좋다.
  3. Reliability (신뢰도)
    • 처리된 결과가 얼마나 정확한지 확인하는 정도
    • 최대 일수록 좋다.
  4. Availability (사용 가능도)
    • 주어진 시간안에 시스템이 동작할 가능성
    • 최대 일수록 좋다.

 

📌 OS는 Event - driven software

OS 동작

위 그림에서 System Call과 Interrupts는 다음과 같다.

위와 같은 동작을 통해서, 사용자가 사용할 프로세스가 하드웨어에 직접 접근해 필요한 기능을 사용할 수 있게 한다.

  • System call
    • OS가 제공하는 서비스를 호출할 때 사용하는 명령이다
    • 사용자가 사용할 프로세스가 커널 모드로 전환할 수 있게 한다. (커널 모드는 다음에 설명함)
    • 커널 모드에서는 직접 HW을 제어할 수 있게 된다.
    • Trap : 의도적으로 인터럽트를 일으킨다. 따라서 trap 명령어를 실행하면 system call이 일어난다. Trap에는 number가 포함되어 있어서 syscall이 어디서 왜 요청되었는지 알 수 있다.
  • Interrupts
    • 프로세스가 CPU(HW)에게 이벤트를 알리며, 프로세스를 처리하게 한다.
    • CPU에게 인터럽트가 걸리면 ISR (interrupt service routine)가 동작한다.

이처럼 OS는 system call, interrupt (= event)를 처리하는 소프트웨어다.

✔️ 따라서 OS는 event(interrupt) - driven software 라고 부른다.