운영체제 개요

본 글은 kocw에서 제공해주는 이화여자대학교 반효경 교수님의 운영체제 강좌를 정리한 내용입니다.

운영체제란?

컴퓨터 하드웨어 위에 설치되어서 사용자 또는 다른 응용 프로그램과 하드웨어를 연결 및 관리를 해주는 소프트웨어

주기능 / 목적

  • 각 프로그램들이 독자적 컴퓨터에서 수행되는 것 같은 환경을 제공. 하드웨어를 직접 다루는 부분은 운영체제가 관리
  • 프로세스, 파일, 메세지 등을 관리
  • 자원 (CPU, 메모리 등등), I/O 장치들의 효율적 관리
    • 주어진 자원으로 최대한의 성능 → 효율성
    • 특정 사용자/프로그램의 지나친 불이익이 발생하지 않도록 → 형평성

커널

운영체제의 핵심적인 부분으로, 컴퓨터 부팅시부터 종료까지 항상 메모리에 상주해 있는 부분

운영체제 분류

작업 방식

단일 작업 (single tasking)

한번에 하나의 작업만 처리

다중 작업 (multi tasking)

동시에 두개 이상의 작업 처리

사용자

단일 사용자

ex) Max, Window

다중 사용자

ex) UNIX, NT Server

처리 방식

일괄 처리 (batch processing)

작업을 일정량 모아서 한꺼번에 처리. 작업이 완전 종료될때까지 기다려야한다. 아주 옛날 컴공에서 구멍뚫어서 컴파일 돌릴때 쓰던 방식

시분할 (time sharing)

여러 작업을 수행할 때, 일정한 시간단위로 나눠서 작업을 수행하는 방식. 일괄처리보다 짧은 응답시간. 일반 사용자가 사용하는 OS에서주로 사용.

실시간 (Realtime)

정해진 시간안에 어떠한 일이 반드시 종료되어야 함을 보장되어야 하는 실시간 시스템을 위한 OS 방식.

 

Multi tasking, Multi programming, Time sharing, Multi process는 컴퓨터가 여러 작업을 동시에 수행하는 것을 의미한다.

하지만 Multi processor는 하나의 컴퓨터에 프로세서가 여러개 붙어있음을 의미.

즉 Multi tasking, Multi programming, Time sharing, Multi Processing은 OS가 적절하게 스케줄링해서 여러 프로세스들이 동시에 실행되는것 처럼 프로그램을 실행하는 것이고, Multi Processor는 물리적으로 평행하게 여러 프로세스들이 동시에 실행되는 것

'운영체제' 카테고리의 다른 글

시스템 콜, DMA를 이용한 인터럽트 컨트롤  (0) 2023.11.15