[운영체제] 2. Introduction to Operating Systems (1)

2022. 1. 7. 16:26CS/OS

운영체제란? 

소프트웨어와 하드웨어를 연결하는 소프트웨어 계층.

 

 좁은의미로는 커널 : 운영체제 핵심 부분. 컴퓨터 전원을 킨 후 항상 메모리에 상주.

 넓은의미로의 운영체제 : 커널을 포함한 주변 시스템을 다루는 유틸리티

 

운영체제의 목적 

1.위치가 하드웨어와 소프트웨어 가운데에 있기에 하드웨어를 효율적으로 관리하는 역할을 함. 

 

-> 자원을 효율적으로 관리(CPU, 메모리, 각종 I/O : 리소스를 효율적으로 관리) 

 : 주어진 자원으로 최대한의 성능을 내도록.

  특정 사용자나 프로그램이 불이익을 받지 않도록 형평성 있는 자원 분배 필요.

  소프트웨어 자원(프로세스, 파일, 메시지 등)도 관리할 책임 가짐.

 

2. 컴퓨터를 편리하게 사용할 수 있는 환경 제공.

 

운영체제의 분류

 

동시작업 가능여부에 따라

- 단일 작업(single tasking) : 한 번에 하나의 작업만 처리

 (ex) MS-DOS 한 명령의 수행 끝나기 전에 다른 명령 실행 불가

- 다중 작업(multi tasking) : 동시에 두 개 이상의 작업 처리

 (ex) MS Windows, UNIX

 

사용자의 수에 따라

- 단일 사용자 (single user) 

 (ex) MS-DOS, MS Windows

- 다중 사용자 (multi user)

 (ex) UNIX, NT server

 

처리 방식에 따라 

- 일괄 처리(batch processing) : 현대 운영체제에서는 찾아보기 어려움.

  일정량 모아서 한번에 처리

 (ex) 초기 ORM같은 Punch Card 처리 시스템

   일반적으로 생각하는 컴퓨터 시스템과는 거리가 있음. interactive하지 않음.

   작업을 모아서 한꺼번에 처리하는 시스템. 

   정확성이 중요했음. (현재는 컴파일러가 오류를 잡아주기 때문에 중요해지지 않았음.)

 

- 시분할(time sharing)

  여러 작업 수행할 때 컴퓨터 처리 능력을 일정 시간 단위로 분할하여 사용.

  사람이 느끼기에 빠르면서도 동시에 자원을 최대한 활용.

  -> 사람에 특화된 시스템

  (일반적인 범용 컴퓨터에 사용)

  

- 실시간(realtime OS)

  정해진 시간 안에 보장해야 하는 시스템

  (특수한 목적을 가진 시스템)

  (ex) 원자로/공장 제어, 미사일 제어, 반도체 장비, 로보트 제어

  : 엄격한 기준에 의해 관리. 

  hard realtime system : deadline 완벽히 지켜야 하는 시스템 

  (원자로, 반도체 공장 가동, 미사일이 엉뚱한데 날아가면 안됨.)

  soft realtime system : deadline은 존재하지만 큰 문제는 없음.

  (영화 상영)

   점점 실시간성을 필요로 하는 프로그램이 늘어나고 있으면서 중요한 이슈가 되고 있음.

  

: 현재는 다중사용, 시분할을 이용하고 있다.

 

[유사한 용어 구분]

- Multitasking : 동시에 실행되는 작업. (CPU가 하나 있더라도 시간을 나눠서 동시에 실행하는 시스템)

- Multiprogramming : 메모리에 여러 프로그램이 동시에 올라가는 방식.

- Time sharing : 동시에 실행되는 작업인데 CPU쪽을 강조한 용어

- Multiprocess : 여러 프로그램이 동시에 실행.

 (multiprocessor : multitasking + 하나의 컴퓨터에 CPU가 여러 개 붙어 있음.

  -> 하드웨어적으로 다른 시스템) 

 

운영체제 가장 일반적으로는 CPU가 하나 있는 시스템을 다룸.

'CS > OS' 카테고리의 다른 글

[운영체제] Process 3  (0) 2022.01.24
[운영체제] Process 2  (0) 2022.01.24
[운영체제] Process 1  (0) 2022.01.20
[운영체제] System Structure & Program Execution 1  (0) 2022.01.13
[운영체제] 2. Introduction to Operating Systems (2)  (0) 2022.01.07