Operating System

[운영체제] Introduction to Operating System

선의 2022. 4. 4. 17:27

해당 글은 이화여대 권진욱 교수님 운영체제 강의, KOCW에 등록된 반효경 교수님 운영체제 강의, 운영체제 10판을 참고하여 작성하였습니다.

 

운영체제란?

하드웨어를 관리하는 소프트웨어로, 응용프로그램을 위한 기반을 제공 + user-HW 사이의 중재자

(CPU, 메모리, I/O, 저장장치 등의) 자원을 프로그램에 할당

 

 

운영체제의 역할

(1) 사용자 관점(User View)

사용자의 용이성 - 사용자가 수행하는 작업을 최대화

이 경우, 자원을 어떻게 할당하는지는 거의 고려하지 않음

(2) 시스템 관점(System View)

자원할당자이자 제어 프로그램

 

 

운영체제의 목적

(1) 컴퓨터 시스템을 편리하게 사용할 수 있는 환경 제공(사용자 관점)

- 하드웨어를 직접 다루는 복잡한 부분을 운영체제가 대행한다

- 운영체제는 동시 사용자/프로그램들이 각자 독자적 컴퓨터에서 수행되는 것 같은 느낌을 줌

- 사용자가 수행하는 작업을 최대화 + 자원을 최대한 효율적으로 할당(제어) = 컴퓨터를 최대한 편리하게 사용

(2) 컴퓨터 시스템의 자원을 효율적으로 관리

- 자원(프로세서, 기억장치, 입출력 장치 등)의 효율적 관리: 형평성 있는 자원 분배 + 주어진 자원으로 최대한의 성능

- 프로세스, 파일, 메세지 등을 관리

 

 

운영체제의 분류

  1. 동시 작업 가능 여부 
    1. 단일 작업
      한 번에 하나의 작업만 처리
    2. 다중 작업
      동시에 두 개 이상의 작업 처리
  2. 사용자의 수(정말 말 그대로 사용자의 수)
    1. 단일 사용자
    2. 다중 사용자
  3. 처리 방식
    1. 일괄 처리
      작업 요청의 일정량을 모아서 한 번에 처리
      작업이 완전 종료될 때까지 기다려야 함
      요즘은 안 이럼... 교수님왈 석기시대
    2. time sharing
      여러 작업을 수행할 때 컴퓨터 처리 능력을 일정한 시간 단위로 분할하여 사용
      일괄 처리 시스템에 비해 짧은 응답 시간
      interactive한 방식
    3. Realtime Os
      1. Hard realtime system: 정해진 시간 내에 반드시 작업 종료
      2. Soft realtime system

 

용어 정리

Multitasking

Multiprogramming: 여러 프로그램이 메모리 위에 올라가 있음

Time sharing: CPU의 시간을 분할하여 나누어 씀

Multiprocess: CPU가 여러개
(Multiprocessor: 하나의 컴퓨터에 CPU가 여러 개 붙어 있음,
Multicore: CPU 안에 core가 여러 개 들어가있음)

 

 

CPU, Processor, Core

CPU(Central Processing Unit)

컴퓨터의 뇌. 컴퓨터의 구성단위 중 기억, 제어, 연산 세가지를 종합. 인텔에서 처음 썼다.

 

Processor

컴퓨터 운영을 위한 기본적인 명렁어를 처리&반응하기 위한 논리 회로

Control Unit(소프트웨어의 지시를 읽고 하드웨어에 신호를 보냄) + ALU(연산)로 이루어짐

장치가 해야할 일을 총지휘하는 프로세서를 CPU,

CPU를 보조해주는 프로세서를 보조 프로세서라고 함

프로세서라는 용어가 CPU라는 용어를 대체해 왔다

 

Core

CPU 안에서 각종 연산을 하는 핵심 부분(CPU 내에는 캐시, 컨트롤러 등 다른 부분도 있다)

많으면 많을 수록 빠르다

CPU 안에서 일하는 핵심 장치이자, 많으면 많을수록 빠르다. 정도만 기억하기