We will find a way, we always have.

-interstellar

Computer Science/운영체제

[OS] Introduction to Oprerating Systems

Redddy 2023. 6. 22. 21:52

운영체제 Operating System

운영체제는 H/W 위에 설치되어 사용자 혹은 S/W 와 연결시켜주는 역할을 한다.

OS의 역할

  • 프로세서, 기억장치, I/O 등을 효율적으로 관리
  • 사용자 및 OS 자신의 보호
  • 프로세스, 파일, 메시지 관리

OS의 주 역할은 자원을 효율적으로 관리하는 것이다. 이때 효율적이란 형평성을 고려하고 성능을 최적화 한다는 의미이다.

OS의 분류

동시 작업 가능 여부

  • 단일 작업 (Single Tasking): 하나의 프로그램(프로세스)만 실행이 가능하고, 하나가 끝날 때까지 다른 작업은 wait 상태에 있다.
    ex) MS-DOS
  • 다중 작업 (Multi Tasking): 동시에 두 개 이상의 프로그램(프로세스) 실행이 가능하고, 명령이 끝나기 전에 다른 명령 수행이 가능하다.
    ex) UNIX, MS Window

사용자의 수

  • 단일 사용자 : 한 명의 사용자만 시스템 사용 가능하고 때문에 한 명의 사용자가 모든 시스템 자원을 독점한다.
    ex) 개인용 장비(PC, mobile) 등에 사용 Windows 7/10, android
  • 다중 사용자 : 동시에 여러 사용자들이 시스템을 사용한다. 각종 시스템 자원들에 대한 소유 권한 관리가 필요하고 기본적으로 Multi tasking 기능이 필요하다.
    ex) 서버 클러스터(cluster) 장비 등에 사용, Linux, Unix

처리 양식

  • 일괄 처리 (Batch processing)

    • 작업 요청을 일정량 모아서 한번에 처리
    • 작업이 완전 종료될 때까지 대기
    • 인터랙티브하지 않은 예전 OS
  • 시분할 (Time sharing)

    • 여러 작업을 시간 단위로 분할
    • 일괄 처리 시스템에 비해 짧은 응답시간
    • 인터랙티브한 방식
  • 실시간 (Realtime OS)

    • 데드라인안에 작업을 수행
    • 경성 실시간 시스템: 데드라인을 어길시 시스템에 심각한 영향 끼침 (원자로/ 공장 제어, 미사일 제어)
    • 연성 실시간 시스템: 데드라인을 넘어가도 시스템에 큰 영향을 미치지 않고, 무효화 처리 또는 복구 등을 통해 재가동 (컴퓨터, 모바일 기기, 네트워크 관련 기기)

OS의 기능

  • CPU 스케줄링
  • 메모리 관리
  • 파일 관리
  • 입출력 관리

ref: 운영체제 반효경 교수님 강의