운영체제

(RTOS에서 넘어옴)

영어: Operating System

'운영 체제 '목록
WindowsMicrosoft Windows(Windows 9x, Windows NT)
리눅스데비안데비안 GNU/리눅스 · 우분투 · 리눅스 민트 · 칼리 리눅스 · 크런치뱅 · 하모니카 리눅스 · 기린 · Damn Small Linux · elementary OS · 스팀 OS
레드햇레드햇 엔터프라이즈 리눅스 · 페도라 · MeeGo · 붉은별 · 센트OS · 아시아눅스 · 타이젠
슬랙웨어슬랙웨어 리눅스 · 오픈수세 · Slax
맨드리바Mandriva · Open Mandriva Lx · 마제야 · PCLinuxOS · no.1Linux
안드로이드안드로이드 · 크롬 OS · Remix OS · Polaris OS
아치 리눅스아치 리눅스 · Manjaro Linux · Antergos · ArchBang Linux
기타젠투 리눅스 · Nix OS
유닉스BSDBSD · FreeBSD · NetBSD · OpenBSD · TrueOS · GhostBSD · DragonFly BSD · TmaxOS
XNUiOS · macOS · tvOS · watchOS
기타솔라리스(SmartOS) · IBM AIX · HP-UX
DOSDR-DOS · MS-DOS · FreeDOS · K-DOS
기타ReactOS · Mac OS · OS/2(eComStation)

1 개요

사용자가 컴퓨터를 쉽게 다루게 해주는 인터페이스다. 대부분 운영체제 전공책을 보면 OS에 대한 엄밀한 정의를 하지 않는다. 더 정확히는 할 수 없다라는게 정설. 하드웨어와 가장 직접적으로 관련되는 소프트웨어다. (드라이버는 대개의 경우 OS를 거쳐서 설치되므로)

2 설명

width=100%
각각 유저들이 생각하는 OS

운영체제라 하면 윈도우 같은 걸 생각하기 쉽겠지만 좀 더 넓은 의미로는 하드웨어와 소프트웨어를 관리하는 소프트웨어 전체라고 할 수 있다. 이러한 운영체제는 어느 기기에서 어떠한 형태로도 나타날 수 있다. 비단 pc용 윈도우만이 운영체제가 아니고, MP3를 켜면 전원이 들어와 장치를 깨우고 사용자의 명령에 따라 음악을 재생하는 동작들을 관리하는 것들도 전부 운영체제라 할 수 있다. [1] 조금 더 직접적으로 말하자면, 뮤텍스니 세마포어니 하는 얘기들이 나오는 커널이라는 것을 운영체제라고 할 수 있겠다. 그래서 운영체제 시간에 이게 뭔소리야 라고 한다 이러한 운영체제 역시 하늘의 별 만큼이나 그 수가 많다. 전문적으로 운영체제를 다루는 책은 Operating System Concepts, 일명 공룡책[2]이 대표적이다.

PC에서 사용되는 대표적인 운영체제로는 Windows, macOS, 리눅스가 있다.

공급되는 시장에 따라 보통 일반 사용자용, 기업용, 서버용, 임베디드의 4개 시장으로 나뉘어져 있으며, 이 중 일반 사용자와 기업용 시장은 현재 마이크로소프트사의 윈도우즈가 거의 대부분을 차지하고 있다. 매킨토시와 구분하기 위해 윈도 컴퓨터를 PC라는 명칭으로 부르기도 한다. 2006년 이후로는 애플에서 인텔 CPU를 집어넣은 매킨토시를 만들고 비스타를 까는 공격적인 마케팅을 하면서 macOS그나마 선전중.

리눅스유닉스(정확히는 미닉스)의 클론으로 탄생된 OS로, 오픈소스인 것이 특징. 맥과 함께 Unix-like에 포함되기도 한다. 서버용으로 많이 사용되나 데스크탑용으로 사용할 수 있는 리눅스 배포판도 존재한다. 대표적인 것이 Ubuntu.

서버용의 경우에는 리눅스, 유닉스(솔라리스 등), 윈도 등등 수많은 경쟁자가 박터지게 싸우고 있다. macOS의 서버 버전도 있기는 하지만, 여러 이유로 시장 점유율이 0% 대(...) 간혹 맥 미니를 웹서버로 돌릴때나 쓰이는 정도.

임베디드 OS는 크게 구분해서 두가지가 있는데 가장 일상적으로 발견할 수 있는 형태는 Firmware에 가까운 형태인데 수정, 변경등을 위한게 아니라 단순히 서비스를 위한 실행용 OS가 있다. 간단히 말해서 컴퓨터가 아닌 휴대폰이나 PMP, 냉장고(...)등의 기계에 완전히 통합돼서 나가는 물건으로[3], 대부분 하드웨어와 일체형이라 일반 사용자들은 그 속을 함부로 뜯어볼 수 없게 되어 있다. 소프트웨어라고 해 봐야 하드웨어를 돌릴 수 있을 정도면 땡이라 그렇게 크게 인식되지 않으나, 그 중에서도 모바일 부문은 iOS이후 상황이 많이 달라졌다. 그 이전에는 윈도우 모바일부터 국내에서는 듣보잡취급을 받지만 정작 해외시장에서는 거의 절반가까이를 차지하고 있는 심비안부터 다양한 변종 리눅스, 거기에 각 휴대기기 제조 회사들이 만든 자체 OS까지 난리도 아니었다. 하지만 한국은 그노무 WIPI가..

두번째 형태로 Embedded Board등에서 사용되는 OS가 있다.
기본적으로 Embedded Board는 어딘가에 삽입되어 사용되는 전제가 붙기 때문에 ARM기반으로 나오는 것들도 많지만, 8bit에서 16bit CPU가 주류를 이루는데 이러한 개발 보드에 들어가는 프로그램은 OS라고 안하고 Firmware라고 부르기 때문에 제외하도록 한다.
ARM기반 CPU Board에서 가장 쉽게 접할 수 있는 OS는 리눅스 기반의 Rasbian이 있으며, Windows Embedded계열 OS 도 있다.
개발 보드라고는 하지만 어지간한 스마트폰급 성능에서 이를 능가하는 것들도 있어서 간단한 웹 서버나 스트리밍 서버, 혹은 TV에 연결해서 쓰는 홈서버로서 이용되는 경우도 보이고 있다.

사실 윈도우즈건, 리눅스건, macOS이건 간에 요즘 개인용 PC에 설치할 수 있게 만든 OS는 이미 할 건 다 할 수 있고, 인터페이스도 편리하게 수렴진화했기 때문에 어느 것을 써도 약간 익숙해지기만 하면 별 차이 없이 쓸 수 있다. 어떤 OS건 간에 웬만한 애플리케이션은 다 존재하고 있으니까 사실 별 차이는 없는데….

아무래도 일반 사용자에게 문제가 되는 거라면, 인터넷(국내 한정)과 게임이다. 이 때문에 개인용 시장에서 윈도우가 압도적으로 1위를 하고 있는 이유이며 OS 사용자의 대부분은 윈도우인 덕분에 아래 있는 수많은 운영체계들이 점유율을 합해도 윈도우즈가 더 높다.

현대의 운영체제는 하나의 프로그램으로 구성이 되지 않는데 나눠보면 다음과 같다. 커널은 핵이란 이름대로 운영체제에서 가장 핵심이 되는 프로그램이다. 커널은 드라이버를 이용해서 CPU그래픽카드와 같은 하드웨어를 제어하고 여러 응용프로그램들이 갖가지 다른 하드웨어 위에서 돌아가도록 호환성을 보장하기 위해 API를 제공한다. 예를 들면 웹 브라우저가 화면에 점을 찍고 싶다면 커널에서 제공하는 점을 찍는 함수를 호출하고, 커널이 드라이버를 참조해서 그래픽카드에 명령해 점을 찍는 것이다. 모든 응용 프로그램들에게 동일한 환경을 제공해서 하드웨어나 여타 환경이 달라지더라도 프로그램을 그대로 사용할 수 있도록 플랫폼을 제공해주기 위함인데, 예전에 사용하던 DOS의 경우에는 이 기능이 약했기 때문에 응용 프로그램들마다 직접 어떤 그래픽카드 모델을 이용하는지와 같은 셋팅을 해야 했다. 응용 프로그램이 API를 호출하는 실제 구동과정은 좀더 복잡해서 CPU에서 응용프로그램이 실행되다가 레지스터에 적절한 값을 넣어주고 커널 호출 인터럽트 걸어주면 문맥 교환(Context Switching)이 일어나서 CPU 레지스터, 파이프라인, 논리주소를 쓰는 캐시까지 모조리 비워지고 커널이 실행된다. 커널에서 요청한 API를 수행한 다음에는 실행되던 응용프로그램의 중단된 시점의 명령어부터 다시 fetch시킨다.[4] 윈도우에서는 ntoskrnl.exe가 커널 프로그램에 해당된다. 리눅스에서는 커널을 사용자가 이런저런 세팅을 선택해서 컴파일하여 사용할 수도 있고 부팅 때 어떤 커널을 부팅시킬지 선택할 수도 있다. 사용자 입장에서 가장 크게 느껴지는 프로그램은 유저 인터페이스로 셸(shell)이라고 부른다. 리눅스에서는 bash, bsh, csh(CUI) 혹은 KDE, GNOME(GUI)와 같은 프로그램들이 해당되고, 윈도우에서는 cmd.exe(CUI)[5]나 explorer.exe(GUI)가 이에 해당된다. 가끔 explorer.exe가 다른 프로그램과 꼬이고 오류나서 강제 종료될 때가 있으며 이 때 작업표시줄, 시작화면과 바탕화면의 아이콘이 전부 안보이는데 이미 실행되고 있는 다른 한글, 오피스와 같은 프로그램은 다 잘 돌아가는 경우를 볼 수 있다. 이는 셸 또한 커널 위에서 올라가는 프로그램이기 때문이며 한글, 오피스와 같은 응용 프로그램도 커널 위에서 돌아가고 있기 때문에 커널만 문제 없으면 돌아가는 것이다.[6] cmd.exe와 같은 텍스트 기반의 유저인터페이스를 CUI(Character User Interface)라고 부르며 그래픽 기반의 유저인터페이스는 GUI(Graphic User Interface)라고 부른다. 그 외에 계산기, 그림판이나 텍스트 편집기 같은 보조프로그램들과 드라이버도 운영체제에 포함된다.

지원하는 기능에 따라 쓰는 사람은 사실 몰라도 되지만 실시간 운영체제, 선점형 멀티태스킹, 비선점형 멀티태스킹 등으로 나눌 수 있다. 실시간 운영체제(아래의 RTOS)는 태스크가 원하는 시간에 원하는 결과를 얻을 수 있도록 보장해주는 운영체제로 시간이 생명인 군사분야, 항공분야, 각종 산업 분야에서 이용된다. 임베디드 시스템에 실시간 운영체제가 사용되는 경우가 많다. 선점형 멀티태스킹과 비선점형 멀티태스킹은 프로그램을 동시에 실행시키는 알고리즘의 차이로 자세한 내용은 멀티태스킹을 참조.

3 RTOS

Real-time operating system. 번역하자면 실시간 운영 체제. 여기서 말하는 Real-time 은 원하는 작업을 요구되는 시간 내에 처리할 수 있는걸 보장하는 것을 말한다. 대부분 RTOS가 들어가는 기기들은 임베디드 시스템인데, 이것들은 보통 일반 PC보다 성능이 낮은 것들이 들어간다. Real-time인데 왜 성능이 낮은 걸 쓰느냐고 할 수 있는데, Real-time과 High performance는 다른 개념이다. 만약 1초마다 끝마쳐야하는 작업이 있다고 하면, 일반적인 PC OS를 쓰는 고성능 컴퓨터는 보통의 경우 0.1초 만에 끝낼 수는 있지만 다른 프로세스에 의해서 막히면 2초, 10초도 걸릴 수 있다. (PC OS를 쓰다보면 알겠지만 평소보다 느려질 때가 분명히 있다.) 하지만 RTOS를 탑재한 기기는 보통 0.8초에 끝내지만 어떠한 상황에서도 1초 내에 끝내는 것을 보장한다. 또한 RTOS를 쓰는 임베디드 기기가 특정 작업만 하도록 설계되었고, 일반 PC처럼 프로그램을 이것저것 설치해서 쓰는 것이 아니여서 원하는 작업에 대한 성능만 갖추면 되지 굳이 고성능의 칩셋을 쓸 필요가 없다.

이러한 특성으로 엄밀한 처리가 요구되는 시스템에서 주로 사용한다. 대개 데스크탑 OS는 실행시간이 몇 초 정도 느려져도 별 문제 없지만, 항공 제어나 생산 관리 등 특정한 시스템에서는 단 1,2초의 지연이 처참한 결과를 불러올 수 있기 때문이다.

시스템의 시간 관리 부분에 많은 비중을 투자하여, 응용 프로그램의 처리 요청을 정해진 시간 내에 끝마쳐 줄 수 있는 성능에 비중을 두고 있다. 선점형 멀티 태스킹을 지원하고 각 프로세스의 실행 순서를 정의하는데 많은 비중을 투자한다.

또 임베디드 시스템은 재부팅을 수시로 할 수 있는 데스크탑 시스템과는 달리 몇달, 몇년간 재부팅 없이 실행되는 경우가 흔히 있다. 이 때문에 동적 메모리 할당을 최적화 하여 메모리 단편화를 허용하지 않는다.

예를 들자면, 바다(운영체제)Nucleus RTOS커널을 사용했으며 리눅스 커널에 올린 버전도 있었다.

4 대표적인 데스크탑 운영체제

컴덕들이나 아는 전문용어를 전부 접어두고 비유를 통해 가장 대표적인 데스크탑 운영체제인 Windows, macOS, Linux 3개만 가지고 비교를 해본다면, 차이점이 확연하게 갈린다.

쉬운 이해를 위해 컴퓨터를 토지, 커널을 집, 소프트웨어를 가구로 비유하였다.

4.1 Apple macOS

토지 위에 집과 가구가 모두 세팅 완료. 몸만 들어오면 OK!! 모든건 저희가 알아서 처리해드립니다. 대신 저희가 하는 일에 간섭은 할 수 없습니다. 호텔

매킨토시에 탑재된 운영체제이며, iPhone OS(현 iOS)도 이를 기반으로 했다. GUI를 보편화 시킨 회사가 만든 물건인 만큼 그래픽적으로는 윈도우즈리눅스보다 화려하다. 유서깊은 인터페이스는 직관적이고 쓰기 쉽다는 소리도 곧잘 듣곤 했다. 윈도우와 은근히 비슷한 부분도 많은데, 윈도우 비스타나 8에서 보여지듯이 파격적인 변화는 윈도우가 보여줄 때가 더 많다.
Mac OS X 10.7 라이언 이후로는 터치패드 인터페이스를 지원하여 멀티터치를 이용한 조작이 가능하다. 모든 하드웨어가 정형화되어 있기 때문에 대부분의 관리작업은 사용자가 모르게 자동으로 돌아가고, 시스템 설정은 외부 프로그램은 물론이고, 사용자에게까지 접근권한 자체를 주지 않아 안정성이 높다는 장점이 있다. 안정성이 높다는건 어디까지나 관리자 권한을 뺏기기 어렵다는 점 뿐이고 시스템 자체적인 안정성은 별개이다. 메모리 관리를 맥에서 직접 설계한대로만 쓰게 하는데 쓸데없는 프로그램이 상주해서 비행기 소리가 나는 업그레이드라던가 허접한 발패치가 줄을 잇고 있으며 Free BSD 진영과 코드를 공유하기 시작하자 Free BSD 진영에서 없던 버그가 마구 나오고 있다.

다윈 커널은 오픈소스로 공개되어있지만, Cocoa 등 GUI 부분은 모두 클로즈드 소스. iOS만 아는 사람들이 macOS은 폐쇄적일 것이라고 지레짐작하기도 하는데 사실 리눅스 다음으로 개방적인 OS이다. 전문 지식이 없는 사용자라도 최소한 터미널만 다룰 줄 알면 좀더 깊이 파볼 수 있는 OS이다. 참고로 터미널로 접근이 용이한 것은 운영체제의 뿌리가 Free BSD에 기반했기 때문이지 딱히 애플이 개방적이기 때문인 건 아니므로 이 글만 믿고 터미널로 이것저것 열어보다가는 큰 낭패를 볼 수 있으니 유의해야 한다. 가장 마지막으로 첨언하자면 관리자(root)권한을 쓰는데 제약이 많다. 윈도우처럼 유저 관리자와 시스템 관리자가 나뉘어서 핵심 코드로 접근하는걸 막으려고 한 것 같은데 터미널로 찾다보면 관리자 폴더도 양분된걸 볼 수 있다. 그리고 관리자 권한이 제한되거나 반토막나면 어찌 되는지는 여러분이 제일 잘 알고있을 것이다.(앱 개발 할 때 부터 자체적인 메모리관리나 인터럽트는 쓰지도 못하고 애플의 api만을 무조건 적으로 따르는 것만 쓸 수 있는 정책을 쓰고 있으니 OS가 안정적인게 아니라 그냥 폐쇄적인 구조가 단점을 안보이게 막고 있는것에 지나지 않는다)

번들 소프트웨어의 퀄리티가 괜찮은 편인데, 캘린더, 미리 알림 등의 앱 말고도 아이라이프아이워크가 모두 무료로 기본 탑재되어 있으며, 이들은 모두 아이클라우드를 지원한다. 그래서 윈도우에서도 인터넷 연결을 통해 웹 앱의 형태로 사용이 가능하고 아이폰이나 아이패드iOS 기기와 실시간 동기화가 가능하여 편리하다.

써드파티 소프트웨어의 수는 윈도우에 비해 훨씬 부족하지만, 품질만 놓고 보자면 딱히 빠지는 건 없는 수준으로 봐도 무방하다. 가장 많이 쓰이는 오피스, 웹 브라우저, 멀티미디어 프로그램 정도는 다 있다. 또한 윈도우용 Java 프로그램을 고쳐서 쓴다거나 리눅스용 프로그램을 약간 손봐서 돌리거나 아예 맥에서 잘 돌아가도록 포팅한 소프트웨어들이 있다. 하지만 macOS의 앱스토어는 갈수록 샌드박스 제약이 심해지면서 앱스토어에 올라가던 기존 앱도 빠져나갈 정도로 망해가고 있는 상태. 사실 macOS도 유닉스라 POSIX 기준을 충족시키고 macOS용 X 서버도 따로 나와있고 설치할 수 있기 때문에 POSIX 기준대로 만들어진 오픈소스 프로그램들은 Xcode 커맨드라인 툴이 설치되어있으면 별다른 조치없이 컴파일도 문제없고 대부분 잘 돌아간다. homebrew, Macports, Fink 는 젠투 리눅스의 패키지 매니저처럼 간단한 커맨드로 오픈소스 프로그램들의 소스를 그대로 긁어와서 컴파일후 사용가능하게 만들어주는 툴들.

정 윈도우 전용 소프트웨어를 깔끔하게 사용해보고 싶다면 부트캠프로 윈도우를 쓰면 되는데, 지금에 와선 윈도우 전용 게임을 하고 싶은 사람이 아니라면 고생하면서까지 윈도우를 쓸만한 일은 별로 없다.3D모델링 한다면... 그냥 윈도 PC사는거고 물론 윈도우 의존도가 높은 한국의 경우는 사정이 좀 다를 수 있겠다. 어쨌든 매킨토시 유저는 맘만 먹으면 macOS와 윈도를 동시에 사용할 수 있다.
반대로 PC 유저가 macOS를 사용해보고 싶다면 해킨토시를 쓰면 되는데, 이건 소프트웨어 관련법상 불법이다.[7] 다만 애플이 개인적인 목적으로 쓰려는 사용자들에게 하나하나 대응을 하지 않을 뿐이다. 물론 그걸로 돈 벌려는 기업엔 얄짤없었다.

macOS가 매킨토시만을 위한 운영체제인만큼 매킨토시 얘길 조금이나마 안하고 넘어갈 수가 없는데, 일단 PC 시장에 비해 제품 라인이 간소화되어 있다. 세부적으로 사양에 따라 나뉘긴 하나 폼팩터만 보자면 사용 컨셉에 따라 아주 분명하게 나뉘어져 있다. 특히 데스크톱 컴퓨터는 아주 확연하게 사용자 계층이 갈린다. 하드웨어에 최적화가 되어서 나오는 만큼 하드웨어의 변경에 OS가 맞춰진다. 한 예로, 레티나 디스플레이 맥북 프로에 맞추어 macOS와 기본 소프트웨어가 모두 고해상도에 맞춰져서 나온 걸 들 수 있겠다.

원래 업그레이드시 소정의 금액을 내야 했는데, 2013년 출시된 매버릭은 전면 무료가 됐다. 앞으로도 매킨토시만 구매하면 OS 지원은 계속 무료일 것으로 보이며, 2014년 6월 2일에 공개된 요세미티 역시 무료로 발표되었다.

사후 지원으로 들어가자면, 애플본사 직영 스토어가 없는 지역은 있는 지역과 사후지원의 질이 크게 차이가 난다. 애플의 본사가 위치한 미국뿐만 아니라 일본, 중국애플스토어가 존재하는 모든 국가는 매장에 "지니어스 바"라는 곳이 있다. 지니어스바의 직원들이 알고 있는 지식이 기초적인 수준이라고 알려져 있는데 보통 그런 직원들은 스토어 안내와 간단한 설명 정도를 한다. 만약 소비자가 컴덕이다 싶으면 컴퓨터를 정말 잘 아는 전문가 직원에게 상담을 넘긴다. 본사 차원에서 이미지 관리를 하는 편이므로 상당히 친절하다.

하지만 한국처럼 애플 스토어가 없으면 일단 기본적으로 지니어스바도 없다는게 문제가 된다. 문제가 생긴 기기를 들고 찾아가거나 누구를 붙들고 상담을 할 수 없다는 것. 무엇보다 대한민국에서는 애플스토어는 커녕, 애플코리아까지 불친절 하기로 유명하다. 문제가 생기면 일단 유저탓을 하고, 안 먹히면 본사만 찾아대는 점 때문에, 애플 본사에서 답변오기 전까지는 하염없이 기다려야 한다. 본사에서 운영하는 애플 고객지원 사이트에는 그래도 흔한 문제에 대해서는 어느 정도 해결 방법도 제시되어 있고 한국어 번역도 되어 있긴 한데, 오역도 가끔 있는데다가 고객지원 사이트의 접근성이 그리 좋지 못하다.

하드웨어 지원 얘기까지 들어가자면, 모든 맥 사용자는 1:1 상담과 교육, 수리를 예약할 수 있으며 단순 상담과 교육은 90일간 1회, 하드웨어에 관해선 1년간 무상 지원을 받을 수 있다. 3년간(아이팟, 아이폰은 2년간) 무제한 무료상담과 하드웨어 보증을 받으려면 애플케어에 가입해야 한다. 당연히 유료. 다만 지역마다 법이 달라서 기준은 조금씩 다르다. 애플케어는 무료사후지원 기간이 만료되기 전에 가입할 수 있다. 애플케어 기간 내라면 상당히 괜찮은 사후지원을 받을 수 있다. 사후지원 후 영수증을 확인해보면 부품값이 나오는데 몇십만원 하는 비용이 무상처리가 된 경우도 있다. 다만 3년이 지나 애플케어도 끝났다면 그 이후론 유상수리만 가능해진다. 고칠 자신이 된다면 eBay에서 부품을 사는게 더 저렴할 수 있다.[8]

하위호환에 대해서는 기대하지 않는게 좋다. 애플이 새 플랫폼으로 이주하며 레거시 지원을 내팽개친 사례는 수두룩하다.(Mac OS X 10.5->10.6같이 플랫폼 번경/10.6->10.7같이 호환 레이어 삭제 등)

4.2 Microsoft Windows

집은 지어드렸습니다. 가구는 여러 종류가 준비되어있으니, 알아서 고르세요. 아파트

세계적으로 가장 많이 쓰이는 운영체제. 기본적으로 안정적이고 표준적인 GUI를 가지고 있으며, 셀 수 없는 서드파티 프로그램의 지원을 받고 있다. 더군다나 그 서드파티의 층이 막대하며 오픈소스 프로그램도 상당하므로[9], 그래픽 쪽을 제외한 전문 용도에서는 macOS보다 우수하며, 최근에는 전문적인 그래픽 작업에서도 별 차이가 없는 수준이다.[10][11] 거기다가 3D 계열의 끝판왕인 모 프로그램이 윈도우즈만을 지원하기에, 3D 그래픽은 윈도우가 인지도가 상당하다.또한 소프트웨어적 문제가 생겼을때 회사 차원에서 적극적으로 대처해주며, 부품에 문제가 생겼을때 대부분의 경우에는 간단하게 해당 부품만을 구매하여 쉽게 고칠 수 있다.

커스터마이징으로 가면 커널에 접근하기 쉬우며[12], 기본적인 골격은 유지해야 하지만 어느정도 자기 입맛에 따라 운영체제 개조가 가능하다. 시스템 파일도 중요 파일을 제외하곤 접근 뿐만 아니라 수정도 가능하기 때문에 커널만 윈도우이고 아예 색다른 자신만의 윈도우를 구축하는것도 가능하다. 다만 시스템 파일의 소스까지는 볼 수 없으며, 그 알고리즘을 알기위해선 역어셈블리를 하거나 리버스 엔지니어링을 해야 한다. 어느 쪽이든 직접 소스를 보는 것 보다는 직관적이지 못한 게 사실. 그나마 공개적인 운영체제로 알려져 있긴 한데... 모든 것이 공개된 리눅스와 커널의 소스코드만 공개된 macOS에 비하면[13] 거의 아무런 소스코드도 공개된게 없기 때문에 공개적이라 할 순 없다. '공개적'이란 용어가 일반적으로 '맘대로 뜯어고치고 쓸 수 있다'라는 개념과는 약간 다르다.

대부분의 컴맹들의 컴퓨터엔 이 운영체제가 깔려 있어서 '쓰다 보면 느려진다'라는 떡밥의 선두주자에 서 있는 운영체제이기도 하다. 실제로 지속적으로 관리하지 않고 프로그램을 깔아대면 불필요한 레지스트리가 축적되고 이러저러한 드라이버간 꼬이는 사태가 발생함에 따라 점점 느려지는 문제가 발생한다. 레지스트리는 Windows의 거의 모든 설정 정보들을 저장하고 있기 때문에 잘못 꼬이면 부팅조차 되지 않는 상황이 발생할 수 있다. 또한, 시장 점유율이 가장 높기 때문에 대부분의 컴퓨터 바이러스는 이 운영체제를 타깃으로 하고 있다. 물론 레지스트리 문제는 조금만 공부하던지 귀찮으면 레지스트리 클리너 프로그램들을 설치하는 식으로 정리해준다면 충분히 상쇄할 수 있는 부분이며, 바이러스 역시 엄한 곳에 들어가거나 복돌이 행동[14]을 피하고 믿을만한 백신[15]을 설치해 놓고 주기적으로 검사만 해준다면 걱정 안 하고 살아도 된다.[16]

윈도 8에서 소위 메트로 UI를 선보이면서 사용에 굉장히 큰 변화를 가져왔는데, 대다수 사용자들로부터 엄청난 반발을 사며 외면을 받아 시장 점유율과 사용률이 바닥을 기는 일이 있었다. 그럼에도 윈도우 자체의 시장 점유율은 크게 변하지 않았는데 많은 소비자들이 맥이나 리눅스로 갈아타는 대신 윈도우7 등의 이전 버전 윈도우를 계속 썼기 때문이다.(...) 윈도우의 적은 윈도우 결국 소비자들의 반응을 거울 삼아 윈도 8.1에서 시작 버튼을 부활시키는 등 지속적인 변화의 모습을 보이고 있다. 윈도 10에서는 완전히 부활.

또한 신형 윈도우가 출시되어도 이전 버전 윈도우로부터 유저 이동이 원활하지 않다는 문제점(?)이 있다. 윈도우 비스타가 출시된 후에도 대세는 윈도우 XP였고, 윈도우8/8.1이 출시된 후에도 대부분은 윈도우 7을 사용했다. 이는 윈도우 자체의 가격이 일반 사용자들에겐 비싸고,[17] 굳이 새 운영체제로 갈아탈 필요를 느끼지 못하는 유저들이 많기 때문이기도 하다. 윈도우의 적은 윈도우라는 말이 농담은 아닌 셈. MS에서도 이 문제를 해결하기 위해 윈도우 10부터는 7/8.1에서 무료로 업그레이드를 해주는 등의 조취를 취하고 있다.

사후지원 면에서는 상당히 좋은데, 무엇보다 세 OS 중에서 하위 호환성에 가장 신경을 쓴다. 윈도우 95 시절의 프로그램이나 게임이 2013년에 나온 윈도우 8.1에서도 돌아갈 정도이고, 호환성 모드를 내장해서 오래된 프로그램을 돌리는 데 최대한 지원을 해 준다. 각종 패치 지원도 몇 년 단위로 간다. 새 버전이 나와도 이전 버전의 패치 지원은 계속된다. 윈도우 XP의 경우에는 무려 12년 동안 지원을 하다가 2014년 4월 8일에야 종료했을 정도[18]. 고객지원도 좋은 편으로, 홈페이지를 통해 물어봐도 되고 귀찮으면 전화로 문의해도 된다. 보따리 장사 수준이라고 욕을 먹는 애플코리아와 달리 마이크로소프트 코리아의 고객지원은 상당히 좋은 편이다. 홈페이지에 질문하면 답변도 빨리 오는 편이고, 전화로 직접 물어볼 수 있다는 것은 상당히 큰 장점. 애플케어 같은 옵션을 따로 구매할 필요도 없다. 윈도우의 가격에는 이 고객지원에 대한 권리도 모두 포함되어 있기 때문이다. 물론 이런 지원은 OS 한정이라는 문제가 있지만, 이건 리눅스[19]도 마찬가지이기 때문에 윈도우만의 단점이라고 볼 수는 없다. 애초에 이 부분은 OS를 하드웨어와 끼워파는 맥이 특별케이스에 가깝다.

개발자 문서화는 다른 OS와 비교하면 넘사벽 수준이다. 개발자 네트워크인 MSDN에 쌓인 정보량은 어마어마하고, 윈도우 개발자들은 개발 중에 참고할 것이 생기면 MSDN부터 뒤지고 본다. 메인은 영문이지만 한글 정보량도 상당히 많다. 영어만 좀 하면 책이나 다른 문서 없이도 개발이 가능한 수준. 다만 검색하기 힘들다는 것은 흠. 농담이 아니고 마소 공식홈페이지 보다, 구글링으로 찾는게 더 쉽다. 분명 MS문서를 MS홈페이지에서 검색했는데 왜 페이지를 찾을수 없다고 뜨지?

3개 OS 중에서 가장 가격이 비싸다. 가장 싼 윈도우 8.1도 10만원 넘는 가격이고, 업그레이드도 돈 주고 업그레이드용 패키지를 구입해야 한다. 무료사용이 가능한 리눅스나 따로 구입시 몇 만원 수준인 macOS에 비하면 확실한 단점이다. 이 단점을 MS도 의식해서인지 윈도우 8에서 8.1은 무료 업그레이드를 지원하고, 윈도우 10도 윈도우 7과 8.1은 1년간 무료 업그레이드를 해준다는 정책을 들고 나왔다.

4.3 Linux

멋진 집을 지어드렸습니다! 공구는 드릴테니, 가구는 당신이 만들어 쓰십시오. 개인주택

모르는 것 투성이인 초보자를 위해서 인테리어까지 모든 것을 하나하나 세팅해준 제품에서부터, 이것저것 손보고 뜯어고쳐야 직성이 풀리는 상급자들을 위한 "여기 공구하고 건축설계도 준비했습니다. 집이요? 댁이 지으세요."에 해당하는 제품까지 수많은 종류의 상품들이 준비되었다. 리눅스 커널이라는 집은 토지의 종류를 가리지 않는데 컴퓨터, 스마트폰이라는 토지는 물론이고 피쳐폰이라는 토지에까지 건축이 가능하다. 하지만 가장 놀라운 점은 절대다수의 상품이 공짜이고 모든 종류의 상품은 "설계도가 완전히 무료로 공개되어 있다"는 점이다.

실제로 리눅스 계열 운영체제를 사용하고자 한다면 유저에게는 많은 선택들이 준비되어 있다. 컴맹들도 윈도나 macOS 쓰듯이 마우스 클릭질만으로 쉽게 쓸 수 있는 배포판에서부터 모든 것을 이리저리 뜯어고치고 자기 마음대로 세팅해야 직성이 풀리는 컴덕을 위한 배포판까지 종류가 정말 많다. 이렇게 종류가 많은 이유는 리눅스 그 자체는 운영체제가 아니라 단지 커널일 뿐이고 그 커널을 사용하는 수많은 운영체제들이 리눅스의 이름을 달고 나오기 때문이다. 더군다나 리눅스 커널과 운영체제들은 오픈소스이기에 수정 및 재배포가 매우 활발하기까지 하다.

리눅스라고 하면 '엄청 어려운 OS'로 인식하고, 일부 쉬운 배포판[20]은 리눅스에서 이것저것 뜯어고친 무언가로 인식하는 경우가 있는데 그것과는 조금 다르다. 다시한번 말하지만 리눅스는 단지 커널을 의미할 뿐이기에 어려운 배포판이 원작이고 쉬운 배포판이 변형판이다는 식으로 간단하게 생각하면 심히 곤란하다. 리눅스가 유닉스에서 갈려나온 운영체제고, 처음에는 리눅스를 쓰는 사람들의 절대다수가 컴덕, 아니 컴퓨터 전문가들뿐이었기 때문에 초창기 배포판들은 유닉스를 많이 닮고[21] 전문가들에 맞춘 형태로 많이 나왔으며, 이후에 리눅스를 일반 사용자들에게까지 퍼트리면서 이들을 위한 배포판들도 널리 알려졌다. 그러나 리눅스 배포판 자체는 어떤 형태로든 한정되지 않는다.

또, 무료로 던져놓고 아무런 도움도 없이 알아서 쓰라는 식으로 알려지기도 했는데, 항상 그렇지는 않다. 어느정도 큰 배포판은 고객지원센터가 존재하며, 돈을 내고 사용한다면 이쪽의 도움을 받을 수 있다. 사실 24시간 내내 뭔가 사소한게 틀어지더라도 타격이 갈 수 있는 기업을 위한 서비스에 가깝지만 개인을 위한 서비스도 있기는 하다. 개인 사용자라면 그 돈 아끼고 포럼이나 IRC에 질문해서 답변을 기다리는게 더 나아서 그렇지...

5 서버용

리눅스, 윈도우, macOS 모두 서버용 OS가 따로 나온다. 이외에 FreeBSD유닉스 등이 서버용 OS로 점유율을 어느정도 차지하고 있다. 커널은 해당 OS의 데스크탑용 커널과 거의 같고, 여러가지 기능을 서버 운영에 맞게 수정해서 나오는 경우가 대부분이다. 기본 탑재 소프트웨어도 서버 운영에 맞는 것으로 이루어져 있다.

서버용 OS 시장으로 넘어오면 점유율 양상이 전혀 달라지는데, 리눅스가 이 분야의 부동의 1위를 차지하고, 윈도우가 그 뒤를 따르고 있다. PC 시장에서 윈도우가 꽉 잡고 있는 것과는 전혀 다른 상황. 이것은 서버의 전신인 메인프레임 분야가 유닉스가 주류였고, 이게 유닉스라이크인 리눅스로 그대로 이어졌다. 즉 이 분야에서 리눅스는 선두주자나 마찬가지인 자리를 차지하고 있다.

상대적으로 후발주자였던 윈도우는 PC OS와 동일한 GUI 인터페이스를 지원하고 여러가지 서버 운영 소프트웨어 및 기능을 자체적으로 내장하는 등 많은 노력을 기울였고, 그 결과 리눅스에 이어 서버 OS 시장 2위를 차지하고 있다. 지금은 수많은 서버 관련 소프트웨어가 리눅스용과 윈도우용이 같이 나오는 추세. 물론 리눅스와 비교하면 유료인데다 데스크탑용 윈도우보다 비싸다는 단점이 있지만, 대신 구입 후 일정 기간 동안의 고객 지원 및 기술 지원이 따라오기 때문에 서버 시장에서 한 축을 차지하는데 성공했다.

macOS도 맥 서버가 따로 나오지만, 어차피 macOS은 코어 부분이 그냥 유닉스라 리눅스등 다른 유닉스를 사용하는것이 비해 딱히 메리트가 없는데다가 macOS 특유의 권한 제한 정책덕분에[22] 서버 관리자가 관리자 권한을 사용하는데 제한이 발생한다는 황당한 단점으로 서버 관리자들로부터 외면받아 홈 서버를 제외한 전문적인 서버 시장에서는 거의 존재감이 없다. 게다가 맥 서버가 서버 시장에 진출할 무렵에는 이미 리눅스와 윈도우가 시장을 양분한 상태였기 때문에 끼어들 일말의 틈조차 없었다. 값도 비싼 편이라 상업용으로는 거의 쓰지 않는다. 보통 집에서 컴질도 하면서 홈서버를 돌리거나 NAS등의 기능 정도만 활용하는 라이트유저들이 쓴다. 하지만 맥미니는 크기가 작은 편이라 여기다 CentOS따위를 설치하고 데이터센터에 이걸 여러대 집어넣는 사람도 존재한다.[23] .근데 그럴거면 차라리 인텔 누크가 났지 않냐 그마저도 고성능 embedded board에 밀리고 있는것이 현실이다. 솔직히 말해서 상면비는 라즈베리 파이등을 쓰는게 낫고 성능은 인텔 누크나 기타 미니피씨가 가격대비 성능이 월등히 좋다. 라즈베리 등은 비교가 안될정도로 싸다. 개당 5만원을 왔다갔다 한다.

6 모바일 OS

지원 중인 모바일 운영체제
로고이름제조사배포 년도
width=100px 안드로이드구글2008
width=40px iOS애플2007
width=100px Windows 10마이크로소프트2015
?width=30pxSailfish OS욜라2013
?width=100px블랙베리 10블랙베리2013
?width=90px타이젠삼성전자, 인텔2012
?width=60pxwebOSLG전자2009
?width=100px우분투 터치캐노니컬2013
지원이 중단된 모바일 운영체제

마이크로소프트
윈도우 모바일

(2000~2010)

마이크로소프트
윈도우 폰

(2010~2015)

블랙베리 OS
(1999~2013)

파이어폭스 OS
(2013~2016)

팜 OS
(1996~2013)

삼성전자 바다
(2010~2013)

노키아 심비안
(1997~2012)

노키아 & 인텔 미고
(2010~2012)

대표적으로 리눅스, Microsoft Windows, Apple iOS가 있다.

역시 이쪽도 점유율 양상이 전혀 달라지는데, 스마트폰만 보자면 리눅스를 기반으로 만든 구글의 안드로이드 OS가 지속적으로 시장 점유율 1위를 차지하고 있고, 애플의 iOS가 그 뒤를 따르고 있다. 태블릿 역시 구글의 안드로이드 OS가 가장 점유율이 높고, iOS기기가 그 뒤를 따르고 있다.

윈도우는 스마트폰의 점유율은 한 자리수대를 계속 유지하고 있으나 서피스를 위시한 태블릿의 경우 시장 반응이 좋은 편이다.

모바일 OS쪽은 iOS 이전과 이후로 크게 나눠서 볼 수 있다. 애플이 나오기 이전부터 있었던 윈도우나 블랙베리, 심비안 입장에서 보면 iOS와 안드로이드가 후발주자인데, 갑자기 iOS가 튀어나오면서 멀티터치 UI와 비교적 낮은 가격으로 좀더 많은 사용자들에게 쉽게 다가갈 수 있었다는 점이 성공요인이 되었다.

애플의 아이폰을 기점으로 멀티터치 스마트폰과 태블릿의 대중화가 시작되었지만, 그보다 더 후발주자인 안드로이드가 오픈소스를 무기로 애플을 제외한 다른 하드웨어 회사를 공략, 성공적으로 안착시켰다. 그와 함께 기존 블랙베리와 윈도우, 심비안은 몰락의 길을 걷기 시작한다. 윈도우는 윈도우 모바일을 윈도우 폰으로 업그레이드하여 대처를 했지만 이런저런 문제 때문에 큰 점유율을 차지하지는 못하고 있다.[24]

모바일쪽은 형성된 지 얼마 안 된 시장이라서 여러 OS가 지속적으로 출시되고 있긴 하나 이미 iOS와 안드로이드가 앱생태계를 견고하게 구축한 만큼 써드파티 앱 개발 지원이 따라주지 않으면 사용자들의 호응을 얻긴 힘들 것으로 보인다.

7 운영체제의 종류

모바일용 운영체제는 ☆표시.

기타 스마트폰 운영체제는 여기도 참고 바람

7.1 가공의 운영체제

8 외부 링크

  1. 엄밀히 말하자면 이런 경우는 펌웨어(firmware)라고 해야 옳다. 확실한 기준은 없지만 어느정도 소형인 전자기기를 관리하는 것은 펌웨어라고 부른다. 하지만 안드로이드의 OS는 펌웨어라고 하기도 하고 운영체제라고 하기도 하는데, 하드웨어 종속적일 수 밖에 없는 특성 때문도 있고, 아무래도 안드로이드가 널리 퍼지게 된게 휴대 전화였던지라 휴대 전화에서 쓰이던 단어인 펌웨어가 그대로 쓰였다고 볼 수도 있다.
  2. 왜 공룡책이라고 하는지는 표지를 보면 안다. 분명 운영체제 책이라고 해서 샀는데 공룡에 대해 배울 거 같아
  3. 심지어 삼성전자로봇 청소기 스마트 탱고 2012년을 뒤집어 살펴보면 Microsoft Windows CE의 홀로그램이 붙어 있다.
  4. 요새는 CPU가 register를 쌍으로 갖고 빠른 컨텍스트 스위칭을 지원해주기도 한다.
  5. 현재는 XP이후로 셸 역할을 하지 않는다. 도스 시절에는 command.exe
  6. 그 상태에서 ctrl+shift+esc 또는 ctrl+alt+del를 누르면 실행되는 작업관리자의 파일(F) - 새 작업(실행...)(N) 메뉴를 통해 새로운 프로그램을 실행시킬 수도 있다. 이때 explorer.exe를 실행하면 화면이 원래대로 돌아온다.
  7. 소프트웨어 소유권은 제조사에게 있기 때문. 일반 사용자들이 구매로 얻는 권리는 사용권이다.
  8. 놓친점이 하나 있는데 업그레이드에 이만큼 부정적인 제품군이 드물다. 자체 제작된 BIOS는 사전에 입력된 값 이상의 메모리는 인식하지도 못하고 슬롯도 제한적으로 주어진다. 하드 드라이브는 최근 확장성을 좀 갖춘 듯 한데 일단 업그레이드는 구매할때 높이는 것이고 구매 후의 개량에는 거의 관심도 없다고 보면 된다. 뜯는것도 난이도가 높으며 쉽게 고장날 수 있는 함정부품을 여기저기 마련해놔서 하나라도 부러지면 AS에 에로사항이 꽃핀다.
  9. 사실 윈도우는 오픈소스 소프트웨어보다는 유저수가 중요한 상용 프로그램들의 세력이 훨씬 강력한 플랫폼이다. 물론, 순수 윈도우 전용의 오픈소스 프로그램들도 있긴 하지만, 대학의 연구목적 프로젝트나 비상업 목적의 오픈소스 프로그램들은 굳이 사용자 점유율을 신경쓸 필요가 없고, 이때문에 오픈 스탠다드인 POSIX 기준을 따르는 경우가 많다. 이런 오픈소스 프로그램들을 컴파일하려면 보통 네이티브로는 안되고, Cygwin 이나 MSYS 등의 POSIX 서브시스템을 따로 윈도우 내에 이식하는 식의 어거지로 해야한다. 그리고, 몇몇 프로그램은 컴파일뿐 아니라 사용시에도 POSIX 서브시스템을 요구한다. 이 문제를 MS에서도 의식했는지 윈도우 8.1부터 POSIX 표준을 지원하는 Powershell을 기본으로 채택했다.
  10. 되려 예전의 개떡호환(출력소는 구형맥을 쓰는데 자신은 윈도우즈를 쓰는 경우. 폰트 깨짐이 대표적이다.)에 노이로제가 걸려 맥을 싫어한다는 디자이너들도 간혹 있다. 물론 실제로 옛날만큼 호환에 엄청난 차이가 나진 않는다. 출력소가 요즘 맥을 쓰지 않는게 함정이지만.
  11. 게다가 어도비애플의 사이가 나빠지면서 어도비 CS/CC 시리즈가 갈수록 윈도우판에 최적화를 시켜주면서 애플판의 최적화가 어느새 약간의 개적화 수준까지 간 것도 크리티컬
  12. 물론, 이게 보안이나 안정성면에서 절대 장점이 될 수는 없다.
  13. 이라곤 하지만 너무 오래되서 사람들이 크게 관심을 가지지 않을 부분만 공개하니 안하느니만 못하다. 그나마 free bsd진영과 코드 공유를 시도하긴 하지만...
  14. 복돌이 자체는 윈도우 운영체제의 속도와 아무런 관련이 없다. 다만 불법 다운로드 컨텐츠에 각종 악성 코드를 심어 EXE로 배포하는 것을 아무 의심없이 실행할 확률이 매우 높기 때문에 복돌이=악성코드감염 식으로 간주 되는 것이다. 사실 백신으로 다운로드 받은 EXE를 검사한다 해도 백신이 대응하기 전인 악성코드라면 검사하더라도 그냥 당할 수 밖에 없다. 이번주 개봉 영화나 출시 게임 파일에 악성 코드를 심으려는 해커가 이미 백신에 다 치료되는 2년전 악성코드를 심어서 배포하겠는가? 현존 백신을 모두 우회가능한 바이러스면 제로데이처럼 엔드유저가 아닌 돈되는 기업을 공격할 가능성이 높아서 걱정 안해도 된다.
  15. 모 달걀을 좋아하는 회사N으로 시작하는 회사 백신같은게 아닌, 3A에 속하는 백신들을 말한다. 그렇지만 V3정도만 돼도 국내에서는 큰 문제없다.
  16. 애시당초 사람 심리를 이용하지 않고 취약점을 노려 공격하는 사람은 많지 않다. 그런 노력을 들여 당신의 신용카드 정보를 빼내는 것 보단 유혹해서 불법 프로그램의 설치를 유도해서 백도어 깔아 신용카드 정보를 손에 넣는게 더 쉽기 때문
  17. 운영체제 치고는 괜찮다는 의견도 있지만 일반 사용자 입장에선 10만원에 육박하는 가격에 거부감이 느껴질 수밖에 없다.
  18. 사실 이건 MS가 다음 버전인 비스타를 너무 늦게 내놓았던데다 삽질을 거하게 하는 바람에 XP가 너무 많이 퍼진 탓도 있다. 지원 종료를 미루는 바람에 비스타와 함께 지원이 종료됐고, 체감상 윈도7 지원 기간이 너무 짧아져 까임의 원인이 되기도.
  19. 돈안내고 지원없이 무료로 써도 된다는 점은 다르다.
  20. 우분투, 리눅스 민트 등등
  21. 사실 오늘날 유닉스라는 OS 가 따로 존재하진 않는다. 그냥 POSIX 기준에 맞으면 유닉스라 부르고, 리눅스는 인증만 받지 않았을뿐, POSIX 기준을 거진 다 충족하고 있어 리눅스도 관점에 따라 유닉스라 할 수 있긴 한데, 구분을 하는 경우도 있고 이런 경우 그냥 리눅스와 기타 유닉스 계열 OS 를 묶어서 *nix 라 하기도 한다.
  22. 설정을 위해 su권한으로 네트워크 설정에 직접적으로 접근하려 한다거나 할 때 애로사항이 꽃핀다. 그런데 서버는 그러라고 만드는 운영체제다.
  23. 성능은 그냥 그럭 저럭이다. 안정성도 상용 서버보다 별로고... 하지만 크기가 작아서 상면비가 적게 든다.
  24. 윈도우 기반 OS의 태생적 한계는 라이브러리 기반 운영체제라는 점인데 사용될 메모리 최대값을 이미 불러온 라이브러리를 공유하는 것으로 최소화시키는 구조지만 기본 메모리 요구치가 높아서 모바일 기기에서의 퍼포먼스가 제한되는 것이 많다. 윈도10에서 커널의 모듈화를 시도하니 성능향상을 기대해볼 만하다.
  25. PC, 모바일 겸용이다.
  26. 멀틱스로부터 파생됨.
  27. NetBSD의 포크
  28. NeXTStep이 나중에 OS X의 기초가 되었고, 그 흔적은 아직도 곳곳에 남아있다.
  29. 데비안을 기반으로 하는 저사양 배포판.
  30. 구버전은 우분투기반이었다.
  31. 게임 플랫폼으로 유명한 스팀에서 개발중인 최초의 게임 전용 OS.
  32. Mac OS 에서 Mac OS X로 넘어가는 과도기에 애플에서 개발되던 운영체제다. Mac OS 9 및 이전버전과 마찬가지로 독자적 계열...인데 흑역사가 되었고, 그 자리를 NeXTStep의 후손인 Mac OS X가 차지했다.
  33. Mac OS 9 및 이전 버전은 유닉스 계열이 아닌 독자적 계열이다.