본문 바로가기
IT

비전공자를 위한 운영체제(Operating System) 쉽게 알아보기

by 파이프라인만들기 2023. 4. 13.

많은 사람들에게 익숙한 운영체제에는 윈도우, 안드로이드, iOS, 맥 OS, 도스 등이 있습니다. 또한 IT에 조금이라도 관심이 있거나 업계에 종사 중인 사람들은 리눅스, 유닉스, 심비안, 타이젠 등도 알고 있습니다. 이런 운영체제에 대한 쉬운 개념을 정리했습니다.

 

운영체제란 무엇이고, 어떤 일(역할)을 하며, 운영체제마다 어떤 특징을 가지는지 비전공자도 이해할 수 있게 쉽게 정리했습니다.

 

글의 순서는 다음과 같습니다.

  • 운영체제가 뭘까?
  • 운영체제는 어떤 일(역할)을 할까?
  • 운영체제 마다 어떤 특징을 가지고 있을까?

비전공자도 이해할 수 있는 운영체제 개념 설명

 

 

운영체제(Operaing System)가 뭘까?

 

우리는 다양한 기기를 사용합니다. 이 기기들의 공통점은 모두 '컴퓨터'라는 점입니다. 컴퓨터는 CPU, 메모리, 보조기억장치(HDD, SSD)와 같은 부품으로 이루어져 있습니다.

 

하지만 우리가 직접 이런 부품들을 제어해서 컴퓨터를 사용하지는 않습니다. 사람이 직접 컴퓨터 부품을 제어하고 관리하기가 매우 어렵기 때문입니다. 부품, 하드웨어를 직접 제어해 주는 프로그램이 바로 운영체제입니다.

 

운영체제(Operating System)는 프로그래밍 언어로 만들어진 하나의 프로그램입니다. 보통은 C, C++, C#, Object C,  어셈블리 등으로 만들어졌습니다.

 

윈도우는 C, C++, C#와 어셈블리로 만들어졌습니다. 유닉스, 리눅스, 그리고 리눅스를 바탕으로 만들어진 안드로이드는 C언어와 어셈블리로 개발되었습니다. MacOS와 iOS도 Object-C와 C(커널 부분), 어셈블리로 만들어졌습니다.

 

 

운영체제는 어떤 일(역할)을 할까?

 

운영체제는 일반적인 프로그램과 다르게 컴퓨터의 부품 및 하드웨어를 제어하고 관리합니다. 하드웨어의 용량과 작동, 상태 등을 모니터링하고, 사용자가 지시한 명령을 하드웨어가 수행하도록 제어합니다.

 

또한 운영체제는 다른 프로그램들이 실행될 수 있도록 설치와 실행 환경을 제공합니다. 우리가 사용하는 프로그램은 대부분 OS(운영체제) 위에 설치가 되고, 운영체제 위에서 실행됩니다.

 

이에 대해서 구체적으로 살펴보면 아래와 같이 정리할 수 있습니다.

  1. 프로세스 관리
    프로그램이 실행 중인 상태를 프로세스라고 합니다. 운영체제는 이 프로세스의 생성, 종료, 삭제, 통신 등을 제어합니다.
  2. 메모리 관리
    우리가 프로그램을 실행하면, 실제 물리적인 부품인 메모리에 프로그램이 올라가서 동작할 수 있도록 메모리를 할당합니다. 그리고 더 이상 프로그램이 동작하지 않으면 해당 메모리를 회수합니다.
  3. 파일시스템 관리
    우리가 컴퓨터에 저장하는 모든 정보, 데이터는 하나의 파일로 존재합니다. 이 파일은 운영체제가 보조기억장치(디스크)에 저장하고 관리합니다. 또한 물리적/논리적으로 분할하고 관리할 수 있는 파일시스템 기능을 제공합니다.
  4. 장치 드라이버 관리
    컴퓨터에 연결된 각종 하드웨어를 응용 프로그램이 사용할 수 있도록 OS가 장치 드라이버를 설치하고 관리합니다.
  5. 네트워크 관리
    컴퓨터끼리 데이터를 주고받는 통신을 할 수 있도록 네트워크 기능을 제공하고 관리합니다.
  6. 보안
    메모리, 프로세스, 파일시스템, 네트워크 등을 보호하는 보안 기능을 제공합니다.
  7. 입출력
    컴퓨터에 연결된 다양한 장치(키보드, 마우스, 마이크, 터치 스크린 등)에서 입력을 받을 수 있는 기능을 제공합니다. 또한 컴퓨터가 처리한 결과를 연결된 장치(모니터, 스피커 등)로 출력하는 기능도 제공합니다.

 

 

운영체제마다 어떤 특징을 가지고 있을까?

앞서서 사람들에게 익숙한 운영체제로 윈도우, 안드로이드, MacOS, iOS 등이 있다고 말씀드렸습니다. 이는 일반적인 사람들이 가장 많이 사용하는 스마트폰과 가정용 PC, 업무용 PC에 보편적으로 설치되어 있는 운영체제이기 때문입니다.

 

또 리눅스와 유닉스 같은 경우 대부분의 서버 장비에서 사용됩니다. 보통은 "~ 계열"의 패키지들이 서버에 설치되어 사용됩니다.

 

여기에서는 가장 많이 사용되는 윈도우, 안드로이드, iOS, MacOS, 리눅스, 유닉스에 대해서 간단히 알아보겠습니다.

 

윈도우

윈도우는 사람들이 가장 많이 사용하는 PC용 운영체제입니다. 2020년 기준 데스크톱(보통은 PC) 운영체제 시장 점유율이 80%로 압도적인 1위입니다.

가정용 교육용, 업무용으로 가장 많이 사용되고, 대부분의 노트북과 데스크톱에서 사용하고 있습니다.

다만 모바일 기기(스마트폰이나 태블릿 등)에서는 거의 사용하지 않습니다. 다른 기기들과의 연계, 인터페이스 성능 등이 떨어지고, 모바일에서의 UX가 많이 부족하기 때문입니다.

서버 영역에서도 윈도우는 비선호 운영체제입니다. GUI를 사용할 수 있다는 점 외에는 모든 면에서 리눅스와 유닉스에 떨어지기 때문입니다.

 

MacOS, iOS

Apple 사에서 나오는 모든 장비에는 자체적으로 만든 MacOS와 iOS가 사용됩니다. Apple 사에서 나오는 장비들에 특화되어 만들어진 OS이기 때문에 매우 최적화되어 있습니다.

성능과 안정성뿐만 아니라 UX적인 측면도 매우 뛰어나서 IT 업계에 종사하는 사람들이 가장 많이 사용합니다.

하지만 기기와 OS가 일체형이기 때문에 매우 비싸고, 확장할수록 비용이 많이 들기 때문에 일반인들에게는 허들이 있습니다.

데스크톱 운영체제 시장에서의 점유율은 7~8%입니다.

 

안드로이드

안드로이드는 아이폰과 아이패드 이외의 대부분의 스마트폰과 태블릿에 사용되는 OS입니다. 오픈소스이고 무료이기 때문에 대부분의 모바일 기기들에서 사용됩니다.

다만, 특정 기기에 최적화되어있지 않기 때문에 아이폰과 iOS 만큼이나 성능이나 UX가 뛰어나지 않습니다. 그러나 OS 자체도 무료이고, 심지어 안드로이드 OS에서 사용할 수 있는 애플리케이션도 무료인 어플들이 많습니다.

일반인들이 사용하기에 가장 부담 없는 OS라고 볼 수 있습니다. 리눅스를 기반으로 만들어졌기 때문에 리눅스 계열의 OS라고도 볼 수 있습니다.

 

리눅스와 유닉스

유닉스는 서버 컴퓨터용으로 만들어진 유료 OS입니다. 뛰어난 안정성과 확장성 그리고 멀티 유저가 사용이 가능한 환경이기 때문에 리눅스가 등장하기 전까지 서버에서는 압도적인 점유율을 차지했습니다.

리눅스는 유닉스 기반으로 만들어진 공개 운영체제입니다. 무료로 배포된 OS이기 때문에 리눅스가 등장하면서 서버 운영체제의 점유율이 변하기 시작합니다.

현재는 대부분의 회사에서 서버에 리눅스의 패키지 OS들(레드햇, 우분투 등)을 사용하고 있습니다. 그리고 기존의 유닉스가 설치된 서버들을 리눅스 서버로 이전하는 U2L(Unix to Linux) 프로젝트를 많이 하고 있습니다.

 

댓글