운영 체제(OS)란 무엇일까?
2025-06-11 17:41

시작하기
OS(Operating System)라는 단어는 한 번쯤 들어보셨을 텐데요. 저 역시 익숙한 용어임에도 불구하고, 정확히 무엇을 의미하고 어떤 역할을 하는지 명확히 알지 못했던 적이 있었습니다. 이번 기회에 운영체제가 무엇인지, 어떤 일을 하는지 자세히 알아보려 합니다. 지금 이 글을 쓰고 있는 제 Mac 노트북 역시 OS가 탑재되어 있기 때문에, 제가 이렇게 글을 작성하고 여러 작업을 자유롭게 할 수 있는 것이겠죠.
운영체제 정의
운영체제를 이해하기 위해서는 내가 운영체제다라고 생각하면 쉽습니다. 내가 운영체제라면 하드웨어를 어떻게 관리하면 좋을까? 내가 사용자에게 어떻게 해주면 좋을까?를 생각해보면 됩니다. 한 나라의 대통령을 운영 체제라고 한다면, 대통령이 국민을 어떻게 관리하고, 세금은 어떻게 매기고, 통치는 어떻게 하고 등을 생각해보겠죠. 운영체제도 마찬가지 입니다.
자원과 사용자를 통제하고 관리하는 소프트웨어입니다.

운영체제란 컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층을 말합니다.
-
좁은 의미 (협의의 운영체제): 커널
좁은 의미의 운영체제는 커널이라고 부르는데, 커널은 운영체제의 핵심입니다. 커널은 컴퓨터 전원을 키면 항상 메모리에 상주하여 실행되고 있습니다. -
넓은 의미 (광의의 운영체제): 커널 + 주변 시스템 유틸리티
넓은 의미에서는 커널을 포함해서 여러가지 주변 시스템 유틸리티를 포함한 개념으로, 실제 사용자가 경험하는 운영체제 환경을 말합니다.
예를 들면 윈도우 운영체제를 설치하게 되면, 단순히 커널만 있는게 아니라 여러 가지 부가적인 프로그램이 같이 설치가 되는 것을 말해요
운영체제의 목적

1. 자원 관리
운영 체제 컴퓨터 자원(Resource)을 효율적으로 관리합니다. 자원을 효율적으로 관리하는 것이 운영체제의 핵심으로 굉장히 중요한 기능인데요. 여기서 자원은 CPU나 메모리, 입출력 장치 등을 말합니다. 이러한 주어진 자원을 가지고 최대로 성능을 낼 수 있도록 해줍니다. 특정 사용자만 자원이 몰리지 않도록 형평성있게 자원을 분배해줘요. 프로세스, 파일, 메시지 등도 우리가 자원이라고 부릅니다. 하드웨어와 구분되는 소프트웨어 자원으로 운영 체제는 하드웨어 뿐만 아니라 소프트웨어 자원도 관리해야합니다. 또한 사용자와 운영체제 자신을 보호하도록 기능을 해야합니다.
2. 사용자에게 편리한 사용 환경 제공
사용자에게 직관적이면서도 편리한 환경을 제공합니다. 만약 운영체제가 없었다면, 하드웨어는 하나의 고철 덩어리에 불과하고 엄청 난 능력이 있지 않는 사람이 아닌 이상 쓰기가 힘들어요. 이런 과정을 편하게 해주는 것이 운영체제이고 직접 하드웨어에 접근하지 않으면서 운영 체제로만 서로 인터페이스를 하면서 쉽게 사용할 수 있도록 해줍니다. 하나의 컴퓨터에서 여러 개의 프로그램을 동시에 실행시키면 비록 컴퓨터는 한 대지만, 마치 프로그램들이 자기 혼자서만 돌고 있다고 착각을 합니다.
예를 들면,
컴퓨터 안에 CPU 라는 자원이 보통 하나가 있고, 여러 프로그램이 동시에 실행 될때 하나의 CPU로 돌아가면서 써야합니다. 실행 시간이 1초라면 A → B → C프로그램을 번갈아가면서 실행시킵니다.
이러한 프로그램들은 자기 혼자만 컴퓨터 안에서 실행 되는 줄로만 알고 있습니다. 이런 것들을 왜 사용자가 눈치를 못챌까요? 워낙 이런 과정들이 빠르게 진행되기 때문에 사람이 느끼지는 못한다고 합니다. 메모리도 마찬가지로 프로그램마다 조금씩 메모리를 나눠서 효율적으로 사용되도록 운영체제가 조율을 해줍니다.
운영 체제의 분류
얼마나 많은 사용자가 동시에 접근할 수 있느냐에 따라 운영체제를 다음과 같이 구분할 수 있습니다.
1. 동시 작업의 가능 여부
1) 단일 작업 (Single Tasking)

- 한 번에 하나의 작업만 처리
- 예전 운영체제는 한번에 하나의 작업만 처리
- 단일 작업은 예전에 썼던 방식인데, MS-DOS 프롬프트 상에서 한 명령의 수행을 끝내기 전에 다른 명령을 수행시킬 수 없었어요. 한 번에 하나만 처리하는 것을 말합니다.
2) 다중 작업 (Multi Tasking)
- 동시에 두 개 이상의 작업 처리
- 현대 운영체제는 다중작업을 지원
- 예를 들면 UNIX, MS windows, 스마트폰 등이 있고 다중 작업이 되면, 한 명령이 수행이 끝나기 전에 다른 명령이나 프로그램을 수행할 수 있습니다.
최근에도 단일 작업이 있는 운영체제를 사용하고 있긴 합니다. 엘레베이터와 같이 한 기능만 하거나 특수목적으로 제작된 기계를 위한 것은 단일 작업만 지원하고 있습니다. 하지만 요즘엔 스마트폰 같이 범용기기로 발전해서 다중 작업까지 지원하고 있습니다.
2. 사용자의 수
1) 단일 사용자 (Single User)
- 한 명의 사용자만 지원
- 단일 작업만 하는 운영체제는 단일 사용자만 지원해줌
- MS-DOS, MS windows
2) 다중 사용자 (Multi User)
- 여러 사용자가 동시에 접속하도록 지원해줌
- ex) UNIX, NT server
- 여러 사용자가 동시 접근을 할 수 있느냐 없느냐에 따라 구분해놓은 운영체제이고, 아무래도 사용자가 많으면 사용자에 대한 파일이나 메모리 접근도 다른 사용자가 볼 수 없도록 하는 보안도 처리가 따로 되어야 합니다.
3. 처리 방식
1) 일괄 처리 (Batch Processing)
- 작업을 모아 한 번에 처리
- 과거 시스템, 오류 시 큰 지연
- 한번에 처리하는 방식인데 현대 운영체제에서는 사용하고 있지 않고 역사 속으로 사라진 시스템입니다.
작업카드를 마킹을해서 직원에게 가져다 주면 그 다음날 에러가 있거나 성공 유무를 알려주는 시스템으로 굉장히 interactive하지 않은 방식입니다.
2) 시분할 (Time Sharing) ⭐️

- 시간 단위로 자원을 나누어 여러 작업 처리
- 현대 범용 OS에서 일반적
- 짧은 응답시간
여러 작업이 수행될 때 동시에 실행되지만 운영체제 시간 단위로 자원을 나눠서 지원을 해주는 방식을 말합니다. 사용자 입장에서는 바로 바로 반응이 오니까 interactive한 방식으로 받을 수 있고 현대 운영체제에서 많이 사용되고 있습니다.
3) 실시간 시스템 (Real-time OS)
- 데드라인이 있어서 정해진 시간안에 반드시 결과가 나오는 것을 보장해주는 시스템
- 특수한 목적을 가진 시스템에서 그 작업이 반드시 실행되도록 함
- 예) 원자로/공장 제어, 미사일 제어, 반도체 장비, 로보트 제어
- 실시간 시스템은 데드 라인에 반드시 결과를 보장하는 시스템입니다.
예를 들면, 반도체 장비가 파이프라인으로 매일 장비가 제작 되어야하는 프로세싱을 거치는 데, 실시간이 안되면 공정을 처리하는데도 큰 문제가 생기게 됩니다. 요새 장비들에서도 실시간성을 필요로 하는 장비가 늘어나고 있어요. 예를 들면 자동차 사고가 났는데 0.1초 차이로 블랙박스가 사고난 장면을 못찍었다고 하면 문제가 됩니다. 운영체제도 이러한 애플리케이션을 어떻게 지원해주냐가 중요한 이슈가 되고 있습니다. 지금 현대의 운영체제는 다중 작업을 지원하고 있고, 다중 작업자를 지원하고 있고 왠만해서 시분할 방식으로 운영하고 있습니다.
운영체제의 예시
1. 유닉스 UNIX

유닉스는 대형 컴퓨터를 위해 만들어진 운영 체제로 멀티태스킹과 여러 사용자를 지원합니다. 유닉스를 만들기 위해 우리가 잘 알고 있는 프로그래밍 언어인 C언어를 만들었습니다. 코드 대부분이 C언어로 되어 있고 유닉스 코드는 모두 소스가 공개되어 있다고 하네요. 그래서 학습용으로도 많이 쓰고 있습니다.
파생된 다양한 버전이 있는데 Linux 입니다. 처음엔 서버를 위한 운영체제였는데, 개인용PC에 설치해서 사용하기도 좋고 Android도 기반 커널 사용하고 있습니다.
2. DOS (Disk Operating System)

- MS 사에서 1981년 출시
- 단일 사용자, 단일 작업 지원
- 메모리 제한 (640KB)으로 기능 제약
- 마이크로소프트웨어에서 1981년 개인 사용자를 위해 개발한 PC로 개인용 컴퓨터, 단일 사용자, 단일 작업지원부터 출발했습니다. 메모리 크기가 작아서(주기억장치 : 640KB) 하드웨어의 발전속도에 비해 크기가 턱없이 부족해 기능 제약이 생겼습니다.
3. Windows

- MS 사의 그래픽 기반 운영체제
- 멀티태스킹 지원
- 현재 개인용 PC에서 가장 널리 사용됨
- 마이크로소프트웨어 사에서 만든 윈도우즈는 다중 작업 용 그래픽 기반 운영 체제로 현재 개인용 PC에서 널리 사용되고 있는 운영체제입니다.
마무리

운영체제가 시대의 흐름에 따라 다양한 형태로 진화해 왔으며, 그 종류 또한 매우 다양하다는 사실을 알 수 있었습니다. 운영체제가 존재함으로써 우리는 복잡한 하드웨어와 소프트웨어 사이에서 보다 용이하게 작업을 수행하고, 효율적인 자원 관리를 통해 편리하게 프로그램을 사용할 수 있게 되었습니다.
Reference
이화여대 KOCW 반효경 교수님 강의