1950년대 GM 야간 조는 “테이프만 갈다가 새벽이 다 가요”라며 운영팀에 도움을 청했습니다. GM-NAA I/O와 FMS 같은 모니터가 작업을 자동으로 넘겨 주자, SHARE 회원들은 “모두가 같은 절차를 쓰자”고 외쳤습니다. 이어서 로켓 공장과 대학 연구실은 시간을 잘게 나눠 여러 사람이 한 컴퓨터를 나눠 쓰는 법을 실험했습니다.
System/360은 “하드웨어가 달라도 운영체제는 같다”는 약속을 지키려 애썼고, 벨 연구소의 UNIX는 작은 도구를 엮는 문화를 퍼뜨렸습니다. 1980~1990년대에는 MS-DOS, Macintosh, Windows 95가 PC를 일상으로 끌어들였고, 리눅스 커뮤니티는 누구나 커널에 기여하는 방식을 만들었습니다. 2000년대 이후 Mac OS X와 iPhone OS, Android가 모바일을 열었고, Docker와 Kubernetes가 클라우드를 정비했습니다. 최근에는 맞춤형 실리콘과 하이브리드 데스크톱이 “어디에서 실행되든 같은 경험”을 요구합니다.
연도 버튼을 눌러 각 운영체제가 어떤 걱정을 덜어 주었고 어떤 습관을 남겼는지 대화형으로 만나 보세요. 처음 듣는 용어가 있어도 괜찮습니다. 사람과 상황 중심으로 차근차근 설명해 드립니다.
버튼을 선택하면 같은 화면에서 자세한 이야기를 읽을 수 있습니다.
1950s
야간 조를 도운 배치 모니터
메인프레임 운영자들은 테이프를 갈아 끼우지 않아도 되도록 작업을 자동으로 줄 세우고, 공통 절차를 모니터 프로그램에 담았습니다.
1960s
타임셰어링과 이식성 실험
System/360은 “하드웨어가 달라도 같은 OS”를 약속했고, UNIX는 작은 도구를 조합하며 이식성이 있는 커널을 선보였습니다.
1970s
마이크로컴퓨터와 가상 메모리 확장
작은 컴퓨터도 디스크와 여러 작업을 다룰 수 있게 CP/M과 VMS가 공통 인터페이스와 가상 메모리를 보급했습니다.
1980s
PC 보급과 그래픽 데스크톱
MS-DOS가 공통 규칙을 세우고, 매킨토시가 아이콘과 마우스를 대중화하며 PC가 일상 도구가 되었습니다.
1990s
오픈소스와 일상형 OS
리눅스 커뮤니티가 커널을 함께 고쳤고, Windows 95는 스타트 버튼으로 가정과 사무실 모두를 겨냥했습니다.
2000s
UNIX 감성과 모바일 도약
Mac OS X는 UNIX와 디자인을 묶었고, iPhone OS와 Android는 터치와 앱 생태계를 운영체제 수준에서 설계했습니다.
2010s
컨테이너와 클러스터 운영
Docker와 Kubernetes가 “이미지를 묶어 옮기고, 원하는 상태를 선언하면 제어 루프가 맞춰 준다”는 발상을 일상 도구로 만들었습니다.
2020s
실리콘 전환과 하이브리드 경험
맞춤형 칩, 가상 데스크톱, 클라우드 PC를 한 화면에서 조율하며 “어디에서 실행돼도 같은 느낌”을 주려는 운영체제가 등장했습니다.
더 깊이 읽을 거리
운영체제가 배치 작업, 타임셰어링, 모바일과 클라우드를 품어 가는 과정을 기록한 1차 자료와 회고를 모았습니다.
GM 야간 운영자는 “테이프만 갈다가 밤이 샌다”고 불평했지만, GM-NAA I/O가 작업을 자동으로 이어 붙여 메인프레임을 밤새 돌려 주었습니다.
당시에는 운영자가 손으로 테이프를 갈아 끼우고 다음 작업을 불러와야 했습니다. GM-NAA I/O는 “작업을 넣는다 → 실행한다 → 출력물을 정리한다” 흐름을 스크립트로 만들어 기계가 스스로 반복하게 했습니다.
사람이 새벽마다 대기하지 않아도 메인프레임이 쉬지 않고 일하자, 운영체제가 장비 담당자의 역할을 대신할 수 있다는 생각이 자리 잡았습니다.
GM-NAA I/O는 작업 순서를 적는 잡 제어 언어, 실패 시 다시 시도하는 절차를 정의해 오늘날 야간 배치, CI 파이프라인이 따르는 기본 규칙을 만들었습니다.
1959
Fortran Monitor System, 공유 매크로를 제품화하다
SHARE 동료들은 “우리 매크로를 제품으로 만들어줘”라며 요구서를 쌓았고, IBM은 포트란 절차를 하나로 묶은 FMS를 배포했습니다.
여러 연구소는 “카드를 읽는다 → 포트란을 컴파일한다 → 출력한다” 순서를 제각각 매크로로 만들어 쓰고 있었습니다. IBM은 가장 많이 쓰인 절차를 FMS라는 하나의 모니터 프로그램으로 묶었습니다.
사용자는 메뉴에서 작업 종류만 고르면 나머지 장치 설정이 자동으로 맞춰졌습니다. 덕분에 컴파일하는 시간보다 전 준비 시간이 더 길었던 문제가 크게 줄었습니다.
FMS는 특정 장치를 이름이 아닌 추상화된 번호로 다루는 방식을 유행시켰고, “운영체제가 하드웨어의 복잡함을 대신 기억해 줘야 한다”는 기준을 세웠습니다.
1964
System/360, 하나의 OS로 가족 제품을 지원하다
IBM 영업팀은 “기종이 달라도 같은 OS를 쓰게 해드릴게요”라고 약속했고, OS/360이 그 약속을 메인프레임 전 라인업에서 지키려 했습니다.
메인프레임을 업그레이드할 때마다 고객은 애플리케이션을 처음부터 다시 써야 했습니다. OS/360은 커널, 입출력 제어 프로그램, 장치 드라이버를 계층화해 “하드웨어가 달라도 운영체제 인터페이스는 같다”를 보장했습니다.
초기에는 버그와 지연이 많았지만, 한 번 만든 프로그램을 다른 360 기종으로 옮길 수 있다는 약속이 지켜지며 호환성이 운영체제의 핵심 가치라는 사실이 각인되었습니다.
OS/360은 안정적 API와 장기 지원(maintained release)를 약속하는 관행을 남겼고, 오늘날 엔터프라이즈 운영체제가 호환성을 최우선으로 두는 계열 전략의 시작점이 되었습니다.
1969
UNIX, 작은 도구를 조합하는 철학을 심다
벨 연구소 연구자들은 “작은 도구를 파이프로 엮자”는 구호 아래 C 언어로 커널을 다시 써 이식성과 단순함을 잡았습니다.
켄 톰프슨과 데니스 리치는 “파일이라는 공통 언어로 장치·프로그램을 묶자”는 목표로 커널을 다시 썼습니다. 파이프를 통해 한 프로그램의 결과를 다른 프로그램의 입력으로 넘길 수 있게 되면서 작은 도구를 조합하는 문화가 자리 잡았습니다.
소스가 공개돼 대학과 연구소가 직접 포팅을 시도했고, C 언어 덕분에 다른 하드웨어로 옮기는 일도 쉬워졌습니다. 사용자는 필요한 기능만 추가해 자신만의 UNIX를 만들 수 있었습니다.
UNIX의 “모든 것은 파일” 철학은 POSIX 표준, 쉘 파이프라인, 현대 리눅스 커널 구조로 이어져 오늘날 개발 도구와 서버 운영 방식의 뿌리가 되었습니다.
1974
CP/M, 마이크로컴퓨터용 표준 OS
게리 킬달은 “디스크 호출만 맞추면 모두 쓸 수 있다”는 생각으로 마이크로컴퓨터를 위한 공통 운영체제 CP/M을 내놓았습니다.
마이크로컴퓨터 제조사는 저마다 다른 디스크 컨트롤러를 사용했습니다. CP/M은 하드웨어에 밀착된 BIOS와 공통 기능을 제공하는 BDOS를 분리해, 제조사가 바꿔야 할 부분을 최소화했습니다.
덕분에 WordStar, VisiCalc 같은 프로그램이 여러 기기에서 똑같이 동작했고, 기업은 “하드웨어가 달라도 같은 작업을 할 수 있다”는 확신을 갖고 마이크로컴퓨터를 구매했습니다.
BIOS/BDOS로 나눈 구조는 오늘날 운영체제가 커널과 드라이버를 나누어 설계하는 방식, 하드웨어 추상화 계층(HAL)의 전신으로 평가됩니다.
1978
VAX/VMS, 가상 메모리와 클러스터를 대중화
DEC 영업팀은 “중형 컴퓨터만으로도 24시간 돌아갑니다”라며 VMS를 소개했고, 가상 메모리와 클러스터 기술을 함께 묶어냈습니다.
VMS는 메모리를 페이지 단위로 나누고, 디스크를 임시 메모리처럼 사용하는 가상 메모리 기술을 중형 컴퓨터에 도입했습니다. 프로그램은 실제 메모리 크기를 의식하지 않고도 큰 데이터를 다룰 수 있었습니다.
또한 VMScluster는 여러 대 장비를 네트워크로 묶어 하나가 멈춰도 다른 장비가 즉시 일을 이어받게 했습니다. 병원과 연구소는 메인프레임 없이도 24시간 서비스를 유지할 수 있었습니다.
VMS의 보안 링, RMS 파일 서비스, 클러스터 API는 훗날 Windows NT와 오늘날 하이퍼바이저 설계에 직접적인 참고자료가 됐습니다.
1981
MS-DOS, IBM PC 생태계를 단단히 묶다
마이크로소프트는 “PC마다 규칙이 다르면 앱이 못 돌아요”라며 인터페이스를 통일한 MS-DOS를 내놓아 IBM PC 생태계를 묶었습니다.
MS-DOS는 BIOS 인터럽트, 파일 포맷, 장치 이름을 통일된 규칙으로 묶었습니다. 프로그램은 “프린터에게 출력하라”와 같은 추상 명령만 내리면, 어떤 제조사의 프린터인지 상관없이 작동했습니다.
PC 제조사는 저마다 다른 부품을 써도 MS-DOS와 호환된다고 홍보할 수 있었고, 사용자도 안심하고 소프트웨어를 구매했습니다. 이 공통분모가 훗날 윈도우로의 전환을 자연스럽게 만들었습니다.
MS-DOS가 만든 공용 API, CONFIG.SYS 같은 설정 방식은 운영체제가 하드웨어 다양성을 끌어안는 첫 대중적 성공 사례로 기록됩니다.
1984
맥킨토시 System 1, 그래픽 UI 대중화
애플 데모팀은 “아이콘을 쓰레기통에 버리면 됩니다”라고 설명하며 System 1으로 그래픽 데스크톱을 대중에게 보여줬습니다.
System 1은 “버튼을 눌러 텍스트를 삭제한다”가 아니라 “종이 아이콘을 쓰레기통에 버린다”처럼 현실 세계 은유를 OS 전반에 깔았습니다. 마우스를 움직이면 커서가 따라오고, 메뉴는 항상 화면 위에 고정돼 있어 길을 잃을 일이 줄었습니다.
애플은 휴먼 인터페이스 가이드라인을 배포해 외부 개발자도 같은 규칙을 따르도록 했습니다. 결과적으로 처음 컴퓨터를 접한 사용자도 짧은 데모만 보고 기능을 이해할 수 있었습니다.
리소스 매니저, 퀵드로(QuickDraw) 그래픽 API, 메뉴·대화상자 패턴은 이후 데스크톱 UI 프레임워크의 기본 설계서가 되었습니다.
1991
리눅스, 누구나 커널에 기여하는 시대
헬싱키의 학생은 “GNU가 없는 UNIX를 같이 만들자”고 메일을 보냈고, 전 세계 개발자가 리눅스 커널에 줄줄이 합류했습니다.
리누스 토르발스는 “386 PC를 위한 작은 커널을 만들고 싶은데 의견을 달라”는 글을 올렸습니다. 이후 메일링 리스트에는 스케줄러 개선, 파일시스템 추가, 네트워크 스택 제안이 이어졌고, 커뮤니티가 직접 코드를 고쳤습니다.
GNU 프로젝트의 컴파일러, 쉘과 결합하면서 리눅스는 완전한 운영체제가 되었습니다. 누구나 코드를 읽고 수정한 뒤 다시 공유할 수 있다는 구조가 전 세계 개발자를 끌어들였습니다.
GPL 라이선스는 “수정하면 다시 공개한다”는 규칙을 강제했고, 깃·이슈 트래커 같은 분산 협업 방식이 서버, 모바일, 임베디드 소프트웨어 개발의 표준으로 자리 잡았습니다.
1995
Windows 95, 스타트 메뉴로 컴퓨팅을 일상화
마이크로소프트는 “스타트 버튼만 누르면 시작할 수 있어요”라며 Windows 95를 소개했고, 가정과 사무실 모두를 겨냥한 일상형 OS를 완성했습니다.
스타트 버튼은 “어디에서 시작할지”를 명확히 알려줬고, 작업 표시줄은 동시에 열린 프로그램을 한눈에 보여줬습니다. 사용자는 프로그램을 전환하는 법, 멀티태스킹을 직관적으로 익힐 수 있었습니다.
플러그 앤 플레이 덕분에 새 프린터를 연결하면 자동으로 드라이버가 설치됐고, 인터넷 마법사는 복잡한 설정을 숨겨 줬습니다. 집과 사무실 모두 PC를 쉽게 들여놓을 수 있는 환경이 마련됐습니다.
Windows 95의 Win32 API, 설치 마법사, 장치 관리자 구조는 이후 수억 명 사용자를 지원하는 데 필요한 운영체제 운영 매뉴얼로 자리 잡았습니다.
2001
Mac OS X, UNIX와 디자인의 결합
애플은 “커맨드라인은 그대로, 겉모습은 새로”라는 목표로 UNIX 기반 Mac OS X와 Aqua 디자인을 하나로 묶었습니다.
Mac OS X는 UNIX 계열 커널 위에 Aqua 그래픽 인터페이스를 얹었습니다. 사용자는 투명한 창, Dock, 손쉬운 설정 패널을 통해 세련된 경험을 얻었고, 개발자는 Terminal을 열면 POSIX 도구와 동일한 환경을 사용할 수 있었습니다.
Carbon과 Cocoa 프레임워크는 과거 Mac OS용 앱을 천천히 이전할 수 있는 다리를 제공했습니다. 덕분에 디자이너, 개발자, 과학자가 한 기기에서 필요한 도구를 모두 돌릴 수 있는 ‘소비자용 UNIX’가 현실이 되었습니다.
Mac OS X는 패키지 관리자, 스크립트 자동화, 크로스 플랫폼 툴체인 도입을 촉진해 “개발은 맥으로”라는 흐름을 만들어 냈습니다.
2007
iPhone OS 1, 멀티터치 휴대폰의 기준
스티브 잡스는 “손가락이 가장 자연스러운 포인팅 장치”라며 iPhone OS를 선보였고, 멀티터치와 샌드박스를 모바일 OS 기본값으로 만들었습니다.
iPhone OS 1은 손가락으로 집기, 밀기, 확대하는 제스처를 OS 수준에서 지원했습니다. 홈 화면과 설정 앱은 누구나 바로 이해할 수 있는 아이콘·목록 구성을 따랐고, 사파리는 데스크톱급 웹 렌더링을 휴대폰에 그대로 가져왔습니다.
내부적으로는 Mac OS X 커널을 축소하여 배터리를 아끼고, 앱 간 멀티태스킹을 제한해 안정성과 응답성을 확보했습니다. UIKit 프레임워크는 탭 바, 내비게이션 바 같은 UI 규칙을 제공해 차별화되면서도 일관된 앱을 만들 길을 열었습니다.
초기엔 웹 앱을 강조했지만, 곧 SDK와 App Store가 열리면서 UIKit·Core Animation·샌드박스 모델이 모바일 앱 경제의 기본 문법이 되었습니다. 이후 모바일 OS는 모두 멀티터치 제스처, 일관된 디자인 시스템, 권한 기반 보안 모델을 갖추게 됩니다.
2008
Android 1.0, 오픈 모바일 플랫폼
구글은 “모든 제조사가 쓸 수 있는 개방형 스마트폰 OS”를 내세워 Android 1.0과 앱 마켓을 동시에 열었습니다.
구글은 SDK와 에뮬레이터를 먼저 공개해 개발자가 ‘인텐트’라는 메시지로 앱끼리 협력하고, 백그라운드 서비스로 알림을 만들 수 있게 안내했습니다. 휴대폰 제조사와 통신사는 자신들만의 하드웨어를 유지하면서도 공통 플랫폼을 쓸 수 있다는 점에 매력을 느꼈습니다.
안드로이드는 리눅스 커널 위에 자바 가상머신, 권한 시스템을 올려 수많은 기기에 맞게 조정할 수 있었습니다. 앱 마켓이 한 번 열리자 개발자·제조사·사용자가 동시에 늘어났습니다.
앱 샌드박스, 권한 요청, 플레이 스토어 유통 모델은 모바일 운영체제가 보안을 유지하면서도 생태계를 확장하는 기본 방식을 정립했습니다.
2013
Docker, 컨테이너를 일상 도구로
dotCloud는 “이미지 한 통에 앱을 담아 어디서나 실행해 보세요”라고 말하며 Docker로 컨테이너를 일상 도구로 만들었습니다.
Docker는 “컨테이너”를 택배 상자에 비유했습니다. 필요한 앱 파일과 설정을 이미지라는 형태로 묶어 두고 `docker run` 한 줄로 어디서든 같은 환경을 꺼내 쓸 수 있게 만들었습니다.
개발자와 운영팀은 더 이상 “내 컴퓨터에서는 되는데”를 외칠 필요가 없었습니다. 동일한 이미지로 테스트·배포를 반복할 수 있었고, 클라우드 업체는 관리형 컨테이너 서비스를 빠르게 제공할 수 있었습니다.
Docker 이미지 레지스트리, 레이어드 파일시스템, Compose 워크플로는 DevOps와 플랫폼 엔지니어링 문화가 자리 잡는 데 핵심 도구가 되었습니다.
2015
Kubernetes, 클러스터를 하나의 컴퓨터처럼
구글은 “원하는 상태만 적어 두면 나머지는 컨트롤 플레인이 알아서 맞춥니다”라며 Kubernetes를 CNCF에 기증했습니다.
Kubernetes는 “원하는 상태(Desired State)를 적어 두면 제어 루프가 실제 상태를 맞춰준다”는 개념을 운영체제로 끌고 왔습니다. YAML에 서비스 개수와 노출 방식을 적으면, 컨트롤 플레인이 스스로 컨테이너를 배치하고 고장 난 인스턴스를 다시 띄웠습니다.
플랫폼 팀은 서버마다 SSH로 접속해 조작하던 일을 API 호출로 바꿀 수 있었고, 클라우드 사업자는 즉시 관리형 Kubernetes를 출시했습니다. 개발자는 개별 서버가 아닌 “클러스터라는 컴퓨터”를 대상으로 애플리케이션을 설계하게 되었습니다.
Kubernetes는 상태 조정 루프, 서비스 디스커버리, 선언적 구성 관리가 현대 운영체제가 갖춰야 할 기본 능력이라는 인식을 퍼뜨렸습니다.
2020
macOS Big Sur, Apple Silicon 시대의 교두보
애플은 “칩이 바뀌어도 앱은 그대로 쓰세요”라며 M1과 macOS Big Sur, Rosetta 2를 묶어 부드러운 전환을 이뤄냈습니다.
애플은 macOS를 ARM 기반 M1 칩에 맞춰 재컴파일하면서도, 기존 인텔용 앱을 Rosetta 2가 실시간 변환해 실행하도록 만들었습니다. 사용자는 별도 설정 없이 기존 앱을 그대로 열 수 있었습니다.
Xcode는 유니버설 바이너리를 제공해 개발자가 한 번 빌드로 두 아키텍처에 맞는 실행 파일을 만들게 했습니다. 긴 배터리 수명, 즉시 깨우기 경험은 하드웨어와 운영체제가 밀접히 협력할 때 얻는 이점을 보여 줬습니다.
Big Sur의 호환 계층, 시스템 확장 보안 모델은 다른 제조사도 맞춤형 실리콘과 OS를 결합해 사용자 경험을 차별화해야 한다는 신호가 됐습니다.
2021
Windows 11, 로컬과 클라우드를 잇는 데스크톱
마이크로소프트는 “집이든 클라우드든 같은 데스크톱을 쓰세요”라며 Windows 11에 새 셸, 기본 보안, WSLg·Windows 365 연동을 담았습니다.
Windows 11은 작업 표시줄, 설정 앱을 다시 디자인해 PC와 태블릿을 오가도 익숙한 조작감을 유지했습니다. 동시에 TPM, 보안 부팅을 기본값으로 바꿔 하드웨어 단계부터 공격을 막도록 했습니다.
WSLg는 리눅스 GUI 앱을 윈도우 창 옆에 띄워 개발 환경을 통합했고, Windows 365는 회사가 클라우드에서 PC를 임대해 직원에게 스트리밍할 수 있게 했습니다. 운영체제가 로컬 기기와 원격 리소스를 한 화면에서 조율하는 모습이 현실이 됐습니다.
Windows 11의 기본 보안 설정, WSLg·Windows 365 통합은 하이브리드 업무 시대 운영체제가 갖춰야 할 “보안 기본값 + 다중 환경 연결성” 표준을 제시했습니다.