[CS] 운영체제란?

Deagwon Bu·2022년 3월 25일
0

I. 정의

운영체제는 크게 시스템 관점과 사용자 관점으로 바라볼 수 있다. 우선 시스템 관점에서 바라보면, 운영체제는 자원 할당자(Resource Allocator)로서 기능 한다. 컴퓨터를 구성하는 많은 자원들(cpu, memory, storage..)을 필요로하는 프로그램들에게 절절하게 할당하는 역할을 수행한다. 또한 다양한 I/O 장치들과 사용자 프로그램을 제어(Control)하는 역할 또한 수행한다.

사용자 관점에서 운영체제를 바라보면, 운영체제의 목적은 사용자가 작업을 최대한 편하게 수행하도록 돕는 것이다. 사용자가 자원의 할당, 성능, 보안을 크게 신경쓰지 않고 오로지 본인의 작업에만 집중할 수 있도록 돕는 역할을 수행한다.

정리하자면 운영체제란

컴퓨터의 물리적인 자원을 사용&관리하며, 사용자가 작업을 수행하도록 도와주는 소프트웨어이다.

  • Operating System Concepts, 10th edition, 4p

II.구성

흔하게 운영체제는 컴퓨터에서 항상 동작하고 있는 커널이라는 하나의 프로그램을 지칭한다.

하지만, Operating System Concepts 10th edition 에서는 OS는 커널, 시스템 프로그램, 어플리케이션 프로그램의 집합이라고 설명한다.

  • 커널 컴퓨터 과학에서 커널(kernel)은 컴퓨터 운영 체제의 핵심이 되는 컴퓨터 프로그램으로, 시스템의 모든 것을 완전히 통제한다.
  • 시스템 프로그램 응용프로그램과 사용자를 위해 컴퓨터 시스템 자체를 운영, 제어하는 프로그램이다. 컴퓨터를 효율적으로 운영할 수 있도록 하드웨어의 동작을 지시하고 제어, 관리하는 다양한 기능을 제공한다. OS에 속하지만, 커널의 필수적인 요소는 아니다. ex) Shell
  • 미들웨어 프로그램 어플리케이션 개발자들에게 추가적인 기능을 제공하는 소프트웨어 프레임워크의 집합.

정리하면

운영체제는 항상 동작하고 있는 커널(Kernel), 어플리케이션 개발을 용이하게하고, 여러 기능을 제공하는 미들웨어(Middlewares), 시스템이 실행되는 동알 그 시스템을 관리하는 시스템 프로그램(System Programs) 로 구성된다.

  • Operating System Concepts, 10th edition, 7p

Reference

  • Operating System Concepts, 10th edition

0개의 댓글